An automated Hyprland dotfiles setup for Arch Linux–based distributions,
focused on modular configuration, hardware-aware installation, and a
flexible theming system for daily use.

- 🚀 Auto Installer - One-command setup with interactive menu
- 🖥️ GPU Auto-detect - NVIDIA, AMD, Intel driver installation
- 🎮 QEMU/KVM Ready - Virtualization pre-configured
- 🐚 Zsh + Oh My Zsh - Modern shell with plugins
git clone https://github.com/ayu-dash/hyprland-dotfiles.git ~/hyprland-dotfiles
cd ~/hyprland-dotfiles
./install.sh
| Option |
Description |
| 1) Full Installation |
Complete setup (GPU, Packages, Configs, Themes, Shell) |
| 2) Install GPU Drivers |
AMD, NVIDIA, Intel auto-detect |
| 3) Install Packages Only |
Pacman, AUR, VSCode extensions |
| 4) Install Dotfiles Only |
~/.config, ~/.local/bin |
| 5) Install Themes Only |
Icons, GTK Themes, Kvantum |
| 6) Configure Shell Only |
Zsh, Oh My Zsh, plugins |
- OS: Arch Linux (or Arch-based distros)
- Display Server: Wayland
- AUR Helper: yay (auto-installed)
Dependencies are listed in separate files:
pacman-packages.txt - Official Arch packages
yay-packages.txt - AUR packages
SUPER = Windows/Meta key
| Keys |
Action |
SUPER + Enter |
Terminal (Kitty) |
SUPER + F |
Browser (Firefox) |
SUPER + E |
File Manager (PCManFM) |
SUPER + V |
Code Editor (VS Code) |
SUPER + Space |
Application Launcher |
SUPER + C |
Calculator |
SUPER + T |
Theme Selector |
SUPER + W |
Wallpaper Selector |
SUPER + S |
Config Editor |
SUPER + Shift + C |
Clipboard History |
SUPER + Shift + Ctrl + Alt + Space |
Emoji Picker |
| Keys |
Action |
SUPER + Q |
Close Window |
SUPER + Ctrl + F |
Fullscreen |
SUPER + Ctrl + M |
Maximize |
SUPER + Ctrl + V |
Toggle Floating |
ALT + Tab |
Cycle Windows |
| Keys |
Action |
SUPER + ←/→/↑/↓ |
Move Focus |
SUPER + H/J/K/L |
Move Focus (VIM) |
| Keys |
Action |
SUPER + Shift + ←/→/↑/↓ |
Resize |
SUPER + Shift + H/J/K/L |
Resize (VIM) |
| Keys |
Action |
SUPER + Ctrl + ←/→/↑/↓ |
Move Window |
SUPER + Ctrl + H/J/K/L |
Move Window (VIM) |
SUPER + LMB Drag |
Move Window (Mouse) |
SUPER + RMB Drag |
Resize Window (Mouse) |
| Keys |
Action |
SUPER + 1-0 |
Switch to Workspace 1-10 |
SUPER + Ctrl + 1-0 |
Move Window to Workspace (Follow) |
SUPER + Shift + 1-0 |
Move Window to Workspace (Silent) |
SUPER + Scroll |
Switch Workspace |
SUPER + U |
Toggle Scratchpad |
SUPER + Shift + U |
Move to Scratchpad |
| Keys |
Action |
Ctrl + Alt + G |
Toggle Group |
Ctrl + Alt + Tab |
Switch Group Window |
Ctrl + Alt + ←/→ |
Cycle Group Windows |
| Keys |
Action |
Print |
Screenshot Menu |
SUPER + Print |
Capture Window |
SUPER + Shift + Print |
Capture Region |
| Keys |
Action |
SUPER + Alt + L |
Lock Screen |
SUPER + Alt + M |
Exit Hyprland |
Power Button |
Session Menu |
SUPER + G |
Toggle Game Mode |
SUPER + Alt + B |
Reload Waybar |
| Keys |
Action |
Vol Up/Down |
Adjust Volume |
Mute |
Toggle Mute |
Mic Mute |
Toggle Microphone |
Brightness Up/Down |
Adjust Brightness |
Play/Pause |
Media Play/Pause |
Next/Prev |
Media Next/Previous |
Themes are located in ~/.config/hypr/Themes/. Each theme is a self-contained directory:
Themes/
├── ThemeLoader.conf # Auto-loaded by Hyprland (exec-once)
├── ThemeVariables.conf # $theme_dir variable for sourcing
│
└── <ThemeName>/ # Theme directory (e.g. NierAutomata)
├── Activate.sh # Theme activation script
├── Decoration.conf # Hyprland decorations (borders, shadows, blur)
├── Name.txt # Theme display name
│
├── Colors/ # Color definitions
│ ├── Gtk.css # GTK color variables
│ ├── Hypr.conf # Hyprland color variables
│ └── Rofi.css # Rofi color variables
│
├── Bar/ # Waybar configuration
│ ├── Config.jsonc # Modules configuration
│ ├── Config.css # Styling
│ └── Scripts/ # Custom scripts (optional)
│
├── Rofi/ # Rofi launcher themes
│ ├── Base.rasi # Shared styles
│ ├── MenuLauncher.rasi
│ ├── Calculator.rasi
│ ├── Clipboard.rasi
│ ├── Session.rasi
│ └── ...
│
├── Swaync/ # Notification center
│ ├── Config.json # SwayNC configuration
│ ├── Style.css # Styling
│ ├── Icons/ # Notification icons (optional)
│ └── Scripts/ # Widget scripts (optional)
│
├── Kitty/ # Terminal configuration
│ └── kitty.conf
│
└── Wallpapers/ # Theme wallpapers
- Copy an existing theme:
cp -r Themes/NierAutomata Themes/MyTheme
- Edit
Name.txt with your theme name
- Modify colors in
Colors/
- Update
THEME_NAME in Activate.sh
- Select theme with
SUPER + T
The installer automatically configures:
| Component |
Configuration |
| GPU Drivers |
NVIDIA (dkms/open), AMD, Intel auto-detect |
| Display Manager |
greetd + tuigreet |
| Virtualization |
QEMU/KVM + libvirt + virt-manager |
| Shell |
Zsh + Oh My Zsh + plugins |
Python scripts located in ~/.config/hypr/Scripts/:
| Script |
Description |
Audio.py |
Volume control with notifications |
Brightness.py |
Screen brightness control |
Battery.py |
Low battery notifications |
Wallpaper.py |
Wallpaper management |
GameMode.py |
Toggle performance mode |
RofiLauncher.py |
Rofi menu dispatcher |