moved more packages to modules

This commit is contained in:
Leyla Becker 2025-09-04 15:23:59 -05:00
parent c31eb38229
commit 2aad75a334
21 changed files with 453 additions and 48 deletions

View file

@ -17,7 +17,6 @@ in {
# See https://search.nixos.org/packages for all options # See https://search.nixos.org/packages for all options
home.packages = lib.lists.optionals userConfig.isDesktopUser ( home.packages = lib.lists.optionals userConfig.isDesktopUser (
with pkgs; [ with pkgs; [
ungoogled-chromium
gnomeExtensions.dash-to-panel gnomeExtensions.dash-to-panel
] ]
); );
@ -61,6 +60,7 @@ in {
steam.enable = true; steam.enable = true;
piper.enable = hardware.piperMouse.enable; piper.enable = hardware.piperMouse.enable;
krita.enable = true; krita.enable = true;
ungoogled-chromium.enable = true;
}) })
]; ];
}; };

View file

@ -37,6 +37,12 @@ in {
dbeaver-bin.enable = true; dbeaver-bin.enable = true;
bruno.enable = true; bruno.enable = true;
piper.enable = hardware.piperMouse.enable; piper.enable = hardware.piperMouse.enable;
proxmark3.enable = true;
openrgb.enable = hardware.openRGB.enable;
via.enable = hardware.viaKeyboard.enable;
claude-code.enable = osConfig.host.ai.enable;
davinci-resolve.enable = hardware.graphicsAcceleration.enable;
mfoc.enable = true;
}) })
(lib.mkIf (hardware.directAccess.enable && config.user.isDesktopUser) { (lib.mkIf (hardware.directAccess.enable && config.user.isDesktopUser) {
anki.enable = true; anki.enable = true;
@ -50,6 +56,19 @@ in {
firefox.enable = true; firefox.enable = true;
steam.enable = true; steam.enable = true;
krita.enable = true; krita.enable = true;
ungoogled-chromium.enable = true;
libreoffice.enable = true;
inkscape.enable = true;
gimp.enable = true;
freecad.enable = true;
onionshare.enable = true;
pdfarranger.enable = true;
picard.enable = true;
qflipper.enable = true;
openvpn.enable = true;
noisetorch.enable = true;
tor-browser.enable = true;
gdx-liftoff.enable = true;
}) })
]; ];
} }
@ -66,53 +85,6 @@ in {
nixpkgs.config = { nixpkgs.config = {
allowUnfree = true; allowUnfree = true;
}; };
home.packages = (
(with pkgs; [
proxmark3
])
++ (
lib.lists.optionals hardware.directAccess.enable (with pkgs; [
#foss platforms
ungoogled-chromium
libreoffice
inkscape
gimp
freecad
# cura
# kicad-small
onionshare
# rhythmbox
# wireshark
# rpi-imager
# fritzing
mfoc
tor-browser
pdfarranger
picard
gdx-liftoff
# proprietary platforms
(lib.mkIf hardware.graphicsAcceleration.enable davinci-resolve)
# development tools
# androidStudioPackages.canary
qFlipper
# system tools
openvpn
noisetorch
# hardware management tools
(lib.mkIf hardware.openRGB.enable openrgb)
(lib.mkIf hardware.viaKeyboard.enable via)
(lib.mkIf osConfig.host.ai.enable claude-code)
])
)
);
}) })
]; ];
} }

View file

@ -0,0 +1,30 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.davinci-resolve = {
enable = lib.mkEnableOption "enable davinci-resolve";
};
config = lib.mkIf config.programs.davinci-resolve.enable (lib.mkMerge [
{
home.packages = with pkgs; [
davinci-resolve
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.dataHome}/DaVinciResolve"
"${config.xdg.configHome}/blackmagic"
];
allowOther = true;
};
}
)
]);
}

View file

