Files
nixos-config/modules/hyprland.nix

76 lines
1.7 KiB
Nix

{ config, pkgs, inputs, ... }:
{
# Import Hyprland module
imports = [ inputs.hyprland.nixosModules.default ];
# Enable Hyprland
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
# Hyprland-related packages
environment.systemPackages = with pkgs; [
# Core Hyprland tools
hyprpaper # Wallpaper utility
hyprpicker # Color picker
hypridle # Idle daemon
hyprlock # Screen locker
# Wayland essentials
waybar # Status bar
wofi # Application launcher
dunst # Notification daemon
swww # Wallpaper daemon (alternative to hyprpaper)
# Screenshot and recording
grim # Screenshot tool
slurp # Region selector
wl-clipboard # Clipboard utilities
# File manager
xfce.thunar
# Image viewer
imv
# PDF viewer
zathura
# Audio control
pavucontrol
# Network management
networkmanagerapplet
# Brightness control
brightnessctl
# Additional tools for ricing
jq # JSON processor (for scripts)
socat # Socket tools
wlogout # Logout menu
nwg-look # GTK theme config
libsForQt5.qt5ct # Qt5 config
kdePackages.qt6ct # Qt6 config
];
# XDG Desktop Portal is configured by Hyprland module
# No need to configure it again here
# Security - for screen locking
security.pam.services.hyprlock = {};
# Fonts for better UI
fonts.packages = with pkgs; [
noto-fonts
noto-fonts-cjk-sans
noto-fonts-emoji
font-awesome
nerd-fonts.jetbrains-mono
nerd-fonts.fira-code
nerd-fonts.droid-sans-mono
];
}