Skip to content

A lean Arch Linux base with Hyprland, delivering a fast, tiling Wayland experience

Notifications You must be signed in to change notification settings

Hasib-4174/hyprinit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ HyprInit

A minimal, automated Hyprland setup for fresh Arch Linux installations.

Arch Linux Hyprland License: MIT

HyprInit provides a complete, ready-to-use configuration for a minimal and functional Arch Linux desktop using the Hyprland compositor. It automates the entire setup processβ€”from installing packages to symlinking configurations with GNU Stowβ€”allowing you to get up and running with a beautiful Hyprland workflow in minutes.


✨ Features

  • Compositor: Hyprland - Dynamic tiling Wayland compositor with smooth animations
  • Display Manager: SDDM - Modern Qt-based display manager
  • Status Bar: Waybar - Highly customizable Wayland status bar
  • Application Launcher: Rofi - Versatile application launcher with emoji support
  • Terminal: Alacritty - Fast, GPU-accelerated terminal emulator
  • File Manager: Dolphin - Powerful KDE file manager
  • Browser: Brave - Privacy-focused Chromium-based browser
  • Editors: Neovim + VS Code - Modern text editing
  • Shell: Zsh with Zinit + Powerlevel10k
  • Notifications: Mako - Lightweight Wayland notification daemon
  • Screenshots: Grim + Slurp + Swappy
  • Wallpapers: SWWW - Efficient animated wallpaper daemon
  • Lock Screen: Hyprlock - Secure screen locker for Hyprland
  • Audio: PipeWire - Modern multimedia framework
  • Fonts: JetBrains Mono Nerd Font, Noto Fonts, Font Awesome
  • Media: VLC for video playback
  • Config Management: GNU Stow - Symlink farm manager for dotfiles

πŸ“Έ Screenshots

Coming soon...


πŸš€ Installation

Setting up your Hyprland environment is simple. The install.sh script handles everything automatically.

Prerequisites

  • A fresh Arch Linux installation (minimal profile recommended)
  • git installed
  • Active internet connection
  • AMD GPU (script includes AMD-specific drivers)

Warning

This setup is designed for a clean Arch Linux installation. For best results, use a minimal installation without a desktop environment. If using archinstall, select the 'minimal' profile.

Quick Start

# Install git if not present
sudo pacman -S git

# Clone the repository
git clone https://github.com/Hasib-4174/hyprinit.git
cd hyprinit

# Make scripts executable
chmod +x install.sh

# Run the installer
./install.sh

# Reboot when complete
sudo reboot

What the Script Does

  1. βœ… Installs AUR helper (yay) if not present
  2. βœ… Installs all packages via pacman and AUR
  3. βœ… Copies configs to ~/configfiles/
  4. βœ… Symlinks configs using GNU Stow to ~/.config/
  5. βœ… Enables services (NetworkManager, Bluetooth, SDDM, PipeWire)
  6. βœ… Runs verification to confirm everything is set up

After reboot, SDDM will greet you. Select Hyprland from the session dropdown.


πŸ“¦ Packages Included

Core System
  • base, base-devel, linux, linux-firmware
  • amd-ucode, sof-firmware
  • networkmanager, bluez, bluez-utils
  • git, wget, unzip, 7zip, jq
  • Fonts: noto-fonts, noto-fonts-emoji, ttf-jetbrains-mono-nerd, otf-font-awesome
Hyprland Stack
  • hyprland, hyprpaper, hyprlock, hypridle
  • sddm, qt5-wayland, qt6-wayland
  • waybar, mako, wlogout
  • rofi, rofi-emoji
  • swww, grim, slurp, swappy
  • wl-clipboard, wev
  • xdg-desktop-portal-hyprland
Audio (PipeWire)
  • pipewire, pipewire-alsa, pipewire-jack, pipewire-pulse
  • wireplumber, gst-plugin-pipewire, libpulse
Applications
  • alacritty - Terminal
  • dolphin - File manager
  • brave-bin - Browser
  • vlc - Media player
  • imv - Image viewer
  • blueman, pavucontrol, brightnessctl - System utilities
  • btop, htop, fastfetch - Monitoring
Development
  • neovim, vim, nano, visual-studio-code-bin
  • tmux, stow, zsh
  • nodejs, npm, python-pip, ipython
  • vulkan-radeon, xf86-video-amdgpu, radeontop - AMD GPU

⌨️ Keybindings

Keybindings are configured in ~/.config/hypr/keybinds.conf. The main modifier is ALT.

Essential Bindings

Keybinding Action
Alt + Return Open Alacritty (Terminal)
Alt + E Open Dolphin (File Manager)
Alt + D Open Rofi (App Launcher)
Alt + Q Close active window
Alt + M Exit Hyprland
Alt + V Toggle floating window
Alt + L Lock screen (Hyprlock)
Alt + W Random wallpaper
Alt + S Screenshot

Window Navigation (Vim-style)

