summary refs log tree commit diff stats
path: root/modules/nixos
diff options
context:
space:
mode:
Diffstat (limited to 'modules/nixos')
-rw-r--r--modules/nixos/sils/default.nix1
-rw-r--r--modules/nixos/sils/impermanence.nix6
-rw-r--r--modules/nixos/sils/printing.nix23
-rw-r--r--modules/nixos/sils/roles.nix3
-rw-r--r--modules/nixos/sils/sound.nix20
5 files changed, 52 insertions, 1 deletions
diff --git a/modules/nixos/sils/default.nix b/modules/nixos/sils/default.nix
index 0f714f7..89aa111 100644
--- a/modules/nixos/sils/default.nix
+++ b/modules/nixos/sils/default.nix
@@ -19,6 +19,7 @@
     ./plymouth.nix
     ./printing.nix
     ./roles.nix
+    ./sound.nix
     ./sudo.nix
     ./sway.nix
     ./theming
diff --git a/modules/nixos/sils/impermanence.nix b/modules/nixos/sils/impermanence.nix
index 4acdc6f..cf67a91 100644
--- a/modules/nixos/sils/impermanence.nix
+++ b/modules/nixos/sils/impermanence.nix
@@ -32,6 +32,12 @@ in {
         group = "root";
         mode = "0755";
       }
+      {
+        directory = "/var/log";
+        user = "root";
+        group = "root";
+        mode = "0755";
+      }
     ];
   };
 }
diff --git a/modules/nixos/sils/printing.nix b/modules/nixos/sils/printing.nix
index d447255..9247146 100644
--- a/modules/nixos/sils/printing.nix
+++ b/modules/nixos/sils/printing.nix
@@ -11,12 +11,33 @@ in {
     services = {
       printing = {
         enable = true;
-        #drivers = with pkgs; [hplip]; # if building again: epson-escpr
+        startWhenNeeded = true;
+        webInterface = true;
+        stateless = true;
+        drivers = with pkgs; [epson-escpr epson-escpr2 hplip];
       };
       avahi = {
         enable = true;
+        nssmdns4 = true;
+        nssmdns6 = true;
         openFirewall = true;
       };
     };
+
+    hardware.printers = {
+      ensureDefaultPrinter = "EPSON_ET-2720_Series";
+      ensurePrinters = [
+        {
+          name = "EPSON_ET-2720_Series";
+          description = "EPSON ET-2720 Series";
+          model = "epson-inkjet-printer-escpr/Epson-ET-2720_Series-epson-escpr-en.ppd";
+          location = "Home Network";
+          deviceUri = "dnssd://EPSON%20ET-2720%20Series._ipp._tcp.local/?uuid=cfe92100-67c4-11d4-a45f-e0bb9edcdbb9";
+          ppdOptions = {
+            PageSize = "A4";
+          };
+        }
+      ];
+    };
   };
 }
diff --git a/modules/nixos/sils/roles.nix b/modules/nixos/sils/roles.nix
index cca3cf6..346149c 100644
--- a/modules/nixos/sils/roles.nix
+++ b/modules/nixos/sils/roles.nix
@@ -24,6 +24,7 @@ in {
       pamconfig.enable = lib.mkDefault true;
       plymouth.enable = lib.mkDefault true;
       printing.enable = lib.mkDefault true;
+      sound.enable = lib.mkDefault true;
       sway.enable = lib.mkDefault false;
       theming.enable = lib.mkDefault true;
     }
@@ -45,6 +46,7 @@ in {
       pamconfig.enable = lib.mkDefault true;
       plymouth.enable = lib.mkDefault false;
       printing.enable = lib.mkDefault true;
+      sound.enable = lib.mkDefault true;
       sway.enable = lib.mkDefault false;
       theming.enable = lib.mkDefault true;
     }
@@ -68,6 +70,7 @@ in {
       pamconfig.enable = lib.mkDefault true;
       plymouth.enable = lib.mkDefault false;
       printing.enable = lib.mkDefault true;
+      sound.enable = lib.mkDefault true;
       sway.enable = lib.mkDefault false;
       theming.enable = lib.mkDefault true;
     }
diff --git a/modules/nixos/sils/sound.nix b/modules/nixos/sils/sound.nix
new file mode 100644
index 0000000..3ad26fb
--- /dev/null
+++ b/modules/nixos/sils/sound.nix
@@ -0,0 +1,20 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.sils.sound;
+in {
+  options.sils.sound.enable = lib.mkEnableOption "sound config";
+  config = lib.mkIf cfg.enable {
+    services.pipewire = {
+      enable = true;
+      alsa = {
+        enable = true;
+        support32Bit = true;
+      };
+      pulse.enable = true;
+      jack.enable = true;
+    };
+  };
+}