Add exclude_packages to allow modifying default install

This commit is contained in:
Henry Sipp
2025-07-24 20:42:02 -05:00
parent b83efbcf18
commit e22477bb58
4 changed files with 35 additions and 28 deletions
+2 -1
View File
@@ -1,9 +1,10 @@
inputs: {
config,
pkgs,
lib,
...
}: let
packages = import ../packages.nix {inherit pkgs;};
packages = import ../packages.nix {inherit pkgs lib; exclude_packages = config.omarchy.exclude_packages;};
themes = import ../themes.nix;
selectedTheme = themes.${config.omarchy.theme};
+2 -1
View File
@@ -1,10 +1,11 @@
{
config,
pkgs,
lib,
...
}: let
cfg = config.omarchy;
packages = import ../packages.nix {inherit pkgs;};
packages = import ../packages.nix {inherit pkgs lib; exclude_packages = cfg.exclude_packages;};
in {
security.rtkit.enable = true;
services.pulseaudio.enable = false;
+26 -26
View File
@@ -1,26 +1,27 @@
{pkgs}: {
# Regular packages
systemPackages = with pkgs; [
# Base system tools
git
vim
libnotify
pavucontrol
brightnessctl
ffmpeg
nautilus
{pkgs, lib, exclude_packages ? []}:
let
# Essential Hyprland packages - cannot be excluded
hyprlandPackages = with pkgs; [
hyprshot
hyprpicker
hyprsunset
alejandra
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
# Shell tools
fzf
zoxide
ripgrep
@@ -30,7 +31,10 @@
unzip
wget
gnumake
];
# Discretionary packages - can be excluded by user
discretionaryPackages = with pkgs; [
# TUIs
lazygit
lazydocker
@@ -42,23 +46,12 @@
chromium
obsidian
vlc
# Can't find this in nixpkgs!
# Might have to make it ourselves
# asdcontrol
# Don't want these right now
# obs-studio
# kdePackages.kdenLive
# pinta
# libreoffice
signal-desktop
# Commercial GUIs
typora
dropbox
spotify
# zoom
# Development tools
github-desktop
@@ -66,9 +59,16 @@
# Containers
docker-compose
# podman-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; [
];
}