The configuration files for my Linux desktop. Supports Arch based distros using Gnome and/or i3. Also, currently it assumes you have an Nvidia GPU and Intel CPU. I mainly use i3, but I also install Gnome for when people do not want to mess around with a tiling WM. All of the screenshots are for i3 and the gnome configs are very basic.
To install everything, simply copy and paste this into the terminal.
ℹ️ This script assumes that you have a working Arch installation. Remember to choose i3 at the login screen.
⚠️ I still need to properly test this.
curl -s https://raw.githubusercontent.com/AlexvZyl/.dotfiles/main/.scripts/install/bootstrap.sh > ~/bootstrap.sh
chmod +x ~/bootstrap.sh && ~/bootstrap.sh && rm ~/bootstrap.sh
reboot
Sometimes I just want to get work done on a Linux machine. A minimal installation can be done with:
curl -s https://raw.githubusercontent.com/AlexvZyl/.dotfiles/main/.scripts/install/minimal_workspace.sh > ~/bootstrap.sh
chmod +x ~/bootstrap.sh && ~/bootstrap.sh && rm ~/bootstrap.sh
And to update:
alias min-git="git --work-tree=\"$HOME/\" --git-dir=\"$HOME/.workspace/\""
min-git fetch
min-git pull
⚙️ Components
- Neovim
- Kitty
- Tmux
- Fonts
- Fish
- Scripts
- exa
- bat
Although I like making it look as nice as possible, these dotfiles also try to be private and secure. This is a journey, not a destination, and I am open to any input.
🛡️ Measures
- Scripts I sometimes use.
- Manually keeping system up to date (
yay -Syyu
) - Malware scanning and database updating (clamav)
- Firewall (ufw)
- Ban IPs (fail2ban)
- Using Signal (when possible)
- Hosting API keys in a private repo
- Hardened firefox (user.js)
- I could install the hardened Linux kernel, but that might be slightly pedantic...
- Port scanning (nmap, rustscan)
Personally, I want a balance between good looking colors that stand out, and soft colors that will not destroy my eyes.
The theme is based on my Neovim plugin, nordic.nvim. It is a warmer and darker version of the Nord color palette. Wallpapers can be found at this ImageGoNord repo (they "norded" some nice wallpapers) and locally.
Some screenshots showing off the desktop and rice, as well as some custom features I wrote. Everything has to be just right. I am spending 8+ hours a day on this working, so it might as well be a nice experience.
A few notes on the bindings:
- Keys combined with the
Super
key are reserved for OS and WM related actions. - Arrows and
hjkl
keys are interchangeable.
⌨️ Bindings table
Binding | Action |
---|---|
Super + d | App launcher |
Super + s | Tmux sessions |
Super + p | Powermenu |
Super + t | Terminal |
Super + T | Tor terminal session |
Super + n | Neovim |
Super + m | Resource monitor (BTop++) |
Super + g | GPU monitor (NVtop) |
Super + R | Toggle read mode |
Super + tab | Windows |
Super + Arrow | Cycle windows |
Super + Shift + Arrow | Move window |
Super + Number | Go to workspace |
Super + r | Newsboat |
Super + w | iwctl |
This config has a decent amount of work and is basically a fully fledged IDE. Why didn't I use LunarVim, NvChad or SpaceVim? I like doing things myself.
ℹ️ I try to keep all of the key bindings in one file. So if you want to use the configs, this is the only file you have to familiarise yourself with. You can add more LSPs to the end of this file.
These dotfiles were briefly featured in a TechHut Video.