16 lines
710 B
Nix
16 lines
710 B
Nix
{ inputs, self, ... }: {
|
|
imports = [ (inputs.helpers.mkMirroredModulesFlakeModule "globalOptions" ({ lib, ... }: {
|
|
options.features.shells.defaultShell = lib.mkOption {
|
|
type = inputs.helpers.mkEnumFromDirContents "${self}/modules/features/shells";
|
|
description = "This option controls the shell that should be used as the default, enabling that shell in the process.";
|
|
default = "zsh";
|
|
};
|
|
})) ];
|
|
|
|
flake.nixosModules.global = { config, pkgs, lib, ... }: {
|
|
programs.${config.features.shells.defaultShell}.enable = true;
|
|
|
|
users.defaultUserShell = pkgs.${config.features.shells.defaultShell};
|
|
users.users."grey".shell = pkgs.${config.features.shells.defaultShell};
|
|
};
|
|
} |