This commit is contained in:
soraefir
2026-05-15 13:51:23 +02:00
parent 03bec133ba
commit a94574a53d
4 changed files with 54 additions and 15 deletions

View File

@@ -4,5 +4,4 @@ RSS: TTRSS / FreshRSS
Monitoring: Telegraf + InfluxDB Monitoring: Telegraf + InfluxDB
https://github.com/tarampampam/error-pages ? https://github.com/tarampampam/error-pages ?
- JellyFin external mkData for config (system.xml)
- Transmission Cfg and API/Token handling - Transmission Cfg and API/Token handling

View File

@@ -2,15 +2,32 @@
let let
serverCfg = config.syscfg.server; serverCfg = config.syscfg.server;
invidiousImage = pkgs.dockerTools.pullImage { patchedInvidious = pkgs.invidious.overrideAttrs (oldAttrs: {
imageName = "quay.io/invidious/invidious"; # If using a standard .patch file:
imageDigest = "sha256:7b5cfca1b369cbb87a6c983a54d588cb375ff60c6d71b3e1f0e2f59265f2a1b9"; # Pin tag digest # patches = (oldAttrs.patches or []) ++ [ ./your-file-replacement.patch ];
sha256 = lib.fakeSha256;
}; postPatch = (oldAttrs.postPatch or "") + ''
companionImage = pkgs.dockerTools.pullImage { cp ${../data/invidious/login.cr} src/invidious/routes/login.cr
imageName = "quay.io/invidious/inv-sig-helper"; '';
imageDigest = "sha256:2d150b07b1406b3a0c25a5f1e8e25d6b46efbb12dbfde6125026bc9812a647ad"; });
sha256 = lib.fakeSha256;
image = pkgs.dockerTools.streamLayeredImage {
name = "invidious-custom";
tag = "1.0.0";
# Include both patched invidious and companion/helper packages
contents = [
patchedInvidious
pkgs.inv-sig-helper # The companion signature helper tool
pkgs.bashInteractive
];
config = {
# Point to your custom invidious binary location
Entrypoint = [ "${patchedInvidious}/bin/invidious" ];
Cmd = [ "--config" "/etc/invidious/config.yml" ];
ExposedPorts = {
"3000/tcp" = {}; # Default Invidious web UI port
};
};
}; };
in { in {
@@ -32,16 +49,39 @@ in {
INVIDIOUS_PORT = "3000"; INVIDIOUS_PORT = "3000";
INVIDIOUS_COMPANION_KEY = "\${INVIDIOUS_KEY}"; INVIDIOUS_COMPANION_KEY = "\${INVIDIOUS_KEY}";
INVIDIOUS_DOMAIN = "${containerCfg.subdomain}.${serverCfg.domain}"; INVIDIOUS_DOMAIN = "${containerCfg.subdomain}.${serverCfg.domain}";
# INVIDIOUS_CONFIG: |
# channel_threads: 1
# check_tables: true
# feed_threads: 1
# hmac_key: 1058f1474503055f8663dd99dbae561b9a5b3f1e
# db:
# dbname: invidious
# user: kemal
# password: xXrmHRHXcZLF2yDhF2ER4LhZ7FDgW5fb
# host: postgres_inv
# port: 5432
# full_refresh: false
# https_only: true
# domain: yt.helcel.net
# external_port: 80
# invidious_companion:
# - private_url: "http://invidious-companion:8282/companion"
# invidious_companion_key: "fee4cai"
# visitor_data: CgtzS3RSVUN
# po_token: MnR6UWTyMu4mYnppjHRmSLk
#registration_enabled: false #registration_enabled: false
}; };
}; };
companion = builder.mkContainer { companion = builder.mkContainer {
imageStream = companionImage; image = "quay.io/invidious/invidious-companion:latest";
port = 12999; port = 8282;
overrides = { # - SERVER_SECRET_KEY=fee4caePhoVohjei
cmd = [ "--tcp" "0.0.0.0:12999" ]; # cap_drop:
}; # - ALL
# security_opt:
# - no-new-privileges:true
}; };
}; };
} }