Lately, I have been kicking the dust off my C++ skills, and decided to start by learning to use a library which I have been eyeing for a while,
ncurses is a C library which lets you create text-based UI programs for the terminal, in the same fashion as the gif above. Basically, you can use the terminal to implement text-based user interfaces. Since I seem to have an obsession with snake games, I figured I’d create a snake game for the terminal.
In this post I’m documenting the current (March 2019) software setup I use in my machines. This has been converging for a long time but It will surely evolve in the future. However, right now, it works well for me.
I use this configuration in the following machines:
ARI desktop - hidalgo, i7-7700, 16 Gb RAM, GTX 1070, Ubuntu 18.04 IWR desktop - herschel, i7-4790K, 16 Gb RAM, GTX 970, Manjaro Linux Home laptop - simian, Dell XPS 13 9370 13”, i7-8550U, 16 Gb RAM, Intel UHD 620, Arch Linux Home desktop - bonobo, i5-4460, 16 Gb RAM, GTX 970, Antergos Linux That is what my work PC looks like.
A couple of days ago I sumbled upon this video by Luke Smith where he presented a couple of scripts to display CPU, memory and temperature information in i3blocks. Since I use polybar due to it working much better in tandem with my dual-monitor setup with different DPIs, I decided I’d adapt and change the scripts to work in polybar. Polybar already comes with memory, CPU and temperature modules by default, but they don’t include a popup showing the top-consuming processes, which is a nice feature to have.
This is just a quick post to share my .dotfiles. It contains the configuration files for most of the essential utils and tools I use in all my machines. These include the tiling window manager i3wm, the info bar polybar, the awesome qutebrowser, the text editor vim or the file manager ranger. Also, in the bin/ folder there are lots of scripts (most of them hacked together quickly) to do various tasks, like converting garimin fit files to the open gpx format or to switch off the monitor in systems without a hardware switch.