Compare commits
2 Commits
0ff38f405f
...
4e14b6b379
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4e14b6b379 | ||
|
|
338b8be3d9 |
@@ -16,7 +16,10 @@
|
||||
users.users.alex = {
|
||||
isNormalUser = true;
|
||||
description = "alex";
|
||||
extraGroups = [ "wheel" ];
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"storage"
|
||||
];
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
||||
@@ -3,6 +3,33 @@
|
||||
imports = [ inputs.disko.nixosModules.disko ];
|
||||
|
||||
config = {
|
||||
users.groups.storage = { };
|
||||
|
||||
users.users.storage = {
|
||||
isSystemUser = true;
|
||||
description = "storage";
|
||||
group = "storage";
|
||||
};
|
||||
|
||||
systemd.tmpfiles.settings = {
|
||||
"10-media-public" = {
|
||||
"/mnt/media/public" = {
|
||||
d = {
|
||||
# Create directory
|
||||
user = "storage";
|
||||
group = "storage";
|
||||
mode = "2775";
|
||||
};
|
||||
z = {
|
||||
# Ensure permissions are inherited
|
||||
user = "storage";
|
||||
group = "storage";
|
||||
mode = "2775";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
networking.hostId = "0a9474e7"; # Required by ZFS
|
||||
disko.devices = {
|
||||
disk = {
|
||||
|
||||
@@ -12,6 +12,8 @@ in
|
||||
|
||||
ssh.enable = true;
|
||||
git.enable = true;
|
||||
|
||||
transmission.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
48
hosts/manatee/modules/transmission/default.nix
Normal file
48
hosts/manatee/modules/transmission/default.nix
Normal file
@@ -0,0 +1,48 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
let
|
||||
enabled = config.mod.transmission.enable;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
mod.transmission = {
|
||||
enable = lib.mkEnableOption "enable transmission module";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf enabled {
|
||||
services = {
|
||||
transmission = {
|
||||
enable = true;
|
||||
package = pkgs.transmission_4;
|
||||
|
||||
openFirewall = true;
|
||||
|
||||
user = "storage";
|
||||
group = "storage";
|
||||
|
||||
home = "/mnt/media/public/.ts-home";
|
||||
downloadDirPermissions = "775";
|
||||
|
||||
settings = {
|
||||
incomplete-dir-enabled = false;
|
||||
download-dir = "/mnt/media/public/downloads";
|
||||
|
||||
rpc-bind-address = "0.0.0.0";
|
||||
|
||||
# Required to have empty user/pass to satisfy transmissionA
|
||||
# https://github.com/transmission/transmission/discussions/1941#discussioncomment-1472352
|
||||
rpc-whitelist-enabled = false;
|
||||
rpc-authentication-required = true;
|
||||
rpc-username = "";
|
||||
rpc-password = "";
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user