From dd31b959453be8024a381aa87676ef21e193d3f6 Mon Sep 17 00:00:00 2001 From: Jack O'Sullivan Date: Sun, 28 May 2023 00:52:17 +0100 Subject: [PATCH] nixos/kelder: Add Samba --- nixos/boxes/kelder/default.nix | 20 ++++++++++++++++++++ nixos/modules/tmproot.nix | 11 +++++++++++ 2 files changed, 31 insertions(+) diff --git a/nixos/boxes/kelder/default.nix b/nixos/boxes/kelder/default.nix index 61cbfe3..8af7fe0 100644 --- a/nixos/boxes/kelder/default.nix +++ b/nixos/boxes/kelder/default.nix @@ -121,6 +121,20 @@ in username = "token"; passwordFile = config.age.secrets."kelder/ddclient-cloudflare.key".path; }; + samba = { + enable = true; + enableNmbd = true; + shares = { + storage = { + path = "/mnt/storage"; + browseable = "yes"; + writeable = "yes"; + "create mask" = "0664"; + "directory mask" = "0775"; + }; + }; + }; + samba-wsdd.enable = true; }; networking = { @@ -246,6 +260,12 @@ in ]; }; extraRules = '' + table inet filter { + chain input { + iifname et1g0 tcp dport { 139, 445, 5357 } accept + iifname et1g0 udp dport { 137, 138, 3702 } accept + } + } table inet raw { chain prerouting { type filter hook prerouting priority mangle; policy accept; diff --git a/nixos/modules/tmproot.nix b/nixos/modules/tmproot.nix index 60af3c6..0dcbe95 100644 --- a/nixos/modules/tmproot.nix +++ b/nixos/modules/tmproot.nix @@ -195,6 +195,12 @@ in (mkIf config.services.mastodon.enable { my.tmproot.unsaved.ignore = [ "/var/lib/mastodon/.secrets_env" ]; }) + (mkIf config.services.ddclient.enable { + my.tmproot.unsaved.ignore = [ "/var/lib/private/ddclient" ]; + }) + (mkIf config.services.samba.enable { + my.tmproot.unsaved.ignore = [ "/var/cache/samba" ]; + }) (mkIf config.my.build.isDevVM { my.tmproot.unsaved.ignore = [ "/nix" ]; @@ -402,6 +408,11 @@ in } ]; }) + (mkIf config.services.samba.enable { + my.tmproot.persistence.config.directories = [ + "/var/lib/samba" + ]; + }) ])) ]);