From 14cec81b47355893fa67ec6a0ffbbdd1de55cdae Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Tue, 23 Nov 2021 01:28:19 -0700 Subject: Added more to the README. More on the way!! --- README.md | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) diff --git a/README.md b/README.md index 24bd08d..a3783d6 100644 --- a/README.md +++ b/README.md @@ -7,16 +7,120 @@ to be pretty good. [![Screenshot](screenshot.jpg)](https://git.josher.dev/cgit/rde.git/) +(BTW, I'm not actually in Dallas, I'm in the same place as Mr. Money Moustache, +and yes, I use Arch btw) + +# Requirements + +* Definitely need GHC. If you use Hugs, you deserve the pain. +* X11, duh! +* Xinerama is helpful +* Monofur NERD Font. Should be included with the NERD fonts package. +* GCC, because when I take off my Functional Programmer hat, I put on my + systems-dev glasses. +* Perl, because when I take off my systems-dev glasses, I put on my UNIX beard. +* Not Python, because when I take off the UNIX beard I skip the Soy latte and go + back to the FP hat. +* Knowledge of Linux/Unix or an intense desire for masochism (which, as + long as it's consensual, I'm totally fine with.) +* Linux. BSD support is coming, be patient!! + * Not Winblows -- Get out of here + * Not MacOS -- I don't have a clever pejorative. + + # Configuration ## Window Manager The window manager is XMonad, obviously, but _heavily_ configured. +The way I configured XMonad is to be similar to Vim in that some keys are +actually modal. I.e. require another key-press to effectuate the system + +Probably the biggest difference between this configuration and standard +configurations is that there are _many_ workspaces. Actually, there are 36 +workspaces, one for each letter and digit (in the English alphabet). + +Navigating between all these workspaces is easy, though, just type Mod+g +followed by the workspace you're trying to go to! (G stands for 'go' btw). + +### Some things to note + +I type in Programmer Dvorak (because of course I do) so many of the key bindings +make little to no sense on QWERTY layout and should probably be changed by the +user. It's in my TODO list to make a QWERTY variant, but I haven't gotten to it. + +_Also_ my ModKey is the Hyper key (because of course it is!), which the astute +among you might notice does not actually exist on the keyboard. Aha! [Rahm's XKb +Layout](https://git.josher.dev/cgit/rkb.git) strikes again! I have remapped +pretty much all my modifier keys and reanimated the long-dead Hyper key! "But, +Rahm, you handsome, yet dark and mysterious \*nix landchad, why would you use +such a key no one uses?", I hear you ask. Well, my delightful, yet young +compatriot, it is precisely because no one uses it that I use it. See, it is a +decent way of preventing conflicting bindings in other applications! Plus it +opens the door for using the Super key is [Rahm's patched +Alacritty](https://git.josher.dev/cgit/r-alacritty.git) and thus use it in +[Rahm's patched Neovim](https://git.josher.dev/cgit/rneovim.git) to potentially +program some of [Rahm's STM32 Christmas +Lights](https://git.josher.dev/cgit/stm34l4.git). **Anyway**, the salient point +is that I recommend you learn Programmer Dvorak and switch your keyboard layout +to [Rahm's XKb Layout](https://git.josher.dev/cgit/rkb.git), but in the off +chance you decide against that, you can change the mod key to Super in +`Main.hs`. + ## Bar The Bar Is XMobar, of course, but again, heavily modified. +### Features + + * OS Logo + * For Debian, Arch, Ubuntu and BSD + * Kernel version + * Date + * Shows workspace layout as icon (I'm quite proud of this! It took forever to + get working!) + * Workspaces + * Red is current + * Blue is not current, but visible + * Gray is not visible + * Window Name + * Time + * CPU and Mem Usage displayed as dashes. + * Weather Info + * Spotify Info + * Bluetooth Info + * Battery Info + +## Battery + +XMobar's battery plugin is not quite good enough. I want to be able to display +an icon as I'm charging, etc. So, I included a battery monitor C program +designed to interface with XMobar. Namely the program is in +`xmobar/extras/battery/battery.c`. + +## Weather + +The Weather is controlled by a barely functional Perl script which Hard Codes +the weather station to KLMO (Longmont, CO). Maybe you should change that? The +TODO here is to use wttr.in, but I'm too lazy to fix it. + +## Spotify + +If you don't use Spotify, then I'm sorry. It's one of the pieces of proprietary +garbage (PG, for short) I allow on my system (along with the Nvidia Drivers and +Intel Management Sytem, ick). + +Rde is admittedly coupled with Spotify, and contains a spotify-control +script to work with it. Maybe you should make that script work with your media +player? + +## Bluetooth + +The `bluetooth-select` script allows the user to connect to bluetooth devices. +If you haven't paired your bluetooth device yet, maybe you should use +`bluetoothctl`? + ## Compositor Picom/Compton is my compositor, and it mostly works, but sometimes doesn't. -- cgit