Refactor
This commit is contained in:
@@ -2,55 +2,47 @@
|
||||
let
|
||||
serverCfg = config.syscfg.server;
|
||||
version = "latest";
|
||||
|
||||
routerName = if containerCfg.subpath != null
|
||||
then "${containerCfg.subdomain}-${lib.strings.sanitizeDerivationName containerCfg.subpath}"
|
||||
else containerCfg.subdomain;
|
||||
in {
|
||||
|
||||
paths = [{
|
||||
path = "${serverCfg.path.config}/handbrake";
|
||||
mode = "0755";
|
||||
}];
|
||||
runtime = {
|
||||
paths = [{
|
||||
path = "${serverCfg.path.config}/handbrake";
|
||||
mode = "0755";
|
||||
}];
|
||||
|
||||
containers = {
|
||||
server = builder.mkContainer {
|
||||
subdomain = containerCfg.subdomain;
|
||||
subpath = containerCfg.subpath;
|
||||
image = "ghcr.io/jlesage/handbrake:${version}";
|
||||
port = 5800;
|
||||
|
||||
extraEnv = {
|
||||
USER_ID = "1000";
|
||||
GROUP_ID = "1000";
|
||||
AUTOMATED_CONVERSION_PRESET = "Custom/AV1 MKV 1080p30";
|
||||
AUTOMATED_CONVERSION_FORMAT = "mkv";
|
||||
AUTOMATED_CONVERSION_OUTPUT_SUBDIR = "SAME_AS_SRC";
|
||||
containers = {
|
||||
server = builder.mkContainer {
|
||||
authentik = true;
|
||||
tmpfs = true;
|
||||
subdomain = containerCfg.subdomain;
|
||||
subpath = containerCfg.subpath;
|
||||
image = "ghcr.io/jlesage/handbrake:${version}";
|
||||
port = 5800;
|
||||
|
||||
extraEnv = {
|
||||
USER_ID = "1000";
|
||||
GROUP_ID = "1000";
|
||||
AUTOMATED_CONVERSION_PRESET = "Custom/AV1 MKV 1080p30";
|
||||
AUTOMATED_CONVERSION_FORMAT = "mkv";
|
||||
AUTOMATED_CONVERSION_OUTPUT_SUBDIR = "SAME_AS_SRC";
|
||||
};
|
||||
|
||||
overrides = {
|
||||
volumes = [
|
||||
"${serverCfg.path.config}/handbrake:/config:rw"
|
||||
"${serverCfg.path.dlComplete}:/watch:rw"
|
||||
"${serverCfg.path.dlConverted}:/output:rw"
|
||||
];
|
||||
};
|
||||
};
|
||||
extraLabels = { } // (if serverCfg.containers ? authentik then {
|
||||
"traefik.http.routers.${routerName}.middlewares" = "authentik";
|
||||
} else {});
|
||||
extraOptions = [
|
||||
"--tmpfs=/tmp:rw,noexec,nosuid,size=512m"
|
||||
];
|
||||
|
||||
overrides = {
|
||||
volumes = [
|
||||
"${serverCfg.path.config}/handbrake:/config:rw"
|
||||
"${serverCfg.path.dlComplete}:/watch:rw"
|
||||
"${serverCfg.path.dlConverted}:/output:rw"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
setup = {
|
||||
trigger = "server";
|
||||
script = pkgs.writeShellScript "setup" ''
|
||||
mkdir -p ${serverCfg.path.data}/handbrake/{watch,output}
|
||||
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
setup = {
|
||||
trigger = "server";
|
||||
script = pkgs.writeShellScript "setup" ''
|
||||
mkdir -p ${serverCfg.path.data}/handbrake/{watch,output}
|
||||
|
||||
'';
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user