Ricing is making improvements to a system that don’t actually do anyone any good, and can sometimes have negative ramifications1. For me, it’s configuring my computer workflow, both in software and physical worlds. Sometimes it gets worse to eventually get better.
Physical setup
I prioritize my physical well-being while using a computer by taking breaks, exercising, staying hydrated and not exactly sitting. There are customization to the computer to make it more comfortable. First things we interact with are interfaces:
- Keyboard: Kinesis Advantage2
- Trackball: Kensington SlimBlade with a little notebook as a pad
The trackball is awesome for my day-to-day use but I’m not shy of switching to a DualShock 4 or a graphical tablet.
By now we have the input part almost covered but there are other things to improve.
Monitor position can be a crucial part of one’s posture. At first, I had a VESA compatible arm for one of monitor and a DIY stand for another one to get them into a comfortable position. Then I got a nice pair of hands with a single mounting point. My setup looks much nicer & cleaner this way, but it has the same level of comfort. So I encourage you to figure out how to take care of your healt first. Looks can wait.
Adjustable table is another factor in getting one’s posture right. I went with motorized table legs for IKEA Bekant & a custom tabletop. It allows me to easily switch between sited, standing & balance-board-riding positions. As a quality of live improvement it’s modified with an open-source megadesk controller which can save positions.
Mobile setup
I used to rock my old and trusty Lenovo x220. There are two noticeable modifications.
Japanese keyboard. It has smaller space bar and extra buttons around it. It allows squeezing more use of my thumbs, just like with Advantage2.
I’m remapping buttons using udev hwdb. This way mapping works in console, X11 and any Wayland environment.
Second important bit is a Type-C to a Lenovo barrel plug adapter. I got it of AliExpess and never looked back. This thing supports PowerDelivery standard, so I’m able to use my power banks and chargers.
Software setup
The most crucial part of the customization happens here! I try to stick to vim-based navigation and avoid mouse where I can. Sometimes it means configuration, but sometimes it’s plain switching a piece of software.
I’m using NixOS. All the configuration is done through a flake. Outdated version is available in slashNix repository on GitHub. Current one is coming much later.
Substantial amount of inspiration comes from awesome r/unixporn.
Display manager
It’s a crucial part of starting your Desktop Environment (DE). You can choose your DE, user and enter your password.
To address its importance I use none and no DE either.
Little part of my ZSH profile (~/zprofile
) checks if I’m using tty1 and if so starts a Window manager.
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
Hyprland is a Wayland window manager with pleasant animations and rounded corners.
No bar. No distractions. This is the way.
SwayNotificationCenter is an overlay with notifications and some controls like media player and brightness. I keep it almost exclusively in DoNotDisturb mode. There is a key binding to show/hide it, but I rarely use it. All the apps that might send me a notification are usually closed. I open them in time slots dedicated for communication.
hyprlock with just a tiny bit of customization. I had to enable pam integration though, otherwise it was not accepting any password, even correct one.
Terminal emulator
Alacritty coz rendering terminal with GPU is fun! And it’s written in Rust.
Nu shell is used as a default shell. Starship theme helps it look nice and somewhat helpful.
Browser
Qutebrowser for being vim-like to its bones.
In a quest of not using mouse as much as possible it makes my web browsing pleasant.
Probably the most frequent reason for me to open a browser is searching for something. This is the area where qute shines. It’s incredibly easy to add a ‘search engine’ and access them. I have more than 50.