From 0d17a0baf11e0e33e5df6f1ae72da4676d23a7d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christopher=20M=C3=BChl?= Date: Tue, 6 Jan 2026 03:13:41 +0100 Subject: [PATCH] Move quirks to profiles --- configurations/nixos/endurance/default.nix | 2 ++ modules/generic/profiles.nix | 4 ++-- modules/nixos/default.nix | 1 + modules/nixos/{quirks => }/nix-ld.nix | 3 ++- modules/nixos/profiles/default.nix | 2 ++ .../docker.nix => profiles/docker/default.nix} | 2 +- .../avahi.nix => profiles/work/default.nix} | 3 +-- modules/nixos/quirks/default.nix | 16 ---------------- 8 files changed, 11 insertions(+), 22 deletions(-) rename modules/nixos/{quirks => }/nix-ld.nix (96%) rename modules/nixos/{quirks/docker.nix => profiles/docker/default.nix} (85%) rename modules/nixos/{quirks/avahi.nix => profiles/work/default.nix} (91%) delete mode 100644 modules/nixos/quirks/default.nix diff --git a/configurations/nixos/endurance/default.nix b/configurations/nixos/endurance/default.nix index cd04550..4867ac7 100644 --- a/configurations/nixos/endurance/default.nix +++ b/configurations/nixos/endurance/default.nix @@ -15,6 +15,8 @@ bosun = { profiles = { graphical.enable = true; + docker.enable = true; + work.enable = true; }; #quirks = ["avahi" "docker" "nix-ld"]; diff --git a/modules/generic/profiles.nix b/modules/generic/profiles.nix index 08775f4..e7849f7 100644 --- a/modules/generic/profiles.nix +++ b/modules/generic/profiles.nix @@ -4,7 +4,7 @@ in { options.bosun.profiles = { graphical.enable = mkEnableOption "Graphical interface"; headless.enable = mkEnableOption "Headless"; - workstation.enable = mkEnableOption "Workstation"; - server.enable = mkEnableOption "Server"; + docker.enable = mkEnableOption "Docker usage"; + work.enable = mkEnableOption "Work setup"; }; } diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 0500b32..130486d 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -4,5 +4,6 @@ ./profiles ./system.nix ./users.nix + ./nix-ld.nix ]; } diff --git a/modules/nixos/quirks/nix-ld.nix b/modules/nixos/nix-ld.nix similarity index 96% rename from modules/nixos/quirks/nix-ld.nix rename to modules/nixos/nix-ld.nix index b549288..df31e96 100644 --- a/modules/nixos/quirks/nix-ld.nix +++ b/modules/nixos/nix-ld.nix @@ -4,7 +4,8 @@ lib, ... }: { - config = lib.mkIf (builtins.elem "nix-ld" config.elements.quirks) { + # TODO: Enable quirk somehow + config = lib.mkIf false { programs.nix-ld.enable = true; programs.nix-ld.libraries = with pkgs; [ SDL diff --git a/modules/nixos/profiles/default.nix b/modules/nixos/profiles/default.nix index f5e5198..d4ea6d0 100644 --- a/modules/nixos/profiles/default.nix +++ b/modules/nixos/profiles/default.nix @@ -1,5 +1,7 @@ { imports = [ ./graphical + ./work + ./docker ]; } diff --git a/modules/nixos/quirks/docker.nix b/modules/nixos/profiles/docker/default.nix similarity index 85% rename from modules/nixos/quirks/docker.nix rename to modules/nixos/profiles/docker/default.nix index e7f44c7..6fca72e 100644 --- a/modules/nixos/quirks/docker.nix +++ b/modules/nixos/profiles/docker/default.nix @@ -3,7 +3,7 @@ lib, ... }: { - config = lib.mkIf (builtins.elem "docker" config.elements.quirks) { + config = lib.mkIf config.bosun.profiles.docker.enable { virtualisation.docker = { enable = true; diff --git a/modules/nixos/quirks/avahi.nix b/modules/nixos/profiles/work/default.nix similarity index 91% rename from modules/nixos/quirks/avahi.nix rename to modules/nixos/profiles/work/default.nix index 054cae6..e6737ed 100644 --- a/modules/nixos/quirks/avahi.nix +++ b/modules/nixos/profiles/work/default.nix @@ -2,10 +2,9 @@ config, lib, pkgs, - modulesPath, ... }: { - config = lib.mkIf (builtins.elem "avahi" config.elements.quirks) { + config = lib.mkIf config.bosun.profiles.work.enable { services = { # Name Server Caching Daemon nscd = { diff --git a/modules/nixos/quirks/default.nix b/modules/nixos/quirks/default.nix deleted file mode 100644 index 2d139c1..0000000 --- a/modules/nixos/quirks/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{lib, ...}: { - # All quirks are imported and check themselves whether they are enabled - # via `(builtins.elem "quirk" config.elements.quirks)`. - imports = [ - ./avahi.nix - ./docker.nix - ./nix-ld.nix - ]; - - options.elements = with lib; { - quirks = mkOption { - type = types.listOf types.str; - default = []; - }; - }; -}