nixcfg/systems/x86_64-linux/sgx/fileserver.nix
Harald Hoyer 3953362456 refactor: update configurations and fix inconsistent naming
Refactor various NixOS and home-manager configurations to improve consistency and readability. Correct naming inconsistencies, ensure proper indentation, and restructure Samba settings for better clarity and maintainability.
2024-11-28 10:01:53 +01:00

83 lines
1.9 KiB
Nix

{
pkgs,
lib,
config,
...
}:
{
services.netatalk = {
enable = true;
settings = {
Homes = {
"basedir regex" = "/home";
path = "Public";
};
time-machine = {
path = "/mnt/backup/tm_share";
"valid users" = "harald";
"time machine" = true;
};
Qmultimedia = {
path = "/mnt/raid/Qmultimedia";
};
};
};
services.avahi = {
enable = true;
nssmdns4 = true;
nssmdns6 = true;
ipv6 = true;
ipv4 = true;
publish = {
enable = true;
userServices = true;
};
};
services.samba = {
enable = true;
openFirewall = true;
settings = {
global = {
security = "user";
"read raw" = "Yes";
"write raw" = "Yes";
"socket options" = "TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=131072 SO_SNDBUF=131072";
"min receivefile size" = 16384;
"use sendfile" = true;
"aio read size" = 16384;
"aio write size" = 16384;
"workgroup" = "WORKGROUP";
"server string" = "sgx";
"netbios name" = "sgx";
#"max protocol" = "smb2";
"hosts allow" = "192.168.178. 127.0.0.1 localhost 2003::/16 ::1";
"hosts deny" = "ALL";
"guest account" = "nobody";
"map to guest" = "bad user";
};
Qmultimedia = {
path = "/mnt/raid/Qmultimedia";
browseable = "yes";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0644";
"directory mask" = "0755";
"force user" = "harald";
"force group" = "users";
};
};
};
services = {
syncthing = {
enable = true;
user = "harald";
dataDir = "/mnt/raid/Qmultimedia/syncthing"; # Default folder for new synced folders
configDir = "/mnt/raid/Qmultimedia/syncthing/.config/syncthing"; # Folder for Syncthing's settings and keys
guiAddress = "0.0.0.0:8384";
};
};
}