Add tons of missing system, desktop and home modules

This commit is contained in:
Jo 2025-04-28 20:02:05 +02:00
parent 01367c4222
commit fa3bbb2f6f
15 changed files with 453 additions and 7 deletions

View file

@ -0,0 +1,25 @@
{
lib,
pkgs,
self,
config,
...
}: let
inherit (lib) mkEnableOption mkIf types;
inherit (self) namespace;
inherit (self.lib) mkOpt;
cfg = config.${namespace}.system.shell;
in {
options.${namespace}.system.shell = {
enable = mkEnableOption "custom user shells.";
installed = mkOpt types.listOf types.package [pkgs.fish] "List of shell packages to install";
default = mkOpt types.str "fish" "Set a custom shell as the default for all users.";
};
config = mkIf cfg.enable {
environment.shells = cfg.installed;
users.defaultUserShell = pkgs.${cfg.shell.type};
programs.${cfg.shell.type}.enable = true;
};
}