diff --git a/modules/nixos/hosts-bak/kuchiki/configuration.nix b/modules/nixos/hosts-bak/kuchiki/configuration.nix index d3d9bb0..ae13b9b 100644 --- a/modules/nixos/hosts-bak/kuchiki/configuration.nix +++ b/modules/nixos/hosts-bak/kuchiki/configuration.nix @@ -14,6 +14,7 @@ display-manager.enable = false; desktop-environment.enable = false; media.enable = true; + nas.enable = true; firefox.enable = false; chrome.enable = false; diff --git a/modules/nixos/media/arr.nix b/modules/nixos/media/arr.nix new file mode 100644 index 0000000..a97688e --- /dev/null +++ b/modules/nixos/media/arr.nix @@ -0,0 +1,27 @@ +{ + config, + pkgs, + lib, + ... +}: { + options = { + arr.enable = lib.mkEnableOption "Enable arr frameworks"; + }; + + config = lib.mkIf config.arr.enable { + services = { + radarr = { + enable = true; + package = pkgs.unstable.radarr; + }; + sonarr = { + enable = true; + package = pkgs.unstable.sonarr; + }; + bazarr = { + enable = true; + # package = pkgs.unstable.bazarr; + }; + }; + }; +} diff --git a/modules/nixos/media/default.nix b/modules/nixos/media/default.nix index da115a5..cd028bd 100644 --- a/modules/nixos/media/default.nix +++ b/modules/nixos/media/default.nix @@ -4,6 +4,7 @@ ... }: { imports = [ + ./arr.nix ./plex.nix ]; options = { @@ -11,6 +12,7 @@ }; config = lib.mkIf config.media.enable { + arr.enable = lib.mkDefault true; plex.enable = lib.mkDefault true; }; } diff --git a/nixos/services/default.nix b/nixos/services/default.nix new file mode 100644 index 0000000..9cd02f6 --- /dev/null +++ b/nixos/services/default.nix @@ -0,0 +1,49 @@ +{lib, ...}: { + imports = [ + ./nas + ./avahi.nix + ./fingerprint.nix + ./flatpak.nix + ./fwupd.nix + ./kanata.nix + ./oneapi.nix + ./printing.nix + ./scanning.nix + ./secrets.nix + ./sound.nix + ./ssd.nix + ./ssh.nix + ./suid.nix + ./tailscale.nix + ./vial.nix + ]; + + nas.enable = lib.mkDefault false; + + local-resolv.enable = lib.mkDefault true; + fingerprint.enable = lib.mkDefault false; + flatpak.enable = lib.mkDefault false; + fwupd.enable = lib.mkDefault true; + kanata.enable = lib.mkDefault true; + printing.enable = lib.mkDefault false; + scanning.enable = lib.mkDefault false; + secrets.enable = lib.mkDefault true; + oneapi.enable = lib.mkDefault false; + # oneapi.enable = lib.mkDefault true; + pipewire.enable = lib.mkDefault true; + drive-optimizations.enable = lib.mkDefault true; + ssh.enable = lib.mkDefault true; + tailscale.enable = lib.mkDefault true; + vial.enable = lib.mkDefault true; + + # services.xserver = { + # enable = true; + # xkb = { + # layout = "de"; + # variant = ""; + # }; + # excludePackages = with pkgs; [ + # xterm + # ]; + # }; +} diff --git a/nixos/services/nas/default.nix b/nixos/services/nas/default.nix new file mode 100644 index 0000000..a2a09f1 --- /dev/null +++ b/nixos/services/nas/default.nix @@ -0,0 +1,17 @@ +{ + config, + lib, + ... +}: { + imports = [ + ./drives.nix + ]; + + options = { + nas.enable = lib.mkEnableOption "NAS utilities and config"; + }; + + config = lib.mkIf config.nas.enable { + drives.enable = lib.mkDefault true; + }; +} diff --git a/nixos/services/nas/drives.nix b/nixos/services/nas/drives.nix new file mode 100644 index 0000000..e0136d4 --- /dev/null +++ b/nixos/services/nas/drives.nix @@ -0,0 +1,16 @@ +{ + config, + lib, + pkgs, + ... +}: { + options = { + drives.enable = lib.mkEnableOption "Utilities for managing drives"; + }; + + config = lib.mkIf config.drives.enable { + environment.systemPackages = with pkgs; [ + smartmontools + ]; + }; +}