From 0bece1c755a7869bf0d5194ae37da3113856a2f6 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Wed, 10 May 2023 19:57:20 -0700 Subject: profiles/samba: convert the old module as a profile --- profiles/samba.nix | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 profiles/samba.nix (limited to 'profiles/samba.nix') diff --git a/profiles/samba.nix b/profiles/samba.nix new file mode 100644 index 0000000..d1f186b --- /dev/null +++ b/profiles/samba.nix @@ -0,0 +1,33 @@ +{ config, pkgs, lib, ... }: +let + makePublicShare = path: { + name = builtins.baseNameOf path; + value = { + inherit path; + browseable = "yes"; + writeable = "no"; + "guest ok" = "yes"; + "guest only" = "yes"; + "force user" = "nobody"; + }; + }; + publicShares = [ "/data/fast/music" "/data/fast/videos" ]; +in +{ + # https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/network-filesystems/samba.nix + services.samba = { + enable = true; + extraConfig = '' + workgroup = WORKGROUP + server string = tahoe + netbios name = tahoe + security = user + guest account = nobody + mangled names = no + client min protocol = SMB2 + map to guest = bad user + ntlm auth = true + ''; + shares = with lib; (listToAttrs (map makePublicShare cfg.publicShares)); + }; +} -- cgit v1.2.3