summaryrefslogtreecommitdiff
path: root/configuration
diff options
context:
space:
mode:
Diffstat (limited to 'configuration')
-rw-r--r--configuration/snorlax/default.nix1
-rw-r--r--configuration/snorlax/disk-config.nix6
-rw-r--r--configuration/snorlax/samba.nix37
3 files changed, 44 insertions, 0 deletions
diff --git a/configuration/snorlax/default.nix b/configuration/snorlax/default.nix
index 65e6f6f..4355364 100644
--- a/configuration/snorlax/default.nix
+++ b/configuration/snorlax/default.nix
@@ -3,6 +3,7 @@
imports = [
./disk-config.nix
./git.nix
+ ./samba.nix
../core
];
diff --git a/configuration/snorlax/disk-config.nix b/configuration/snorlax/disk-config.nix
index 8c910d6..9bac5f0 100644
--- a/configuration/snorlax/disk-config.nix
+++ b/configuration/snorlax/disk-config.nix
@@ -45,6 +45,12 @@
mountpoint = "/var/lib/git";
options."com.sun:auto-snapshot" = "true";
};
+
+ samba = {
+ type = "zfs_fs";
+ mountpoint = "/srv/samba";
+ options."com.sun:auto-snapshot" = "true";
+ };
};
};
};
diff --git a/configuration/snorlax/samba.nix b/configuration/snorlax/samba.nix
new file mode 100644
index 0000000..44a4be9
--- /dev/null
+++ b/configuration/snorlax/samba.nix
@@ -0,0 +1,37 @@
+{ ... }:
+{
+ services.samba = {
+ enable = true;
+ securityType = "user";
+ openFirewall = true;
+ settings = {
+ global = {
+ "workgroup" = "WORKGROUP";
+ "server string" = "smbnix";
+ "netbios name" = "smbnix";
+ "security" = "user";
+ "hosts allow" = "192.168.50. 127.0.0.1 localhost";
+ "hosts deny" = "0.0.0.0/0";
+ "guest account" = "nobody";
+ "map to guest" = "bad user";
+ };
+
+ photos = {
+ "path" = "/srv/samba/photos";
+ "browseable" = "yes";
+ "read only" = "no";
+ "guest ok" = "yes";
+ "create mask" = "0644";
+ "directory mask" = "0755";
+ "force user" = "nobody";
+ "force group" = "nogroup";
+ };
+ };
+ };
+
+ # Used to advertise to Windows hosts
+ services.samba-wsdd = {
+ enable = true;
+ openFirewall = true;
+ };
+}