From 03f03eee9f8417b540f0d1b0d1e8a4626d455ac3 Mon Sep 17 00:00:00 2001 From: schererleander Date: Mon, 3 Nov 2025 00:19:09 +0100 Subject: chore: reorganize modules into subcategories --- modules/services/default.nix | 15 +++++++++++++++ modules/services/mullvad.nix | 16 ++++++++++++++++ modules/services/pipewire.nix | 19 +++++++++++++++++++ modules/services/polkit.nix | 25 +++++++++++++++++++++++++ modules/services/printer.nix | 21 +++++++++++++++++++++ 5 files changed, 96 insertions(+) create mode 100644 modules/services/default.nix create mode 100644 modules/services/mullvad.nix create mode 100644 modules/services/pipewire.nix create mode 100644 modules/services/polkit.nix create mode 100644 modules/services/printer.nix (limited to 'modules/services') diff --git a/modules/services/default.nix b/modules/services/default.nix new file mode 100644 index 0000000..2011a73 --- /dev/null +++ b/modules/services/default.nix @@ -0,0 +1,15 @@ +{ ... }: + +{ + imports = [ + ./printer.nix + ./polkit.nix + ./pipewire.nix + ./mullvad.nix + ]; + + config = { + # Default services confguration, things that dont need their own module. + services.openssh.enable = true; + }; +} diff --git a/modules/services/mullvad.nix b/modules/services/mullvad.nix new file mode 100644 index 0000000..0d486be --- /dev/null +++ b/modules/services/mullvad.nix @@ -0,0 +1,16 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + options.nx.services.mullvad.enable = lib.mkEnableOption "Enable and setup mullvad"; + config = lib.mkIf config.nx.services.mullvad.enable { + services.mullvad-vpn = { + enable = true; + package = pkgs.mullvad-vpn; + }; + }; +} diff --git a/modules/services/pipewire.nix b/modules/services/pipewire.nix new file mode 100644 index 0000000..929159e --- /dev/null +++ b/modules/services/pipewire.nix @@ -0,0 +1,19 @@ +{ + config, + lib, + ... +}: + +{ + options.nx.services.pipewire.enable = lib.mkEnableOption "Enable pipewire for audio"; + config = lib.mkIf config.nx.services.pipewire.enable { + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + wireplumber.enable = true; + }; + }; +} diff --git a/modules/services/polkit.nix b/modules/services/polkit.nix new file mode 100644 index 0000000..4cc5fce --- /dev/null +++ b/modules/services/polkit.nix @@ -0,0 +1,25 @@ +{ + config, + pkgs, + lib, + ... +}: +{ + options.nx.services.polkit.enable = lib.mkEnableOption "Enable and setup polkit service"; + config = lib.mkIf config.nx.services.polkit.enable { + security.polkit.enable = true; + systemd.services.polkit-gnome-authenticator-agent-1 = { + description = "polkit-gnome-authentication-agent-1"; + wantedBy = [ "graphical-session.target" ]; + wants = [ "graphical-session.target" ]; + after = [ "graphical-session.target" ]; + serviceConfig = { + Type = "simple"; + ExecStart = "${pkgs.polkit_gnome}/bin/polkit-gnome-authentication-agent-1"; + Restart = "on-failure"; + RestartSec = 1; + TimeoutStopSec = 10; + }; + }; + }; +} diff --git a/modules/services/printer.nix b/modules/services/printer.nix new file mode 100644 index 0000000..0f6d82b --- /dev/null +++ b/modules/services/printer.nix @@ -0,0 +1,21 @@ +{ + config, + pkgs, + lib, + ... +}: +{ + options.nx.services.printer.enable = lib.mkEnableOption "Enable printer service"; + config = lib.mkIf config.nx.services.printer.enable { + services.printing = { + enable = true; + drivers = [ pkgs.brlaser ]; + }; + # printer autodiscovery + services.avahi = { + enable = true; + nssmdns4 = true; + openFirewall = true; + }; + }; +} -- cgit v1.3.1