Server: move transmission nfs share settings to transmission.nix
This commit is contained in:
parent
675b8c7b85
commit
85ccce45b9
2 changed files with 28 additions and 19 deletions
|
|
@ -2,29 +2,11 @@
|
|||
services = {
|
||||
nfs.server = {
|
||||
enable = true;
|
||||
exports = ''
|
||||
${config.services.transmission.settings.download-dir} *.sable-pancake.ts.net(ro,all_squash,anonuid=${toString config.users.users.transmission.uid},anongid=${toString config.users.groups.transmission.gid})
|
||||
'';
|
||||
# NFSv3 uses random ports, so you need to make them static to be able to pass though the firewall
|
||||
statdPort = 4000;
|
||||
lockdPort = 4001;
|
||||
mountdPort = 4002;
|
||||
};
|
||||
|
||||
avahi.extraServiceFiles = {
|
||||
Transmission-downloads-nfs = ''
|
||||
<?xml version="1.0" standalone='no'?>
|
||||
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
|
||||
<service-group>
|
||||
<name replace-wildcards="yes">Transmission Downloads on %h (NFS)</name>
|
||||
<service>
|
||||
<type>_nfs._tcp</type>
|
||||
<port>2049</port>
|
||||
<txt-record>path=${config.services.transmission.settings.download-dir}</txt-record>
|
||||
</service>
|
||||
</service-group>
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,8 @@
|
|||
{config, ...}: {
|
||||
{config, ...}: let
|
||||
transmissionUid = toString config.users.users.transmission.uid;
|
||||
transmissionGid = toString config.users.groups.transmission.gid;
|
||||
mountPoint = config.fileSystems."nfs_transmission".mountPoint;
|
||||
in {
|
||||
services.transmission = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
|
|
@ -10,6 +14,29 @@
|
|||
};
|
||||
};
|
||||
|
||||
# Allow my devices to access the downloads folder though NFS
|
||||
fileSystems."nfs_transmission" = {
|
||||
device = config.services.transmission.settings.download-dir;
|
||||
mountPoint = "/srv/nfs/transmission";
|
||||
options = ["bind"];
|
||||
};
|
||||
services.nfs.server.exports = "${mountPoint} *.sable-pancake.ts.net(ro,all_squash,anonuid=${transmissionUid},anongid=${transmissionGid})";
|
||||
|
||||
services.avahi.extraServiceFiles = {
|
||||
Transmission-downloads-nfs = ''
|
||||
<?xml version="1.0" standalone='no'?>
|
||||
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
|
||||
<service-group>
|
||||
<name replace-wildcards="yes">Transmission Downloads on %h (NFS)</name>
|
||||
<service>
|
||||
<type>_nfs._tcp</type>
|
||||
<port>2049</port>
|
||||
<txt-record>path=${mountPoint}</txt-record>
|
||||
</service>
|
||||
</service-group>
|
||||
'';
|
||||
};
|
||||
|
||||
# Add a cname for transmission
|
||||
services.dnsmasq.settings.cname = ["transmission.everest.sable-pancake.ts.net,everest"];
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue