feat(etna): add slskd

This commit is contained in:
uku 2025-02-13 10:24:20 +01:00
parent 656f61d5e3
commit 7cc7cea063
Signed by: uku
SSH key fingerprint: SHA256:4P0aN6M8ajKukNi6aPOaX0LacanGYtlfjmN+m/sHY/o
4 changed files with 55 additions and 0 deletions

17
secrets/etna/slskdEnv.age Normal file
View file

@ -0,0 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsRVAvdHJDY3NKT0lxRG1E
YjBvZ2FYQnhOc01kMzY4bWVsUTJmSzhwZzFnCjJrbldHRkRHZnVrNDFoMUhsc2hY
dEF2NWV2QVRWOEdNY2NlK3gvRGNqRUkKLT4gWDI1NTE5IFlkUmo4KzhVdlhONmgy
NCtXeitTVXZVMDI3WFAyaUNHYXR5RjZrbzhjaGsKdXBmbmsrUXNkRmFtcFZaN1pB
VnZ5OEJjbEh2cGFoMEdwVEVCWEFUOEVOZwotPiBYMjU1MTkgdkYvbDRHNE1SUXBq
YXFGVDZjejB6Y1F4SExDUFJzRkR4cEFNdCt3Y3lUcwordmgybElsQ2YzdDF6N2xK
S2FMdzNjQStodkozQUJ0bklVcW53M3lXYWp3Ci0+IFgyNTUxOSByLy9ybUdYRUcr
QWxoTWZiQUlCNXRaZ3MxVkd1dXlYU05Gblo0aFQ0eERBCkp2Z2V0cmtVOXg4SEY3
djArSnFmRXoxd0xleGlERjh2bUtPcnMyQ3JwTWcKLS0tIGRCRENMaExLKzJncXVj
cVNOem9ZR01JbXpDUlhmVURkQ1ZYemRWM1JxSVEKvV3s8oMZwia3LLY/3qVpu8I9
2sBQulbpNoc3gY6g2DDGjlba+8JfMRP1Nxza1NONhQ8DRfk3g/DePI18G5S9xZyT
OfeeKNLl1YqTAjJLJ/lQVPqDd1B903LHD07SdaCLxMz58IzbSb5hocUg+bUCqHmF
m5UDV+oOHy6bnV/XSl5Nnz0cmaqOhOyYVhf5YqQUMzlFA0mGcUvgy7+c/ca3bZum
g8shOz9ABA6Xb71DH19MR8IH7IM8IIk4vmVwgNpzk3C2btf+XBqy8/4PoU1kPSye
vnjG
-----END AGE ENCRYPTED FILE-----

View file

@ -42,6 +42,7 @@ in
"etna/vmauthEnv.age".publicKeys = main ++ [ etna ];
"etna/upsdUserPass.age".publicKeys = main ++ [ etna ];
"etna/cobaltTokens.age".publicKeys = main ++ [ etna ];
"etna/slskdEnv.age".publicKeys = main ++ [ etna ];
"vesuvio/gatusEnv.age".publicKeys = main ++ [ vesuvio ];
"vesuvio/maddyEnv.age".publicKeys = main ++ [ vesuvio ];

View file

@ -42,6 +42,7 @@ in
./reposilite.nix
./satisfactory.nix
./shlink.nix
./slskd.nix
./uku.nix
./ups.nix
./vaultwarden.nix

36
systems/etna/slskd.nix Normal file
View file

@ -0,0 +1,36 @@
{ config, _utils, ... }:
let
envFile = _utils.setupSingleSecret config "slskdEnv" { };
in
{
imports = [ envFile.generate ];
cfTunnels."slsk.uku.moe" = "http://localhost:5030";
services.slskd = {
enable = true;
domain = "slsk.uku.moe";
environmentFile = envFile.path;
openFirewall = true;
settings = {
instance_name = "etna";
shares = {
directories = [ "/data/music" ];
filters = [
"\.ini$"
"\.fish$"
];
cache = {
storage_mode = "memory";
retention = 10080; # 1 week
};
};
global.upload = {
slots = 20;
speed_limit = 10240; # 10 MiB
};
};
};
}