Files
omarchy-nix/modules/packages.nix
T

75 lines
1.3 KiB
Nix

{pkgs, lib, exclude_packages ? []}:
let
# Essential Hyprland packages - cannot be excluded
hyprlandPackages = with pkgs; [
hyprshot
hyprpicker
hyprsunset
brightnessctl
pamixer
playerctl
bibata-cursors
gnome-themes-extra
pavucontrol
];
# Essential system packages - cannot be excluded
systemPackages = with pkgs; [
git
vim
libnotify
nautilus
alejandra
blueberry
clipse
fzf
zoxide
ripgrep
eza
fd
curl
unzip
wget
gnumake
];
# Discretionary packages - can be excluded by user
discretionaryPackages = with pkgs; [
# TUIs
lazygit
lazydocker
btop
powertop
fastfetch
# GUIs
chromium
obsidian
vlc
signal-desktop
# Commercial GUIs
typora
dropbox
spotify
# Development tools
github-desktop
gh
# Containers
docker-compose
ffmpeg
];
# Only allow excluding discretionary packages to prevent breaking the system
filteredDiscretionaryPackages = lib.lists.subtractLists exclude_packages discretionaryPackages;
allSystemPackages = hyprlandPackages ++ systemPackages ++ filteredDiscretionaryPackages;
in {
# Regular packages
systemPackages = allSystemPackages;
homePackages = with pkgs; [
];
}