re-structure package configuration. fully modularize everything

This commit is contained in:
Fabian Montero 2024-11-29 01:37:41 -06:00
parent 9418588fed
commit 6a51c08183
8 changed files with 111 additions and 94 deletions

View file

@ -17,6 +17,7 @@ in {
packages = with pkgs; [
calc
file
gcc
htop
killall
man-pages

View file

@ -8,11 +8,12 @@
./terminal
./neovim.nix
./baseline.nix
./steam
./gaming
./yubikey.nix
./browsers.nix
./gui
./zsh
./gpg.nix
./defaultDesktopPack.nix
];
}

View file

@ -0,0 +1,34 @@
{
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.local.apps.defaultDesktopPack;
in {
options.local.apps.defaultDesktopPack = {
enable = mkEnableOption "common desktop apps";
};
config = mkIf cfg.enable {
home.packages = with pkgs; [
calibre
discord
gwenview
libreoffice-fresh
mpv
obs-studio
pavucontrol
pdfarranger
qpdfview
runelite
spotify
tdesktop
usbutils
vpsfree-client
vscodium-fhs
zola
zoom-us
];
};
}

View file

@ -0,0 +1,28 @@
{
pkgs,
lib,
config,
...
}:
with lib; let
cfg = config.local.apps.gaming;
in {
options.local.apps.gaming = {
enable = mkEnableOption "gaming apps";
};
config = mkIf cfg.enable {
home.packages = [
# Steam. todo: move to the steam module later
(pkgs.callPackage ./package.nix {})
pkgs.protonup
pkgs.winetricks
pkgs.protontricks
];
home.packages = with pkgs; [
lutris
openrct2
prismlauncher
];
};
}

View file

@ -1,21 +0,0 @@
{
pkgs,
lib,
config,
...
}:
with lib; let
cfg = config.local.apps.steam;
in {
options.local.apps.steam = {
enable = mkEnableOption "Steam settings";
};
config = mkIf cfg.enable {
home.packages = [
(pkgs.callPackage ./package.nix {})
pkgs.protonup
pkgs.winetricks
pkgs.protontricks
];
};
}

View file

@ -1,45 +0,0 @@
{
config,
lib,
pkgs,
...
}: {
local = {
baseline.enable = true;
apps = {
terminal.enable = true;
neovim.enable = true;
steam.enable = true;
yubikey.enable = true;
browsers.enable = true;
};
};
home.packages = with pkgs; [
calibre
darktable
deluge
discord
gcc
gwenview
kdenlive
libreoffice-fresh
lutris
mpv
obs-studio
openrct2
pavucontrol
pdfarranger
prismlauncher
qpdfview
runelite
spotify
tdesktop
usbutils
virt-manager
vpsfree-client
vscodium-fhs
zola
zoom-us
];
}

View file

@ -6,7 +6,6 @@
...
}: {
imports = [
./apps.nix
./systemd
./isolation.nix
];
@ -21,9 +20,29 @@
"unstable".flake = flakes.unstable;
};
local.gui = {
local = {
baseline.enable = true;
services = {
zsh.enable = true;
accounts.enable = true;
gpg = {
enalbe = true;
defaultKey = "7AA277E604A4173916BBB4E91FFAC35E1798174F";
};
};
apps = {
terminal.enable = true;
neovim.enable = true;
gaming.enable = true;
yubikey.enable = true;
browsers.enable = true;
defaultDesktopPack.enable = true;
};
gui = {
enable = true;
#? wallpaperPath = ""; place wallpaper in config?
monitors = {
DP-1 = {
primary = true;
@ -42,23 +61,23 @@
};
};
};
local.services = {
zsh.enable = true;
accounts.enable = true;
gpg = {
enalbe = true;
defaultKey = "7AA277E604A4173916BBB4E91FFAC35E1798174F";
};
};
home = {
stateVersion = "21.11"; # No tocar esto
packages = with pkgs; [
darktable
deluge
kdenlive
virt-manager
];
stateVersion = "21.11"; # DO NOT CHANGE
username = "fabian";
homeDirectory = "/home/fabian";
sessionVariables = {
"TERMINAL" = "kitty";
};
};
programs.home-manager.enable = true;
}