This repository contains dotfiles and configuration settings for:
- i3: A popular tiling window manager for Linux.
- Kitty: My terminal emulator of choice for Linux.
- Oh-my-zsh: Framework for managing Zsh configuration.
- Tmux: Terminal multiplexer to manage multiple sessions.
- Git: My version control of choice.
- Neovim: My text editor of choice for terminal.
- Dunst: My notification manager of choice for Linux.
- ... and various other tools that boost my productivity!
There is a .compose directory where I store all the Docker Compose files that I need locally, like creating a small database for testing etc.
There is also an .playbooks directory where I store all the Ansible Playbooks that I need locally, like update my pi-hole etc.
I currently use Debian for my work, but I might want to switch back to a MacBook or similar due to the new M chips from Apple, so I'm currently testing some functions, here you can find some of my dotfiles, some of which I use for both macOS and Linux.
On macOS I use Homebrew as my package manager, so I have to install some packages and services directly. Here you can find some information about my installations and configurations.
tmux, neovim, [email protected], node@20, lua, redis, terraform, kubernetes-cli, pipx, 1password-cli, monitorcontrol, gh, bat, tree, jq, thefuck, neofetch
In the directory .scripts/install you will find some scripts for the installation of, for me, important applications. There are also a few other services that I need, you can find a few short installation instructions here. Most of it is specific to arch linux.
Here you can find the themes that I use, I have also linked the installation instructions here.
Here you can find the Fluent Dark theme, which I use for GTK. You can install it with the following commands:
git clone https://github.com/vinceliuice/Fluent-gtk-theme.git
cd Fluent-gtk-theme
./install.sh
Here you can find the icon themes that I use, I have also linked the installation instructions here.
The Papirus Dark icon theme is a free and open source SVG icon theme for Linux. You can istall it in the root directory with the following command:
wget -qO- https://git.io/papirus-icon-theme-install | sh
I use Arch Linux as my main operating system, so I have to install some packages and services directly. Here you can find some information about my installations and configurations.
You can find the most important packages here, I need these for the installation and in the operating name of my system, plus other packages that are mapped directly via installation scripts.
xorg, xorg-xinit, i3, dex, kwallet5, pulseaudio, pulseaudio-bluetooth, pulseaudio-equalizer, pasystray, nfs-utils, feh, kitty, zsh, git, make, tmux, zoxide, fzf, neovim, chromium, firefox, go, python, npm, terraform, ansible, jq, neofetch, thunar, obsidian, gimp, gnome-screenshot, vlc, noto-fonts-emoji
These packages should be installed directly during the installation process, with some more specific applications or services being added later.
In order to install AUR packages under Arch Linux, you have to proceed as follows. First install the following package:
pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si
Here is a list of the AUR packages that I use:
1password
clipster
ulauncher
If you want to install notifications under Arch, you have to proceed as follows. First install the following packages:
sudo pacman -S libnotify dunst
You can now create the folder in ~/.config/dunst
and create the file dunstrc in it so that you can customize the notifications. The start of dunstrc
must also be stored in the i3 configuration.
In order to have a network manager under Arch Linux, you must install the following package:
sudo pacman -S networkmanager network-manager-applet
Now you should activate and start the service once, you can do this with these two commands:
sudo systemctl enable NetworkManager.service
sudo systemctl start NetworkManager.service
I have now stored the nm-applet
in my i3 configuration so that it is automatically started in the window manager.
If you want to install Bluetooth under Arch Linux, you can do this as follows. First install the following packages:
sudo pacman -S bluez blueberry
Once this has been installed, all that remains is to create and start the service, which works as follows:
sudo systemctl enable bluetooth.service
sudo systemctl start bluetooth.service
The blueberry-tray
can now be stored directly in the i3 configuration so that the GUI starts immediately when the system is started.
Install Ulauncher directly via the AUR, simply execute the following command:
yay -S ulauncher
After that you can install my Ulancher theme with the following commands, so the theme is installed in the right directory:
git clone https://github.com/gowizzard/dark-trooper
cd dark-trooper
make install
You can download Docker directly via the official Arch Packages, simply execute the following command (possibly install updates first):
sudo pacman -S docker docker-compose
The service then only needs to be stored and started. This can be done with the following commands:
sudo systemctl enable docker.service
sudo systemctl start docker.service
Now your user should be added to the group, simply execute the following command:
sudo usermod -aG docker $USER
It is then recommended to restart the system immediately, now you should be able to execute the Docker commands with your user without sudo
.
In order to use rust correctly, you should install the following package. This is the official rustup package, which is used to install rust.
sudo pacman -S rustup
Now you can install the Rust toolchain with the following command. This will install the stable version of rust.
rustup default stable
Partly the installations are similar between Arch Linux and Debian, but since I mainly develop on Debian in the office, you can find some additional information for Debian here.
P.S.: I decided to use Debian because I need a permanently available system, but of course I have to make concessions with Debian, especially when it comes to updating the packages.
You can find the most important packages here, I need these for the installation and in the operating name of my system, plus other packages that are mapped directly via installation scripts.
xorg, xinit, i3, dex, kwalletmanager, pulseaudio, pulseaudio-equalizer, pulseaudio-module-bluetooth, pasystray, playerctl, feh, kitty, zsh, git, make, tmux, neovim, chromium, jq, neofetch, thunar, gimp, gnome-screenshot, vlc, fonts-noto-color-emoji
In order to have a network manager under Debian, you must install the following package:
sudo apt install network-manager network-manager-gnome
Now you should activate and start the service once, you can do this with these two commands:
sudo systemctl enable NetworkManager.service
sudo systemctl start NetworkManager.service
I have now stored the nm-applet
in my i3 configuration so that it is automatically started in the window manager.
If you want to install Bluetooth under Debian, you can do this as follows. First install the following packages:
sudo apt install bluez blueman
Once this has been installed, all that remains is to create and start the service, which works as follows:
sudo systemctl enable bluetooth.service
sudo systemctl start bluetooth.service
The blueman-applet
can now be stored directly in the i3 configuration so that the GUI starts immediately when the system is started.
In order to install Wireguard under Debian, you have to proceed as follows. First install the following packages:
sudo apt install wireguard resolfconf
Now you can create the configuration file for Wireguard, this is located in /etc/wireguard/wg0.conf
. After that you can start the service with the following command:
sudo systemctl enable [email protected]
sudo systemctl start [email protected]