# NixOS + Hyprland - Themed Configuration A beautiful, minimal NixOS configuration with Hyprland, inspired by vyrx-dev's dotfiles with Nord color scheme. ## ✨ Features ### 🎨 Theming - **Nord color scheme** throughout (blues, grays, pastels) - **Rofi** launcher with Nord theme - **Waybar** with custom Nord styling - **Kitty** terminal with Nord colors - **Auto-login** directly to Hyprland (no TTY login screen) ### 🖥️ Desktop Environment - **Hyprland** - Dynamic tiling Wayland compositor - **Waybar** - Minimalist status bar - **Rofi** - Application launcher - **Swaync** - Notification center - **SWWW** - Wallpaper daemon ### 🛠️ Tools - **Kitty** - GPU-accelerated terminal - **Starship** - Minimal shell prompt - **ZSH** with Oh-My-Zsh - **Neovim, VSCode** - Text editors - **Modern CLI tools** - eza, bat, ripgrep, fzf ## 🚀 Installation ### Fresh NixOS Install: ```bash # 1. Boot NixOS ISO and partition wipefs -a /dev/sda parted /dev/sda -- mklabel gpt parted /dev/sda -- mkpart primary 1MiB 2MiB parted /dev/sda -- set 1 bios_grub on parted /dev/sda -- mkpart primary 2MiB 512MiB parted /dev/sda -- mkpart primary 512MiB 100% mkfs.fat -F 32 -n boot /dev/sda2 mkfs.ext4 -L nixos /dev/sda3 mount /dev/disk/by-label/nixos /mnt mkdir -p /mnt/boot mount /dev/disk/by-label/boot /mnt/boot # 2. Clone this config nix-shell -p git --run "git clone https://git.cribdev.com/crib/nixos-config.git /mnt/etc/nixos" # 3. Generate hardware config nixos-generate-config --root /mnt --show-hardware-config > /mnt/etc/nixos/hardware-configuration.nix # 4. Install nixos-install --flake /mnt/etc/nixos#cribnix # 5. Reboot reboot ``` You'll boot directly into Hyprland! No login screen needed. ## ⌨️ Keybindings **Modifier Key:** `SUPER` (Windows key) ### Applications - `SUPER + Return` - Terminal (Kitty) - `SUPER + D` - App Launcher (Rofi) - `SUPER + E` - File Manager (Thunar) ### Window Management - `SUPER + Q` - Close window - `SUPER + V` - Toggle floating - `SUPER + F` - Fullscreen - `SUPER + J` - Toggle split - `SUPER + M` - Exit Hyprland ### Navigation - `SUPER + Arrow Keys` - Move focus - `SUPER + 1-9` - Switch workspace - `SUPER + SHIFT + 1-9` - Move window to workspace ### Screenshots - `SUPER + SHIFT + S` - Screenshot to clipboard - `Print` - Screenshot to ~/Pictures ## 🎨 Customization ### Colors The Nord theme uses these colors: - **Background:** `#2e3440` (dark gray-blue) - **Foreground:** `#eceff4` (light gray) - **Accent:** `#88c0d0` (frost blue) - **Red:** `#bf616a` - **Green:** `#a3be8c` - **Yellow:** `#ebcb8b` - **Blue:** `#81a1c1` To change colors, edit: - `home/waybar.nix` - Status bar colors - `home/rofi.nix` - Launcher colors - `home/kitty.nix` - Terminal colors ### Wallpapers Place your wallpapers in `~/Pictures/wallpapers/`: ```bash mkdir -p ~/Pictures/wallpapers # Add your wallpapers here # Set wallpaper with swww swww img ~/Pictures/wallpapers/yourwallpaper.jpg ``` ### Waybar Customize the bar in `home/waybar.nix`: - Change modules order - Add/remove widgets - Adjust colors and styling ### Rofi The launcher config is in `home/rofi.nix`: - Change window size - Adjust colors - Modify behavior ## 🔄 Updating ```bash # Update your config cd ~/.config/nixos git pull # Rebuild system sudo nixos-rebuild switch --flake .#cribnix # Or use the alias rebuild ``` ## 📁 File Structure ``` nixos-config/ ├── flake.nix # Main flake ├── configuration.nix # System config with auto-login ├── hardware-configuration.nix ├── modules/ │ ├── system.nix # System packages │ └── hyprland.nix # Hyprland + Rofi setup └── home/ ├── home.nix # User config ├── hyprland.nix # Hyprland settings & keybinds ├── waybar.nix # Status bar (Nord themed) ├── rofi.nix # Launcher (Nord themed) └── kitty.nix # Terminal (Nord themed) ``` ## 🎯 Key Features ### Auto-login - No login screen or greeter - Boots directly to Hyprland - Configured in `configuration.nix` with greetd ### Minimal & Fast - Clean aesthetic inspired by vyrx-dev - Smooth animations - Low resource usage ### Nord Theme - Cohesive color scheme across all apps - Easy to customize - Professional appearance ## 🐛 Troubleshooting ### Hyprland won't start ```bash # Check logs journalctl -xe | grep -i hypr cat /tmp/hypr/*/hyprland.log ``` ### Want to disable auto-login? Edit `configuration.nix` and remove the `services.greetd` section, then rebuild. ### Colors not applying? Make sure you've rebooted after the initial install. Some theme settings require a fresh session. ## 📚 Resources - [Hyprland Wiki](https://wiki.hyprland.org/) - [Nord Theme](https://www.nordtheme.com/) - [vyrx-dev dotfiles](https://github.com/vyrx-dev/dotfiles) (inspiration) - [NixOS Manual](https://nixos.org/manual/nixos/stable/) ## 🎉 Enjoy! You now have a beautiful, themed Hyprland setup that auto-logs in and looks great out of the box. Customize it to make it your own!