diff options
Diffstat (limited to 'modules/services')
| -rw-r--r-- | modules/services/default.nix | 15 | ||||
| -rw-r--r-- | modules/services/mullvad.nix | 16 | ||||
| -rw-r--r-- | modules/services/pipewire.nix | 19 | ||||
| -rw-r--r-- | modules/services/polkit.nix | 25 | ||||
| -rw-r--r-- | modules/services/printer.nix | 21 |
5 files changed, 96 insertions, 0 deletions
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; + }; + }; +} |
