Modular, clean, and customizable Linux configuration files and scripts. Designed for tiling window managers (Qtile), Kitty terminal, Rofi, Dunst, and Zsh/Fish shell workflows.
Set up the entire dotfiles repository and configure all your account logins with zero manual editing:
git clone https://github.com/gaminization/dotfiles.git ~/dotfiles
cd ~/dotfiles
./install.sh- Creates Target Directories: Ensures
~/.config,~/.local/bin, and~/Pictures/screenshotsexist. - Backs Up Existing Configs: Automatically creates a timestamped backup of existing settings in
~/.dotfiles_backup_<timestamp>/. - Deploys App Configurations: Instantly deploys
qtile,kitty,dunst,starship.toml,fish,neofetch,cava,peaclock,spotifyd,spotify-tui,lxsession-default-apps,nitrogen,pavucontrol.ini,sddm.conf,rtorrent.rc. - Interactive Account Logins & Secrets: Prompts interactively for your Spotify account details, Spotify API keys, and weather location, automatically logging into
spotifydandspotify-tuion your local machine while caching credentials in~/.config/dotfiles_secrets.env(mode 600). - Deploys Executable Scripts: Copies all custom scripts (
rofi-wifi-menu.sh,changevolume,changebrightness,screenshot, etc.) into~/.local/bin/withchmod +xexecutable rights. - Configures Shell & X11 Profiles: Deploys
.bashrc,.zshrc,.xinitrc,.xprofile, and.Xresources. - Copies Status Icons: Deploys Qtile bar status icons (
~/.config/qtile/icons).
.
├── install.sh # ⚡ 1-Shot Automated Installer & Login Setup Script
├── .config/ # Application configuration files (redacted templates)
│ ├── cava/ # Audio visualizer config
│ ├── dunst/ # Notification daemon configuration
│ ├── fish/ # Fish shell config
│ ├── kitty/ # Kitty terminal emulator configuration
│ ├── lxsession-default-apps/ # Default desktop application settings
│ ├── neofetch/ # System fetch configuration
│ ├── nitrogen/ # Wallpaper manager configuration
│ ├── peaclock/ # Terminal clock configuration
│ ├── qBittorrent/ # BitTorrent client configuration
│ ├── qtile/ # Qtile window manager configuration
│ ├── rofi/ # Rofi application launcher configurations
│ ├── sddm/ # Display manager configuration and themes
│ ├── spotifyd/ # Spotify daemon configuration (template)
│ ├── spotify-tui/ # Spotify TUI client configuration (template)
│ └── starship.toml # Cross-shell prompt configuration
├── bin/ # Executable shell utilities & custom scripts
│ ├── changebrightness # Backlight control script
│ ├── changevolume # PulseAudio/PipeWire volume control
│ ├── extensions_installer.sh # GNOME extensions auto-installer
│ ├── launchspt.sh # Spotify daemon launcher
│ ├── rofi-wifi-menu.sh # Rofi interactive Wi-Fi manager
│ ├── screenshot # Screen capture script
│ └── songnotification # Now-playing desktop notification script
├── assets/ # Visual Assets & Icons
│ └── icons/ # Status bar icons (battery, speaker, calendar)
└── shell/ # Shell & X11 environment startup files
├── .bashrc # Cleaned Bash configuration
├── .zshrc # ArcoLinux feature-packed Zsh configuration
├── .xinitrc # X11 init configuration
├── .xprofile # X11 session environment setup
└── .Xresources # X11 resource defaults
- All credentials entered during
./install.share saved ONLY on your local filesystem in~/.config/. - The Git repository files in
~/dotfiles/.config/remain 100% redacted with placeholders (YOUR_SPOTIFY_USERNAME,YOUR_SPOTIFY_CLIENT_ID), ensuring no secrets are ever committed to Git. - Geolocation strings in Qtile weather widgets are configurable via the
WEATHER_LOCATIONenvironment variable:export WEATHER_LOCATION="YourCity"