@ -19,5 +19,23 @@
./dbeaver.nix ./dbeaver.nix
./steam.nix ./steam.nix
./vscode ./vscode
./ungoogled-chromium.nix
./libreoffice.nix
./inkscape.nix
./gimp.nix
./proxmark3.nix
./freecad.nix
./onionshare.nix
./mfoc.nix
./pdfarranger.nix
./picard.nix
./qflipper.nix
./openvpn.nix
./noisetorch.nix
./openrgb.nix
./via.nix
./davinci-resolve.nix
./gdx-liftoff.nix
./tor-browser.nix
]; ];
} }

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.freecad = {
enable = lib.mkEnableOption "enable freecad";
};
config = lib.mkIf config.programs.freecad.enable (lib.mkMerge [
{
home.packages = with pkgs; [
freecad
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/FreeCAD"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.gdx-liftoff = {
enable = lib.mkEnableOption "enable gdx-liftoff";
};
config = lib.mkIf config.programs.gdx-liftoff.enable {
home.packages = with pkgs; [
gdx-liftoff
];
};
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.gimp = {
enable = lib.mkEnableOption "enable gimp";
};
config = lib.mkIf config.programs.gimp.enable (lib.mkMerge [
{
home.packages = with pkgs; [
gimp
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/GIMP"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.inkscape = {
enable = lib.mkEnableOption "enable inkscape";
};
config = lib.mkIf config.programs.inkscape.enable (lib.mkMerge [
{
home.packages = with pkgs; [
inkscape
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/inkscape"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.libreoffice = {
enable = lib.mkEnableOption "enable libreoffice";
};
config = lib.mkIf config.programs.libreoffice.enable (lib.mkMerge [
{
home.packages = with pkgs; [
libreoffice
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/libreoffice"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.mfoc = {
enable = lib.mkEnableOption "enable mfoc";
};
config = lib.mkIf config.programs.mfoc.enable {
home.packages = with pkgs; [
mfoc
];
};
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.noisetorch = {
enable = lib.mkEnableOption "enable noisetorch";
};
config = lib.mkIf config.programs.noisetorch.enable {
home.packages = with pkgs; [
noisetorch
];
};
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.onionshare = {
enable = lib.mkEnableOption "enable onionshare";
};
config = lib.mkIf config.programs.onionshare.enable {
home.packages = with pkgs; [
onionshare
];
};
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.openrgb = {
enable = lib.mkEnableOption "enable openrgb";
};
config = lib.mkIf config.programs.openrgb.enable {
home.packages = with pkgs; [
openrgb
];
};
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.openvpn = {
enable = lib.mkEnableOption "enable openvpn";
};
config = lib.mkIf config.programs.openvpn.enable {
home.packages = with pkgs; [
openvpn
];
};
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.pdfarranger = {
enable = lib.mkEnableOption "enable pdfarranger";
};
config = lib.mkIf config.programs.pdfarranger.enable {
home.packages = with pkgs; [
pdfarranger
];
};
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.picard = {
enable = lib.mkEnableOption "enable picard";
};
config = lib.mkIf config.programs.picard.enable (lib.mkMerge [
{
home.packages = with pkgs; [
picard
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/MusicBrainz"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.proxmark3 = {
enable = lib.mkEnableOption "enable proxmark3";
};
config = lib.mkIf config.programs.proxmark3.enable {
home.packages = with pkgs; [
proxmark3
];
};
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.qflipper = {
enable = lib.mkEnableOption "enable qflipper";
};
config = lib.mkIf config.programs.qflipper.enable (lib.mkMerge [
{
home.packages = with pkgs; [
qFlipper
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/qFlipper"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.tor-browser = {
enable = lib.mkEnableOption "enable tor-browser";
};
config = lib.mkIf config.programs.tor-browser.enable (lib.mkMerge [
{
home.packages = with pkgs; [
tor-browser
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.dataHome}/torbrowser"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.ungoogled-chromium = {
enable = lib.mkEnableOption "enable ungoogled-chromium";
};
config = lib.mkIf config.programs.ungoogled-chromium.enable (lib.mkMerge [
{
home.packages = with pkgs; [
ungoogled-chromium
];
}
(
lib.mkIf osConfig.host.impermanence.enable {
home.persistence."/persist${config.home.homeDirectory}" = {
directories = [
"${config.xdg.configHome}/chromium"
];
allowOther = true;
};
}
)
]);
}

View file

@ -0,0 +1,17 @@
{
lib,
pkgs,
config,
osConfig,
...
}: {
options.programs.via = {
enable = lib.mkEnableOption "enable via";
};
config = lib.mkIf config.programs.via.enable {
home.packages = with pkgs; [
via
];
};
}