From 263d8ac7881322debbffea35df3a7111a6c8b1b5 Mon Sep 17 00:00:00 2001 From: Tim Van Baak Date: Tue, 16 Apr 2024 02:28:04 +0000 Subject: [PATCH] backyard: add home samba share --- machine/backyard/default.nix | 1 + machine/backyard/samba.nix | 63 ++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 machine/backyard/samba.nix diff --git a/machine/backyard/default.nix b/machine/backyard/default.nix index 5a6954a..8b58743 100644 --- a/machine/backyard/default.nix +++ b/machine/backyard/default.nix @@ -4,6 +4,7 @@ imports = [ ./hardware-configuration.nix ./jellyfin.nix + ./samba.nix ]; # Use the systemd-boot EFI boot loader. diff --git a/machine/backyard/samba.nix b/machine/backyard/samba.nix new file mode 100644 index 0000000..7ce77b8 --- /dev/null +++ b/machine/backyard/samba.nix @@ -0,0 +1,63 @@ +{ pkgs, lib, ... }: +{ + # This is mostly to get smbpasswd + environment.systemPackages = [ pkgs.samba ]; + + services.samba-wsdd = { + enable = true; + openFirewall = true; + }; + + services.samba = { + enable = true; + openFirewall = true; + securityType = "user"; + extraConfig = '' + workgroup = beatific + server string = backyard smb server + netbios name = backyard + deadtime = 300 + + local master = yes + domain master = yes + preferred master = yes + + guest account = nobody + map to guest = bad user + + case sensitive = yes + veto files = /^.DS_Store$/^.Trash-1000$/ + + load printers = no + printcap name = /dev/null + printing = bsd + + log file = /var/log/samba/client-%m.log + log level = 2 + max log size = 64 + + hide dot files = no + hosts allow = 10.22.20., 192.168.1. + map archive = no + unix extensions = yes + + ntlm auth = yes + ''; + shares = let + homeShare = user: { + path = "/home/${user}"; + comment = "${user}'s home folder"; + browseable = "yes"; + "read only" = "no"; + "guest okay" = "no"; + "create mask" = "0640"; + "force create mode" = "0640"; + "directory mask" = "0750"; + "force directory mode" = "0750"; + "valid users" = "${user}"; + }; + in { + tvb = homeShare "tvb"; + }; + }; +}