bitzdots
gitlabLean Hyprland dotfiles with automatic matugen theming. Low-end optimized, full-stack auto-coloring, 26 Jinja2 templates. Rofi-powered menus, waybar modules, screenshot/recording, event-driven cache daemon.
clone
https://gitlab.com/bitzzdev/bitzdots.gitarchlinuxdotfileshyprlandhyprland-dotfileslow-endminimalricingwallustwaybarwayland
# Installationbitzdots supports Arch Linux, Fedora, Debian/Ubuntu, and NixOS. Choose your method below.## Automated Install (Recommended)```bashgit clone https://github.com/bitzzdev/bitzdots.git ~/.config/bitzdotscd ~/.config/bitzdotschmod +x install.sh# Install configs only (no system packages):./install.sh# Install configs + system packages:./install.sh --with-deps```The installer auto-detects your distro and installs the appropriate packages.## Manual Install### 1. Install PackagesChoose your distro:<details><summary><b>Arch Linux</b></summary>```bash# Official repossudo pacman -S waybar swaync rofi kitty cava awww hyprpicker wl-clipboard \playerctl pavucontrol polkit-kde-agent grim slurp cliphist hyprlock \ffmpeg impala bluetui btop pulsemixer wf-recorder python breeze \inotify-tools imagemagick fastfetch fish power-profiles-daemon \qt5ct qt6ct# AUR (using paru or yay)sudo pacman -S matugen ttf-jetbrains-mono-nerd```</details><details><summary><b>Fedora</b></summary>```bashsudo dnf install waybar swaync wlogout rofi kitty cava awww hyprpicker \wl-clipboard playerctl pavucontrol polkit-kde-agent grim slurp \cliphist hyprlock ffmpeg inotify-tools ImageMagick fastfetch fish \power-profiles-daemoncargo install matugen```</details><details><summary><b>Debian/Ubuntu</b></summary>```bashsudo apt install waybar swaync wlogout rofi kitty cava awww hyprpicker \wl-clipboard playerctl pavucontrol polkit-kde-agent grim slurp \cliphist hyprlock ffmpeg inotify-tools imagemagick fastfetch fishcargo install matugen```</details><details><summary><b>NixOS</b></summary>```nix{ config, pkgs, ... }:{environment.systemPackages = with pkgs; [waybar swaync wlogout rofi kitty cava hyprpickerwl-clipboard playerctl pavucontrol polkit-kde-agentgrim slurp cliphist hyprlock ffmpeg btopinotify-tools imagemagick fastfetch fishmatugen python3];}```</details>### 2. Link Configuration Files```bashDOTFILES_DIR="$HOME/.config/bitzdots"CONFIG_DIR="$HOME/.config"# Hyprlandfor f in "$DOTFILES_DIR/hypr"/*.lua; doln -sf "$f" "$CONFIG_DIR/hypr/$(basename "$f")"done# Waybarln -sf "$DOTFILES_DIR/waybar/config.jsonc" "$CONFIG_DIR/waybar/config.jsonc"ln -sf "$DOTFILES_DIR/waybar/style.css" "$CONFIG_DIR/waybar/style.css"for s in "$DOTFILES_DIR/waybar/scripts"/*.sh; doln -sf "$s" "$CONFIG_DIR/waybar/scripts/$(basename "$s")"done# Rofiln -sf "$DOTFILES_DIR/rofi/config.rasi" "$CONFIG_DIR/rofi/config.rasi"ln -sf "$DOTFILES_DIR/rofi/theme-generated.rasi" "$CONFIG_DIR/rofi/theme-generated.rasi"for d in themes colors scripts launchers icons; domkdir -p "$CONFIG_DIR/rofi/$d"for f in "$DOTFILES_DIR/rofi/$d"/*; doln -sf "$f" "$CONFIG_DIR/rofi/$d/$(basename "$f")"donedone# SwayNCln -sf "$DOTFILES_DIR/swaync/config.json" "$CONFIG_DIR/swaync/config.json"ln -sf "$DOTFILES_DIR/swaync/style.css" "$CONFIG_DIR/swaync/style.css"# Kittyln -sf "$DOTFILES_DIR/kitty/kitty.conf" "$CONFIG_DIR/kitty/kitty.conf"# Cavaln -sf "$DOTFILES_DIR/cava/config" "$CONFIG_DIR/cava/config"for f in "$DOTFILES_DIR/cava/shaders"/*; doln -sf "$f" "$CONFIG_DIR/cava/shaders/$(basename "$f")"done# Wlogoutln -sf "$DOTFILES_DIR/wlogout/style.css" "$CONFIG_DIR/wlogout/style.css"ln -sf "$DOTFILES_DIR/wlogout/layout" "$CONFIG_DIR/wlogout/layout"for f in "$DOTFILES_DIR/wlogout/assets"/*; doln -sf "$f" "$CONFIG_DIR/wlogout/assets/$(basename "$f")"done# Matugenln -sf "$DOTFILES_DIR/matugen/config.toml" "$CONFIG_DIR/matugen/config.toml"for t in "$DOTFILES_DIR/matugen/templates"/*; doln -sf "$t" "$CONFIG_DIR/matugen/templates/"done# Scriptsfor s in "$DOTFILES_DIR/scripts"/*.sh; doln -sf "$s" "$CONFIG_DIR/matugen/$(basename "$s")"done# GTKln -sf "$DOTFILES_DIR/gtk/gtk-3.0/settings.ini" "$CONFIG_DIR/gtk-3.0/settings.ini"ln -sf "$DOTFILES_DIR/gtk/gtk-4.0/settings.ini" "$CONFIG_DIR/gtk-4.0/settings.ini"# Qt dark thememkdir -p "$CONFIG_DIR/qt5ct"ln -sf "$DOTFILES_DIR/qt5ct/qt5ct.conf" "$CONFIG_DIR/qt5ct/qt5ct.conf"# qt6ct config is auto-generated by matugen from templatemkdir -p "$CONFIG_DIR/environment.d"ln -sf "$DOTFILES_DIR/environment.d/qt.conf" "$CONFIG_DIR/environment.d/qt.conf"# Fishmkdir -p "$CONFIG_DIR/fish"ln -sf "$DOTFILES_DIR/fish/config.fish" "$CONFIG_DIR/fish/config.fish"# Fastfetchmkdir -p "$CONFIG_DIR/fastfetch"ln -sf "$DOTFILES_DIR/fastfetch/config.jsonc" "$CONFIG_DIR/fastfetch/config.jsonc"ln -sf "$DOTFILES_DIR/fastfetch/bitz.txt" "$CONFIG_DIR/fastfetch/bitz.txt"```### 3. Systemd Service```bashmkdir -p "$CONFIG_DIR/systemd/user"cp "$DOTFILES_DIR/systemd/user/matugen-cache-daemon.service" \"$CONFIG_DIR/systemd/user/matugen-cache-daemon.service"systemctl --user daemon-reloadsystemctl --user enable --now matugen-cache-daemon.service```### 4. Install Font```bash# Arch (AUR)paru -S ttf-jetbrains-mono-nerd# Or download manually from https://www.nerdfonts.com/```### 5. Generate Initial Theme```bashmatugen image ~/Pictures/Wallpapers/your-wallpaper.jpg --config ~/.config/matugen/config.toml \--config-dir ~/.config/matugen```### 6. Set Fish as Default Shell (Optional)```bashchsh -s $(which fish)```Log out and back in for the change to take effect.## Post-Installation Checklist- [ ] Waybar is visible at the top of the screen- [ ] Pressing `SUPER + T` opens kitty- [ ] Pressing `SUPER + Space` opens rofi launcher- [ ] Pressing `Print` saves a screenshot- [ ] `SUPER + SHIFT + W` opens the wallpaper picker- [ ] Changing the wallpaper updates all colors- [ ] Notifications appear and the control center opens with `SUPER + N`- [ ] The wallpaper cache daemon is running: `systemctl --user status matugen-cache-daemon.service`- [ ] All apps default to dark theme (GTK, Qt, kitty, etc.)## TroubleshootingSee the [FAQ](faq.md) for common issues.