summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/share/wbob.nix
blob: 9e5f8ddf53ae069761cf31e1cb009cf6b9042815 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
{config, ... }:{
  networking.firewall.allowedUDPPorts = [ 137 138 ];
  networking.firewall.allowedTCPPorts = [ 139 445 ];
  users.users.smbguest = {
    name = "smbguest";
    uid = config.ids.uids.smbguest;  # effectively systemUser
    description = "smb guest user";
    home = "/home/share";
    createHome = true;
    group = "smbguest";
  };
  users.groups.smbguest = {};
  users.groups.mpd.members = [ "makefu" ];
  services.samba = {
    enable = true;
    enableNmbd = true;
    shares = {
      incoming = {
        path = "/data/incoming";
        "read only" = "no";
        browseable = "yes";
        "guest ok" = "yes";
      };
      data = {
        path = "/data/";
        "read only" = "yes";
        browseable = "yes";
        "guest ok" = "yes";
      };
      music-rw = {
        path = "/data/music";
        "read only" = "no";
        browseable = "yes";
        "guest ok" = "no";
      };
    };
    extraConfig = ''
      guest account = smbguest
      map to guest = bad user
      # disable printing
      load printers = no
      printing = bsd
      printcap name = /dev/null
      disable spoolss = yes
    '';
  };
}