Transmission: Difference between revisions
imported>Jmarmstrong1207 m Added note of possible deletion for service config |
imported>Jmarmstrong1207 Add installation guide |
||
Line 1: | Line 1: | ||
{{expansion}} | {{expansion}} | ||
== Installation == | |||
Install by adding transmission_4-qt or transmission_4-gtk to your packages list | |||
<syntaxHighlight lang=nix> | |||
environment.systemPackages = with pkgs; [ transmission_4-qt ]; | |||
</syntaxHighlight> | |||
<syntaxHighlight lang=nix> | |||
environment.systemPackages = with pkgs; [ transmission_4-gtk ]; | |||
</syntaxHighlight> | |||
== Service configuration == | == Service configuration == |
Revision as of 08:55, 19 February 2024
Installation
Install by adding transmission_4-qt or transmission_4-gtk to your packages list
environment.systemPackages = with pkgs; [ transmission_4-qt ];
environment.systemPackages = with pkgs; [ transmission_4-gtk ];
Service configuration
Changes to the configuration in the interface will not persist when the application is re-launched. services.transmission.settings
is reset each time the service restarts.
Attribute set whos[e] fields overwrites fields in settings.json (each time the service starts). String values must be quoted, integer and boolean values must not.
<nixpkgs>/nixos/modules/services/torrent/transmission.nix
To persist changes, edit them, look at the [services.transmission.home]/.config/transmission-daemon/settings.json
file generated for the setting keys and their values, and save them to services.transmission.settings
Password-protected RPC
The default method of editing the configuration and restarting the daemon will not work because of the way the configuration is handled. It is however possible to once set it in clear in the settings, and then copy the generated hash to the setting, removing the in-clear copy from the configuration.
Example: allow remote access
To control the daemon remotely, put the following lines in your /etc/nixos/configuration.nix
:
services.transmission = {
enable = true; #Enable transmission daemon
openRPCPort = true; #Open firewall for RPC
settings = { #Override default settings
rpc-bind-address = "0.0.0.0"; #Bind to own IP
rpc-whitelist = "127.0.0.1,10.0.0.1"; #Whitelist your remote machine (10.0.0.1 in this example)
};
};