Ricing

According to the urban dictionary it is Making improvements to a system that don't actually do anyone any good, and can sometimes have negative ramifications. For me it's configuring my linux workflow. If you are interested in it visit unixporn for sure.

GNU Stow

Piece of software helping me to store all my configs in one directory under Git control by symlinking content to locations appropriate for a given software. Thanks some eternal being that's not mandatory to use my dot files. You can find them at gitlab and github.

Display manager

It's a crucial part of starting your Desktop Environment. You can choose your DE, user and enter your password.

To address it's importance I use none and no DE either. Little part of my ZSH profile (~/zprofile) checks if I'm using tty1 and if so calls startx which executes follows ~/.xinitrc agenda.

Current config is stored in xmonad directory.

Cool kid tip: You can put some ASCII art in your /etc/issue. Don't forget about /etc/motd if you access your machine by ssh.

Window manager

Xmonad is an awesome piece of software written in Haskell. Uses X11 tho. To modify this WM you have to change the code. But it's done it such a way that main code is more like a library to you so it's maintainable by your distro (hello dwm). All you have to do is write an entry point (main) where you can (re)define some stuff and build your flavour like Lego. It's not prohibited to write your own behaviors and features but usually xmonad-contrib gets you covered.

To make Xmonad more pleasant to an eye I use picom compositor to add shadows and transition animation.

Screen Lock

i3lock is a part of i3wm which can be used used separately as an universal X11 lockscreen. Mind though that X11 has no notion of screen lock so it's all black magic fuckery.

i3lock handles window managers of different sorts pretty well but compositor can break stuff by redrawing windows over i3lock.

To avoid this little helper script shuts compositor before locking computer and brings it back up right after unlocking (DIY or look for it in dotfiles).

Terminal emulator

Alacritty coz rendering terminal with GPU is fun! And it's written in Rust.

ZSH is used as a default shell. Starship theme helps it look nice and somewhat helpful.

Browser

Qutebrowser for being vim-like to it's bones.

It's super easy to add new search engines and commands!

Weechat

It is an awesome chat client for your terminal (click).

Matrix

Is an awesome network for communication (cllick). To use it with weechat you can install this script.

Desktop notifications

weechat-notify-send sends notifications to dunst.

Spell check

aspell support is integrated into weechat. To use it you have to have aspell installed in your system in couple with some language, aspell-en for example.

Enable aspell in weechat

/aspell enable

Set language

Here we set English and Russian:

/set aspell.check.default_dict en,ru

Enable suggestions

You have to type this part without hitting enter but tab-complete instead:

/set weechat.bar.status.items

A ton of stuff will appear, this is current value for weechat.bar.status.items.

Now add [aspell_suggest] to the end:

/set weechat.bar.status.items "<current value>,[aspell_suggest]".

Mail

I tent to use terminal to check mail but carefree access to Exchange server Evolution is nice.

Neomutt

CLI mail client. For initial configuration it's more than convenient to use mutt-wizard by Luke Smith

Only things different from wizard's defaults is systemd timer instead of cron job.

aerc

This baby doesn't need a separate wizard to start using and tabs feature is so cool!