{ pkgs, pkgs-unstable, ... }: { nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ # hyprland-preview-share-picker.packages.${system}.default # Hyprland share picker TODO: Figure out and configure bat # Better cat brightnessctl # Backlight control btop # Resource monitor cargo # Rust build tool clippy # Rust linter eza # Better ls fcitx5 # Input method framework TODO: Figure out and configure fzf # Fuzzy file finder gcc # C compiler git # Git gnome-calculator # Calculator TODO: Find a better TUI calculator grim # Screenshot tool TODO: Figure out and configure gum # Terminal UI tool highlight # Syntax highlighting tool TODO: Hook up to ZSH hyprcursor # Hyprland cursor theme support hypridle # Idle daemon for Hyprland hyprlock # Screen locker for Hyprland hyprpaper # Wallpaper utility for Hyprland TODO: Check if necessary with swaybg hyprpicker # Hyprland colour picker imagemagick # Image manipulation tool impala # Wifi TUI jq # CLI JSON processor lazygit # Git TUI less # Pager libnotify # Notification daemon makima # Key remapper for Linux TODO: Figure out and configure mako # Notification daemon neovim # Editor nodePackages.pnpm # JavaScript package manager (used by Neovim plugins) nodejs_24 # JavaScript runtime openssl # SSL/TLS toolkit p7zip # 7-Zip archiver pkgs-unstable.yazi # Terminal file manager pywal16 # Image colorscheme generator qt6.qtwayland # qtwayland support ripgrep # Better grep rsync # Remote file sync rustc # Rust compiler rustfmt # Rust formatter satty # Screenshot editor TODO: Figure out and configure sshpass # SSH with password in CLI, used by install scripts swaybg # Wayland wallpaper utility tldr # Simplified man pages tmux # Terminal multiplexer tmuxinator # Tmux configurator tree # Tree structure viewing Tool unzip # Compressing tool uwsm # Universal Wayland Session Manager v4l-utils # Video4Linux utilities TODO: Figure out why I need this waybar # Status bar for Hyprland wget # Download tool wineWow64Packages.stable # Wine packages for 64-bit and 32-bit support winetricks # Windows compatibility tool wl-clipboard # Wayland clipboard manager wlogout # Wayland logout menu xdg-terminal-exec # XDG terminal execution utility yarn # JavaScript package manager zip # Archiver tool zoxide # Better cd ]; systemd = { packages = with pkgs; [ uwsm ]; }; system = { autoUpgrade = { enable = true; allowReboot = false; runGarbageCollection = true; }; }; }