This repository delivers a fully automated installer for a modern Arch Linux desktop environment centered around Hyprland – a dynamic tiling Wayland compositor. The setup combines eye‑candy visuals, robust security, and a highly productive workflow. Everything is configured with a consistent dark/light theme and can be deployed with a single command.
The environment is built from carefully selected components:
- Hyprland – smooth animations, transparency, and Vim‑style window controls.
- Kitty – GPU‑accelerated terminal with ligatures and a custom theme.
- Waybar – highly customisable status bar (theme adapted from minimal-waybar-themes).
- Rofi – versatile launcher and window switcher (configuration based on rofi-config).
- Zsh with Zim framework and Powerlevel10k prompt.
- Firejail – sandboxing for all applications.
- Proton – seamless Windows
.exeexecution via binfmt. - LightDM – lightweight display manager with a custom greeter.
All configuration files are stored in this repository and deployed automatically, with backups of your existing settings.
| Component | Description |
|---|---|
| Hyprland | Dynamic tiling with rounded corners, blur, and smooth animations. |
| Hyprpaper | Lightweight wallpaper daemon with dynamic reloading. |
| Hyprlock | Simple and elegant lock screen. |
| Kitty | Terminal with GPU acceleration, ligatures, and a clean theme. |
| Waybar | Fully styled status bar with workspaces, volume, battery, and more. |
| Rofi | Application launcher, window switcher, and custom powermenu. |
| Nemo | Feature‑rich file manager with a modern look. |
| Firejail | Global sandboxing via firecfg – all apps run with reduced privileges. |
| Proton binfmt | Double‑click any .exe – automatically runs with Proton/Wine. |
| Zsh + Zim | Lightning‑fast Zsh with Powerlevel10k prompt, plugins, and completions. |
| LightDM | Customized login screen with a clean theme. |
| Wallpaper Script | Easy script to rotate or set wallpapers from the command line. |
| Security | Firejail, binfmt isolation, and minimal attack surface. |
| Theme Switching | Light/dark mode support via Rofi and GTK themes (automatically detected). |
Replace the placeholder image paths with your own screenshots. All images are stored in the
screenshots/directory of this repository.
Watch a full walkthrough of the system in action, including Hyprland navigation, Rofi usage, and wallpaper switching.
hyprland-setap/
├── cava
│ └── config
├── hypr
│ ├── hyprland.conf
│ ├── hyprlock.conf
│ └── hyprpaper.conf
├── kitty
│ └── kitty.conf
├── lightdm
│ └── lightdm.conf
├── rofi
│ ├── colors
│ │ └── nord.rasi
│ ├── launchers
│ │ ├── launcher.sh
│ │ ├── shared
│ │ │ ├── colors.rasi
│ │ │ └── fonts.rasi
│ │ └── style.rasi
│ └── powermenu
│ ├── powermenu.sh
│ ├── shared
│ │ ├── colors.rasi
│ │ └── fonts.rasi
│ ├── style.rasi
│ └── styles
│ ├── colors.rasi
│ └── nordic.rasi
├── screenshots
│ ├── desktop.png
│ ├── rofi_launcher.png
│ └── workspaces.png
├── wallpapers
│ └── wallpaper.jpg
├── wallpaper_setup.sh
├── waybar
│ ├── clock.sh
│ ├── config.jsonc
│ ├── style.css
│ └── window.sh
├── install.sh
├── LICENSE
└── README.md
All configuration files are designed to be modular – you can tweak any part to match your personal style.
- A working Arch Linux system with a network connection.
sudoprivileges.- Basic familiarity with the terminal.
-
Clone the repository
git clone https://github.com/one-of-all/hyprland-setap.git; cd hyprland-setap
-
Make the installer executable
chmod +x install.sh
-
Run the installer with sudo
sudo ./install.sh
The script will:
- Ask for the wallpaper directory (default:
~/wallpapers/). - Update your system.
- Install all required packages (official + AUR).
- Backup existing configs (
~/.config/hypr,kitty,waybar,rofi) with a timestamp. - Deploy the new configuration files.
- Set up Firejail, Proton binfmt, Zsh, and LightDM.
- Enable the LightDM service.
- Set the default wallpaper (
wallpaper.jpg).
- Ask for the wallpaper directory (default:
-
Reboot to start your new environment
reboot
After restart, LightDM will greet you. Log in and enjoy your fresh Hyprland session.
- Wallpaper – Run
wallpaper_rofi.shto select a new wallpaper from your directory. The script updates Hyprpaper and creates a blurred version for the lock screen. - Hyprland keybindings – Modify
~/.config/hypr/hyprland.confto add or change shortcuts. - Waybar modules – Edit
~/.config/waybar/configto adjust the status bar layout. The theme is adapted from minimal-waybar-themes. - Rofi themes – Replace files in
~/.config/rofi/with your own. The current setup is based on anhsirk0/rofi-config. - Zsh plugins – Add more modules in
~/.zshrcvia Zim. - LightDM – Adjust
/etc/lightdm/lightdm.confto change the greeter or autologin settings. - Theme switching – The Rofi theme automatically adapts to your GTK theme (light/dark). You can force a theme using
change-theme.plor therofi-theme-selector.shscript.
All deployed configs are fully commented – feel free to explore and tailor them to your workflow.
This setup emphasises security without sacrificing usability:
- Firejail – Every application is sandboxed by default (via
firecfg). This restricts access to your system and personal files. - Proton binfmt – Windows executables run inside a Proton sandbox, minimising exposure to malicious code.
- Minimal attack surface – The system runs only essential services. LightDM is lightweight and does not expose unnecessary network ports.
- Zsh hardening – The shell is configured with safe defaults and no insecure plugins.
- User separation – The installer runs as root but uses
sudo -ufor user‑specific tasks, avoiding privilege escalation issues.



