88 lines
3.2 KiB
Nix
88 lines
3.2 KiB
Nix
{ pkgs, pkgs-unstable, nix-gaming, ... }:
|
|
|
|
{
|
|
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
|
|
gnome-keyring
|
|
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
|
|
localsend # Local file sharing tool
|
|
makima # Key remapper for Linux TODO: Figure out and configure
|
|
mako # Notification daemon
|
|
pkgs-unstable.neovim # Editor
|
|
nix-gaming.mo2installer
|
|
nodePackages.pnpm # JavaScript package manager (used by Neovim plugins)
|
|
tree-sitter # Incremental parsing tool for editors
|
|
nodejs_24 # JavaScript runtime
|
|
openssl # SSL/TLS toolkit
|
|
p7zip # 7-Zip archiver
|
|
pipewire
|
|
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
|
|
seahorse # GNOME Keyring manager
|
|
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
|
|
pkgs-unstable.wineWow64Packages.stable # Wine packages for 64-bit and 32-bit support
|
|
pkgs-unstable.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;
|
|
};
|
|
};
|
|
}
|