The intention is for all of this to be symlinked. There are some interesting attempts by people in the community to actually have the Git repo set up so that it can be cloned in the home directory directly, without any additional needs to set up anything except for the actual cloning itself. I personally am not convinced, and see not that much added value, especially not in relation to the slight complexity and potential confusion.
What I am thinking of doing however is to add a shell script that sets up all the sym links automatically.
This is especially useful given that not everything in this setup is contained in the repository itself, and at the moment that is mainly the fonts. They are simply to big for my taste to have included in the repo. The same might go for any wallpapers in the future in case I end up including that type of configuration as well.
Anyway, the shell script can then download/wget/curl any additional content from the web and put the content in the correct location, without having to have that content inside the repo itself.
My setup is dependent on a font used by the terminal, namely SourceCodePro (or Sauce Code Pro) from the Nerd Fonts collection. The latest version is always available at the following link:
https://github.com/ryanoasis/nerd-fonts/releases/latest/download/SourceCodePro.tar.xz
, and should be unpacked into a fonts directory of your choice. Since
I plan to include this in an upcoming script, the preferred location,
which is one of the default ones the system will look for, is the
.fonts/
directory in your home, as then the script won’t require
root privileges.
This is subject to change, as I am leaning towards the Nord theme. The Dracula theme is good to start out with though as they have a really good site that collects styles and themes for a lot of tools along with instructions how to enable them.
In many cases, the themeing is done by bundling the theme inside the
individual program configs themselves. But for Midnight Commander, for
example, that tool looks for skins stored in the
.local/share/mc/skins
, and one needs to wget and put the Dracula
theme into that folder:
https://raw.githubusercontent.com/dracula/midnight-commander/master/skins/dracula256.ini
Currently my terminal of choice. Actually I am one of those who have nothing against the standard Gnome terminal; main reason for switching is to easier get rid of the window title bar, which is surprisingly difficult to do. Plus these hipster terminals such as Kitty and Alacritty seems to just play along more nicely with tiling window managers in general and highly customizable while still keeping the config file rather small.
Which this one currently is. As of today it only contains the Dracula theme, font selection, and some slight window transparency.
I mainly use Midnight Commander (MC) for actual file management, but Ranger is nice for simple browsing, and its image and PDF previews that work inside the tool is very convenient, something MC doesn’t support. The multiple panes showing the tree structure is very nice also.
This is a basic configuration; the only thing added is the Dracula theme as well as the oneliner:
default_linemode_devicons
, to enable the icons for the directory and file types which makes it look a bit nicer.
The file manager of choice, as for actual management of files I simply like the two panes, and the Emacs keybindings suits me well also. Ranger’s vim bindings are actually very convenient also for one-hand browsing, but agan, for actual management of files I simply like Midnight Commander more. Nothing stops me from using both depending on the situation.
The main configuration here is again the themeing, which ended up just being removing all colors, which made it inherit some terminal properties very nicely including the terminal transparency; and then the skin downloaded in an earlier section in this document.
On top of this, there is also some just simple configuration which are not particularly magical and hardly worth mentioning as those configs were not done by editing the config files, and instead relying of simple settings done inside the tool itself and got saved in the config file automatically.
Emacs will be a chapter of its own, as that will, and already is, at the very heart of my workflow. I am currently working on my Emacs configuration from scratch and is in a traditional .emacs file. I do intend to move the Emacs configuration into an orgmode file, which is a more modern way of having a self-documenting Emacs configuration, as those tends to become very lengthy, nerdy, and personal.