feat: setup initial profiles
This commit is contained in:
17
profiles/base.nix
Normal file
17
profiles/base.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options = {
|
||||
profiles.base.enable = lib.mkEnableOption "base profile for all machines";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.profiles.base.enable {
|
||||
openssh.enable = lib.mkDefault true;
|
||||
zsh.enable = lib.mkDefault true;
|
||||
localisation.enable = lib.mkDefault true;
|
||||
gnupg.enable = lib.mkDefault true;
|
||||
};
|
||||
}
|
||||
1
profiles/default.nix
Normal file
1
profiles/default.nix
Normal file
@@ -0,0 +1 @@
|
||||
{ lib, my-lib }: args: (my-lib.autoDir ./.)
|
||||
23
profiles/desktop.nix
Normal file
23
profiles/desktop.nix
Normal file
@@ -0,0 +1,23 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options = {
|
||||
profiles.desktop.enable = lib.mkEnableOption "desktop profile (sway, audio, printing)";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.profiles.desktop.enable {
|
||||
profiles.base.enable = lib.mkDefault true;
|
||||
desktop.enable = lib.mkDefault true;
|
||||
sway.enable = lib.mkDefault true;
|
||||
tuigreet = {
|
||||
enable = lib.mkDefault true;
|
||||
command = lib.mkDefault "sway";
|
||||
};
|
||||
printing.enable = lib.mkDefault true;
|
||||
workstation.enable = lib.mkDefault true;
|
||||
yubikey.enable = lib.mkDefault true;
|
||||
};
|
||||
}
|
||||
15
profiles/server.nix
Normal file
15
profiles/server.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options = {
|
||||
profiles.server.enable = lib.mkEnableOption "headless server profile";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.profiles.server.enable {
|
||||
profiles.base.enable = lib.mkDefault true;
|
||||
workstation.enable = lib.mkDefault true;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user