Restructure system-modules and bump flake.lock

- Consolidate enable flags into a `packages` attribute in all host
system-modules.nix files. - Rename package option paths to
`config.packages.<name>.enable` in modules/core/packages/packages.nix. -
Update locked revisions (lastModified, narHash, rev) for firefox‑addons
and stylix in flake.lock.
This commit is contained in:
2025-11-30 14:05:19 +01:00
parent 8d3fd7dbe2
commit be74b351e8
5 changed files with 164 additions and 206 deletions

12
flake.lock generated
View File

@@ -143,11 +143,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1764389080,
"narHash": "sha256-BEn1Z9Uv20u2DS6wzLKdzx5kAzynM3wMQ9JnGf3VJvI=",
"lastModified": 1764475519,
"narHash": "sha256-12TAT2CD+L+wdIHszQnPyu8zGSBxcazoVZmP6UQjk6s=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "897437c09bf22ce59efb3370f0783d0c662dba31",
"rev": "1172c39fb0e847a7f036e480d94f629edcf2cf46",
"type": "gitlab"
},
"original": {
@@ -523,11 +523,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1764254063,
"narHash": "sha256-V22JzkaTLF/GAL2LgqvOsJhAr8JbJsKaD8hnHjGwXfE=",
"lastModified": 1764451865,
"narHash": "sha256-d4tfTm3ccp4rx7W1WW1BzSkTgEeMd4cZvhAJ7lP145M=",
"owner": "danth",
"repo": "stylix",
"rev": "a1451bc40413870f0c7b576b751c1ca92055e323",
"rev": "8a096ccec828c68bfb870295d186ad994ea0ae2c",
"type": "github"
},
"original": {

View File

@@ -3,88 +3,74 @@ _: {
Container & Packaging
*/
docker.enable = true; # Docker: container runtime and management
distrobox.enable = false; # Distrobox: containerized development environments
flatpak = {
enable = true; # Flatpak: universal packaging system for Linux
packages = {
sober = true; # Enable Roblox Client
warehouse = true; # Enable Flatpak manager
flatseal = true; # Enable Flatpak permissions manager
sober = false; # Roblox client
warehouse = true; # Flatpak manager
flatseal = true; # Flatpak permissions manager
};
};
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
/*
Gaming
*/
gamemode.enable = true; # GameMode: optimizes system performance for gaming
gamescope.enable = false; # Gamescope: micro-compositor for games
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
gamescope.enable = false; # Gamescope: microcompositor for games
steam.enable = true; # Steam: platform for buying and playing games
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
packages = {
/*
Container & Packaging
*/
distrobox.enable = false; # Distrobox: containerized development environments
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
ttySolitaire.enable = true; # TTY Solitaire: terminal based solitaire game
/*
Gaming
*/
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
ttySolitaire.enable = true; # TTY Solitaire: terminalbased solitaire game
/*
Development Tools
*/
exercism.enable = true; # Exercism: coding practice platform
gedit.enable = false; # Gedit: GNOME text editor
lazygit.enable = false; # Lazygit: simple TUI for git
lazygit.enable = false; # Lazygit: simple TUI for Git
opencode.enable = true; # OpenCode: tools for coding and development
jan.enable = true; # Jan: AI chat UI
/*
Communication & Collaboration
*/
mattermost.enable = true; # Mattermost: open-source Slack alternative
mattermost.enable = true; # Mattermost: opensource Slack alternative
slack.enable = true; # Slack: team communication and collaboration tool
tutanota.enable = true; # Tutanota: secure email client
/*
Productivity / Knowledge Management
*/
bitwarden.enable = false; # Bitwarden: password manager (desktop)
iotas.enable = true; # Iotas: lightweight notes manager
logseq.enable = false; # Logseq: knowledge base and outliner
/*
Media & Graphics
*/
affinity.enable = false; # Affinity: professional graphics suite
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
freetube.enable = false; # FreeTube: privacyfriendly YouTube client
gimp.enable = false; # GIMP: gnu image manipulation program
gimp.enable = false; # GIMP: GNU Image Manipulation Program
kdenlive.enable = false; # Kdenlive: video editing software
plex.enable = true; # Plex: media player and server client
/*
Utilities / Misc
*/
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
galculator.enable = true; # Galculator: simple calculator
gedit.enable = false; # Gedit: GNOME text editor
winboat.enable = false; # Winboat: Windows remote desktop via RDP
};
}

View File

@@ -3,88 +3,74 @@ _: {
Container & Packaging
*/
docker.enable = true; # Docker: container runtime and management
distrobox.enable = false; # Distrobox: containerized development environments
flatpak = {
enable = true; # Flatpak: universal packaging system for Linux
packages = {
sober = true; # Enable Roblox Client
warehouse = true; # Enable Flatpak manager
flatseal = true; # Enable Flatpak permissions manager
sober = false; # Roblox client
warehouse = true; # Flatpak manager
flatseal = true; # Flatpak permissions manager
};
};
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
/*
Gaming
*/
gamemode.enable = true; # GameMode: optimizes system performance for gaming
gamescope.enable = false; # Gamescope: micro-compositor for games
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
gamescope.enable = false; # Gamescope: microcompositor for games
steam.enable = true; # Steam: platform for buying and playing games
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
packages = {
/*
Container & Packaging
*/
distrobox.enable = false; # Distrobox: containerized development environments
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
ttySolitaire.enable = true; # TTY Solitaire: terminal based solitaire game
/*
Gaming
*/
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
ttySolitaire.enable = true; # TTY Solitaire: terminalbased solitaire game
/*
Development Tools
*/
exercism.enable = true; # Exercism: coding practice platform
gedit.enable = false; # Gedit: GNOME text editor
lazygit.enable = false; # Lazygit: simple TUI for git
lazygit.enable = false; # Lazygit: simple TUI for Git
opencode.enable = true; # OpenCode: tools for coding and development
jan.enable = true; # Jan: AI chat UI
/*
Communication & Collaboration
*/
mattermost.enable = true; # Mattermost: open-source Slack alternative
mattermost.enable = true; # Mattermost: opensource Slack alternative
slack.enable = true; # Slack: team communication and collaboration tool
tutanota.enable = true; # Tutanota: secure email client
/*
Productivity / Knowledge Management
*/
bitwarden.enable = false; # Bitwarden: password manager (desktop)
iotas.enable = true; # Iotas: lightweight notes manager
logseq.enable = false; # Logseq: knowledge base and outliner
/*
Media & Graphics
*/
affinity.enable = false; # Affinity: professional graphics suite
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
freetube.enable = false; # FreeTube: privacyfriendly YouTube client
gimp.enable = false; # GIMP: gnu image manipulation program
gimp.enable = false; # GIMP: GNU Image Manipulation Program
kdenlive.enable = false; # Kdenlive: video editing software
plex.enable = true; # Plex: media player and server client
/*
Utilities / Misc
*/
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
galculator.enable = true; # Galculator: simple calculator
gedit.enable = false; # Gedit: GNOME text editor
winboat.enable = false; # Winboat: Windows remote desktop via RDP
};
}

View File

@@ -3,88 +3,74 @@ _: {
Container & Packaging
*/
docker.enable = true; # Docker: container runtime and management
distrobox.enable = false; # Distrobox: containerized development environments
flatpak = {
enable = true; # Flatpak: universal packaging system for Linux
packages = {
sober = true; # Enable Roblox Client
warehouse = true; # Enable Flatpak manager
flatseal = true; # Enable Flatpak permissions manager
sober = false; # Roblox client
warehouse = true; # Flatpak manager
flatseal = true; # Flatpak permissions manager
};
};
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
/*
Gaming
*/
gamemode.enable = true; # GameMode: optimizes system performance for gaming
gamescope.enable = false; # Gamescope: micro-compositor for games
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
gamescope.enable = false; # Gamescope: microcompositor for games
steam.enable = true; # Steam: platform for buying and playing games
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
packages = {
/*
Container & Packaging
*/
distrobox.enable = false; # Distrobox: containerized development environments
lazydocker.enable = false; # Lazydocker: simple TUI for Docker
ttySolitaire.enable = true; # TTY Solitaire: terminal based solitaire game
/*
Gaming
*/
prismlauncher.enable = false; # Prism Launcher: Minecraft modded launcher
spaceCadetPinball.enable = true; # SpaceCadet Pinball: classic pinball game
ttySolitaire.enable = true; # TTY Solitaire: terminalbased solitaire game
/*
Development Tools
*/
exercism.enable = true; # Exercism: coding practice platform
gedit.enable = false; # Gedit: GNOME text editor
lazygit.enable = false; # Lazygit: simple TUI for git
lazygit.enable = false; # Lazygit: simple TUI for Git
opencode.enable = true; # OpenCode: tools for coding and development
jan.enable = true; # Jan: AI chat UI
/*
Communication & Collaboration
*/
mattermost.enable = true; # Mattermost: open-source Slack alternative
mattermost.enable = true; # Mattermost: opensource Slack alternative
slack.enable = true; # Slack: team communication and collaboration tool
tutanota.enable = true; # Tutanota: secure email client
/*
Productivity / Knowledge Management
*/
bitwarden.enable = false; # Bitwarden: password manager (desktop)
iotas.enable = true; # Iotas: lightweight notes manager
logseq.enable = false; # Logseq: knowledge base and outliner
/*
Media & Graphics
*/
affinity.enable = false; # Affinity: professional graphics suite
eyeOfGnome.enable = true; # Eye of GNOME: image viewer
freetube.enable = false; # FreeTube: privacyfriendly YouTube client
gimp.enable = false; # GIMP: gnu image manipulation program
gimp.enable = false; # GIMP: GNU Image Manipulation Program
kdenlive.enable = false; # Kdenlive: video editing software
plex.enable = true; # Plex: media player and server client
/*
Utilities / Misc
*/
eddieAirVPN.enable = true; # Eddie AirVPN: VPN client
galculator.enable = true; # Galculator: simple calculator
gedit.enable = false; # Gedit: GNOME text editor
winboat.enable = false; # Winboat: Windows remote desktop via RDP
};
}

View File

@@ -7,9 +7,9 @@
...
}: let
mkPackage = name: pkgsOrList: {
options.${name}.enable = lib.mkEnableOption name;
options.packages.${name}.enable = lib.mkEnableOption name;
config.environment.systemPackages =
lib.mkIf config.${name}.enable
lib.mkIf config.packages.${name}.enable
(lib.toList pkgsOrList);
};