- CSS 61.4%
- Shell 38.6%
|
|
||
|---|---|---|
| assets | ||
| home | ||
| root/etc | ||
| .gitignore | ||
| .stow-local-ignore | ||
| apply | ||
| LICENSE | ||
| README.md | ||
| set_up_git | ||
dotfiles
My dotfiles and other stuff about my systems' configurations.
Systems I use these setups on
Desktop:
- AMD Ryzen 7 9800x3D
- 64GB DDR5-6000 (2x32GB)
- NVIDIA GeForce RTX 4080 SUPER
- 4TB SAMSUNG 990 PRO
Laptop: Lenovo ThinkPad X1 Yoga Gen 8 with Intel Core i5-1345U, 32GB RAM, 512GB NVMe and a 1920x1200 screen
Monitors:
- Samsung G5 Ultrawide (3440x1440, 165hz, 34")
- Samsung G51 (2560x1440, 165hz, 27")
Notes
⚠️ IMPORTANT
The Waybar theme relies on the Catppuccin GTK theme mentioned below to be installed. If you don't want to do so, you must change the padding of the workspace buttons from2pxto2px 8px.
I use Arch Linux with a unified kernel image signed with a custom Secure Boot key created by and managed with sbctl.
Due to some weirdness with symlinks, the GTK themes need to be installed manually. Download the "Borderless + macOS buttons" Frappé pack from here: https://www.opendesktop.org/p/1715554 and follow the instructions.
Requirements
- GNU Stow
Usage
Run ./apply.
Manual install
Installing dotfiles to $HOME: stow --adopt --no-folding -t "${HOME}" home
Installing dotfiles to root (for example libvirt configuration files): sudo stow --adopt --no-folding -t / root
Applying Themes and Wallpapers
For GTK themes use GNOME Tweaks to set the theme. For Qt use qt6ct-kde (Qt6 Settings). For wallpapers use awww -o <output name> <path to file>. My own wallpapers can be found in home/Pictures/Wallpapers.
Installed Packages
This is a list of all packages I have installed, which systems I have installed them on and why I have them installed. Drivers, firmware and the likes aren't included unless deviating from a standard Arch installation.
Links are to the source repository or other applicable first-party website. The package names are the names used in the Arch Linux package list or the Arch User Repository.
System Tools
These are system tools I don't often directly invoke but use for other tasks like system tweaks, filesystem compatibility and the likes.
| Package | Description | Link | Systems |
|---|---|---|---|
sbctl |
Secure Boot key manager | https://github.com/foxboron/sbctl | Desktop, Laptop |
cpupower |
Userspace utilities for managing CPU frequency scaling | Part of Kernel | Desktop |
dosfstools |
Suite of tools to work with DOS filesystems such as the FAT family | https://github.com/dosfstools/dosfstools | Desktop |
dnsmasq |
Suite of network services, needed for libvirt to work properly with NetworkManager | https://dnsmasq.org/doc.html | Desktop |
exfat-utils |
Utilities for working with exFAT filesystems | https://github.com/relan/exfat | Desktop |
gamemode |
Command prefix to ensure games run better | https://github.com/feralinteractive/gamemode | Desktop |
lact |
GPU configuration and monitoring tool | https://github.com/ilya-zlobintsev/LACT | Desktop |
libinput-tools |
Helper tool to work with libinput |
https://wayland.freedesktop.org/libinput/doc/latest/tools.html | Desktop |
proton-ge-custom-bin |
Tweaked version of Proton, a compatibility tool for games | https://github.com/gloriouseggroll/proton-ge-custom | Desktop |
btop |
A better alternative to the top command |
https://github.com/aristocratos/btop | Desktop, Laptop |
bind |
DNS implementation, provides the dig command |
https://www.isc.org/software/bind/ | Desktop |
paru |
AUR helper | https://github.com/morganamilo/paru | Desktop, Laptop |
rsync |
Fast, incremental file transfer | https://rsync.samba.org/ | Desktop |
traceroute |
Tool for tracing route to target host | https://traceroute.sourceforge.net/ | Desktop |
ventoy-bin |
CLI tool to manage Ventoy | https://www.ventoy.net/en/index.html | Desktop |
wget |
Tool to retrieve remote files | https://www.gnu.org/software/wget/wget.html | Desktop, Laptop |
unzip |
CLI tool to extract ZIP archives | http://www.info-zip.org/Zip.html | Desktop, Laptop |
android-udev |
Allows user to connect Android devices | https://github.com/M0Rf30/android-udev-rules | Desktop |
gnupg |
Free implementation of PGP | https://www.gnupg.org/ | Desktop |
pacman-contrib |
Scripts and tools for pacman | https://gitlab.archlinux.org/pacman/pacman-contrib | Desktop |
less |
It's less, not much to say | https://www.greenwoodsoftware.com/less/ | Desktop, Laptop |
wl-clipboard |
Tool to copy text from a terminal into the clipboard on Wayland | https://github.com/bugaevc/wl-clipboard | Desktop |
man-db |
Manual pages | https://gitlab.com/man-db/man-db | Desktop, Laptop |
brightnessctl |
Allows controlling monitor brightness | https://github.com/Hummer12007/brightnessctl | Laptop |
tlp |
Tool/service to optimise battery life on laptops | https://linrunner.de/tlp/index.html | Laptop |
modemmanager |
Manages cellular modems | https://www.freedesktop.org/wiki/Software/ModemManager | Laptop |
Environment
These are the packages that make my environment. This includes my editor, tools for theming, my actual compositor, lockscreen and greeter as well as applets I use in my Waybar setup.
| Package | Description | Link | Systems |
|---|---|---|---|
swaybg |
Simply wallpaper tool for wayland | https://github.com/swaywm/swaybg | Desktop, Laptop |
catppuccin-cursors-frappe |
Custom theme cursors | http://github.com/catppuccin/cursors | Desktop, Laptop |
fuzzel |
App launcher and fuzzy finder for Wayland | https://codeberg.org/dnkl/fuzzel | Desktop, Laptop |
nwg-look |
Software I primarily use to manage GTK theming | https://github.com/nwg-piotr/nwg-look | Desktop, Laptop |
nautilus |
File explorer | https://gitlab.gnome.org/GNOME/nautilus | Desktop, Laptop |
niri |
Niri, a Wayland window compositor | https://github.com/niri-wm/niri | Desktop, Laptop |
noto-fonts |
Basic Noto fonts for unicode characters | https://fonts.google.com/noto | Desktop, Laptop |
noto-fonts-cjk |
Chinese, Japanese and Korean fonts | https://github.com/notofonts/noto-cjk | Desktop, Laptop |
noto-fonts-emoji |
Emoji support | http://fonts.google.com/noto/specimen/Noto+Emoji | Desktop, Laptop |
gnome-keyring |
Secret portal | https://gitlab.gnome.org/GNOME/gnome-keyring | Desktop, Laptop |
polkit-kde-agent |
Policykit agent for applications to graphically ask for root permissions | https://github.com/KDE/polkit-kde-agent-1 | Desktop, Laptop |
qt6ct-kde |
Graphical tool to change Qt theme | https://www.opencode.net/trialuser/qt6ct | Desktop, Laptop |
swaylock-effects |
Lockscreen for Wayland (with extra features not present in normal swaylock) | https://github.com/jirutka/swaylock-effects | Desktop, Laptop |
ttf-firacode-nerd |
My preferred monospace font | https://www.nerdfonts.com/font-downloads | Desktop, Laptop |
waybar |
Wayland bar | https://github.com/Alexays/Waybar | Desktop, Laptop |
network-manager-applet |
Provides a tray applet for NetworkManager and the GUI connection editor used in my waybar config | https://gitlab.gnome.org/GNOME/network-manager-applet | Desktop, Laptop |
ly |
TTY-based greeter | https://codeberg.org/fairyglade/ly | Desktop, Laptop |
dunst |
Notification daemon | https://github.com/dunst-project/dunst | Desktop, Laptop |
xdg-desktop-portal-gnome |
Required portal for screencasting | https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome | Desktop, Laptop |
xdg-desktop-portal-gtk |
Required portal for most basic functionality | https://github.com/flatpak/xdg-desktop-portal-gtk | Desktop, Laptop |
xwayland-satellite |
Rootless Xwayland integration for Wayland compositors | https://github.com/Supreeeme/xwayland-satellite | Desktop, Laptop |
iio-niri |
Automatically rotates the screen with Niri | https://github.com/Zhaith-Izaliel/iio-niri | Laptop |
Development
This includes tools I use for development.
| Package | Description | Link | Systems |
|---|---|---|---|
kitty |
Terminal emulator | https://github.com/kovidgoyal/kitty | Desktop, Laptop |
neovim |
Modern Vim-based text editor | https://neovim.io/ | Desktop, Laptop |
git |
Repository management tool | https://git-scm.com/ | Desktop, Laptop |
base-devel |
Basic development tools, meta-package | https://archlinux.org/packages/core/any/base-devel/ | Desktop, Laptop |
rustup |
Rust toolchain installer | https://rustup.rs/ | Desktop, Laptop |
shellcheck |
Shell script linter | https://www.shellcheck.net/ | Desktop |
docker |
Containerisation system | https://www.docker.com/ | Desktop |
jetbrains-toolbox |
Launcher to install and manage JetBrains IDEs | https://www.jetbrains.com/toolbox-app/ | Desktop |
virt-manager |
GUI for libvirt | https://github.com/virt-manager/virt-manager | Desktop |
qemu-full |
Backend for creating virtual machines | https://www.qemu.org/ | Desktop |
opentofu |
FOSS Terraform alternative | https://opentofu.org/ | Desktop |
Messaging
This includes software I use for messaging.
| Package | Description | Link | Systems |
|---|---|---|---|
vesktop |
Customisable and privacy friendly Discord client | https://vesktop.dev/ | Desktop |
element-desktop |
Desktop Matrix client | https://element.io/en | Desktop |
Media
This includes tools I use to consume media.
| Package | Description | Link | Systems |
|---|---|---|---|
vlc |
Multimedia player | https://www.videolan.org/ | Desktop, Laptop |
vlc-plugin-ffmpeg |
FFMPEG plugins for VLC | https://archlinux.org/packages/extra/x86_64/vlc-plugin-ffmpeg/ | Desktop, Laptop |
coreimage |
Small and lightweight image viewer | https://cubocore.gitlab.io/ | Desktop, Laptop |
Creativity
This includes tools for creative work as well as note-taking.
| Package | Description | Link | Systems |
|---|---|---|---|
xournalapp |
Notetaking app with support for pages and handwriting/drawing | https://xournalpp.github.io | Desktop |
obs-studio |
Screen recording suite | https://github.com/obsproject/obs-studio | Desktop |
Other
This includes the odd ones out which didn't have a better place elsewhere.
| Package | Description | Link | Systems |
|---|---|---|---|
ausweisapp |
German ID verification app | https://www.ausweisapp.bund.de/en/open-source-software | Desktop |
azahar |
Nintendo 3DS emulator | https://azahar-emu.org/ | Desktop |
chromium |
Browser; Will be switched for something better in due time | https://www.chromium.org/chromium-projects/ | Desktop, Laptop |
filezille |
File explorer and remote filesystem client | https://filezilla-project.org/ | Desktop |
hyfetch |
Fetch with pride flags | https://github.com/hykilpikonna/hyfetch | Desktop, Laptop |
prismlauncher |
Minecraft Java Edition version manager and launcher | https://prismlauncher.org/ | Desktop |
steam |
Game launcher | https://store.steampowered.com/ | Desktop |
stow |
Symlink manager | https://www.gnu.org/software/stow/ | Desktop |
thunderbird |
E-Mail client | https://www.thunderbird.net/ | Desktop |
ente-auth-bin |
TOTP Generator | https://ente.com/auth/ | Desktop |
qalculate-qt |
Calculator | https://qalculate.github.io | Desktop |
wvkbd-git |
On-screen keyboard | https://github.com/jjsullivan5196/wvkbd | Desktop, Laptop |
Package notes
| Package | Note |
|---|---|
rustup |
Run rustup toolchain install stable for initial stable install; rustup update to update |
Further Reading
This is a collection of links I found helpful while setting up my systems.
| Description | Link |
|---|---|
| Description of CPU frequency scaling and tools to make use of it | https://wiki.archlinux.org/title/CPU_frequency_scaling |
| General information about the ThinkPad X1 Yoga Gen 8 on Arch Linux | https://wiki.archlinux.org/title/Lenovo_ThinkPad_X1_Yoga_(Gen_8) |
| Power management for laptops on Arch Linux | https://wiki.archlinux.org/title/TLP |
| General documentation for niri | https://github.com/niri-wm/niri/wiki |
| Setting up secure boot | https://github.com/foxboron/sbctl |
Attributions
Catppuccin is licensed under the MIT license. It doesn't require me to reship their license or mention it but I do want you to be aware of this awesome theme.