Keybinding Action
Alt + H Focus left
Alt + J Focus down
Alt + K Focus up
Alt + L Focus right

Workspaces

Keybinding Action
Alt + [1-9, 0] Switch to workspace 1-10
Alt + Shift + [1-9, 0] Move window to workspace 1-10
Alt + S Toggle scratchpad
Alt + Shift + S Move to scratchpad
Alt + Mouse Wheel Scroll through workspaces

Media Keys

Key Action
Volume Up/Down Adjust volume
Mute Toggle mute
Brightness Up/Down Adjust screen brightness
Play/Pause/Next/Prev Media controls

πŸ“‚ Configuration Structure

All configurations use GNU Stow for symlink management:

hyprinit/
β”œβ”€β”€ install.sh              # Main installer
β”œβ”€β”€ vars.conf               # User settings (edit before install)
β”œβ”€β”€ README.md               # This file
β”‚
β”œβ”€β”€ packages/               # Package lists
β”‚   β”œβ”€β”€ base.txt            # System essentials
β”‚   β”œβ”€β”€ hypr.txt            # Hyprland stack
β”‚   β”œβ”€β”€ apps.txt            # Desktop applications
β”‚   └── dev.txt             # Development tools
β”‚
β”œβ”€β”€ config/                 # Stow-compatible configs
β”‚   β”œβ”€β”€ hypr/               # β†’ ~/.config/hypr/
β”‚   β”‚   └── .config/hypr/
β”‚   β”‚       β”œβ”€β”€ hyprland.conf
β”‚   β”‚       β”œβ”€β”€ keybinds.conf
β”‚   β”‚       β”œβ”€β”€ appearance.conf
β”‚   β”‚       └── ...
β”‚   β”œβ”€β”€ waybar/             # β†’ ~/.config/waybar/
β”‚   β”œβ”€β”€ rofi/               # β†’ ~/.config/rofi/
β”‚   β”œβ”€β”€ alacritty/          # β†’ ~/.config/alacritty/
β”‚   β”œβ”€β”€ mako/               # β†’ ~/.config/mako/
β”‚   β”œβ”€β”€ swww/               # β†’ ~/.config/swww/
β”‚   β”œβ”€β”€ zsh/                # β†’ ~/.zshrc
β”‚   β”œβ”€β”€ sddm/               # β†’ /etc/sddm.conf.d/
β”‚   └── scripts/            # β†’ ~/.local/bin/
β”‚
└── scripts/                # Installation scripts
    β”œβ”€β”€ install_packages.sh
    β”œβ”€β”€ setup_configs.sh
    β”œβ”€β”€ enable_services.sh
    └── sanity_check.sh

After Installation

Configs are stored in ~/configfiles/ and symlinked to their destinations.

# Your configs live here:
~/configfiles/
β”œβ”€β”€ hypr/
β”œβ”€β”€ waybar/
β”œβ”€β”€ rofi/
└── ...

# Symlinked to:
~/.config/hypr β†’ ~/configfiles/hypr/.config/hypr
~/.config/waybar β†’ ~/configfiles/waybar/.config/waybar
# etc.

To edit configs: Modify files in ~/configfiles/ β€” changes apply immediately!


βš™οΈ Configuration

Edit vars.conf before running the installer:

# AUR helper (yay or paru)
AUR_HELPER=yay

# Default shell
DEFAULT_SHELL=zsh

# Service toggles
ENABLE_NETWORKMANAGER=true
ENABLE_BLUETOOTH=true
ENABLE_SDDM=true

# Requires post-install setup (browser auth)
ENABLE_TAILSCALE=false

πŸ”§ Troubleshooting

SDDM Not Starting
sudo systemctl enable sddm.service
sudo systemctl start sddm.service
No Audio

PipeWire uses user services. They start automatically on login. To manually start:

systemctl --user enable --now pipewire pipewire-pulse wireplumber
Waybar Not Appearing
killall waybar
waybar &

Or check Hyprland autostart: ~/.config/hypr/autostart.conf

Configs Not Symlinked

Re-run the stow setup:

cd ~/configfiles
stow --restow --target=$HOME hypr waybar rofi alacritty
AUR Package Fails

Try installing manually:

yay -S package-name

πŸ› οΈ Customization Tips

Component File to Edit
Keybindings ~/.config/hypr/keybinds.conf
Appearance ~/.config/hypr/appearance.conf
Waybar modules ~/.config/waybar/config.jsonc
Waybar style ~/.config/waybar/style.css
Rofi theme ~/.config/rofi/config.rasi
Terminal ~/.config/alacritty/alacritty.toml
Shell ~/.zshrc

🀝 Contributing

Contributions are welcome! Feel free to:

  • πŸ› Report bugs
  • πŸ’‘ Suggest features
  • πŸ”§ Submit pull requests

πŸ“„ License

This project is open-source and available under the MIT License.


Made with ❀️ for the Hyprland community

About

A lean Arch Linux base with Hyprland, delivering a fast, tiling Wayland experience

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published