Add jellyseerr

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-07-16 12:26:27 +01:00
parent e087cdb630
commit 03e53accae
41 changed files with 1968 additions and 824 deletions

View File

@@ -17,6 +17,7 @@
docker-grafana = import ./docker/grafana { inherit pkgs; };
docker-grafana-image-renderer = import ./docker/grafana-image-renderer { inherit pkgs; };
docker-jellyfin = import ./docker/jellyfin { inherit pkgs inputs system; };
docker-jellyseerr = import ./docker/jellyseerr { inherit pkgs; };
docker-mariadb = import ./docker/mariadb { inherit pkgs; };
docker-nextcloud = import ./docker/nextcloud { inherit pkgs; };
docker-ntfy = import ./docker/ntfy { inherit pkgs; };

View File

@@ -67,7 +67,7 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with pkgs; [
entrypoint
jellyfin
jellyfin-web
@@ -78,9 +78,9 @@ pkgs.dockerTools.buildImage {
jellyfin-plugin-sso
jellyfin-plugin-subtitleextract
jellyfin-plugin-tvdb
pkgs.jellyfin-ffmpeg
pkgs.curl
pkgs.jq
jellyfin-ffmpeg
curl
jq
];
pathsToLink = [
"/bin"

View File

@@ -17,11 +17,6 @@ start() {
start "$@"
# shellcheck disable=SC2034
JELLYFIN_HOST="http://localhost:8096"
# shellcheck disable=SC2034
JELLYFIN_ADMIN_USERNAME="${JELLYFIN_ADMIN_USERNAME:-admin}"
if [ -f /etc/jellyfin/setup.sh ]; then
# shellcheck disable=SC1091
. /etc/jellyfin/setup.sh

View File

@@ -0,0 +1,55 @@
{ pkgs, ... }:
let
entrypoint = pkgs.writeTextFile {
name = "entrypoint";
executable = true;
destination = "/bin/entrypoint";
text = builtins.readFile ./entrypoint.sh;
};
# FIXME: https://github.com/fallenbagel/jellyseerr/pull/1505
jellyseerr = pkgs.jellyseerr.overrideAttrs (oldAttrs: rec {
src = pkgs.fetchFromGitHub {
owner = "Fallenbagel";
repo = "jellyseerr";
tag = "preview-OIDC";
hash = "sha256-iBnO0WjNqvXfuJMoS6z/NmYgtW5FQ9Ptp9uV5rODIf8=";
};
pnpmDeps = (pkgs.pnpm_9.override { nodejs = pkgs.nodejs_22; }).fetchDeps {
inherit src;
inherit (oldAttrs) pname version;
hash = "sha256-lq/b2PqQHsZmnw91Ad4h1uxZXsPATSLqIdb/t2EsmMI=";
};
});
in
pkgs.dockerTools.buildImage {
name = "jellyseerr";
fromImage = import ../base { inherit pkgs; };
copyToRoot = pkgs.buildEnv {
name = "root";
paths = with pkgs; [
entrypoint
jellyseerr
curl
jq
];
pathsToLink = [
"/bin"
"/lib"
];
};
config = {
Entrypoint = [ "entrypoint" ];
Env = [ "CONFIG_DIRECTORY=/var/lib/jellyseerr" ];
WorkingDir = "/var/lib/jellyseerr";
Volumes = {
"/var/lib/jellyseerr" = { };
};
ExposedPorts = {
"5055/tcp" = { };
};
};
}

View File

@@ -0,0 +1,11 @@
#!/usr/bin/env sh
set -o errexit
set -o nounset
if [ -f /etc/jellyseerr/pre-start.sh ]; then
# shellcheck disable=SC1091
. /etc/jellyseerr/pre-start.sh
fi
exec jellyseerr "$@"

View File

@@ -136,7 +136,7 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with pkgs; [
apacheHttpd
apacheHttpdConfig
php
@@ -144,8 +144,8 @@ pkgs.dockerTools.buildImage {
occ
entrypoint
crontab
pkgs.cron
pkgs.ffmpeg
cron
ffmpeg
];
pathsToLink = [
"/bin"

View File

@@ -20,9 +20,9 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with selfPkgs; [
entrypoint
selfPkgs.prometheus-fail2ban-exporter
prometheus-fail2ban-exporter
];
pathsToLink = [ "/bin" ];
};

View File

@@ -63,11 +63,11 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with pkgs; [
entrypoint
shlink-web-client
nginxConfig
pkgs.nginx
nginx
];
pathsToLink = [
"/bin"

View File

@@ -55,12 +55,12 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with pkgs; [
entrypoint
shlink
shlink-cli
php
pkgs.roadrunner
roadrunner
];
pathsToLink = [
"/bin"

View File

@@ -18,14 +18,14 @@ pkgs.dockerTools.buildImage {
copyToRoot = pkgs.buildEnv {
name = "root";
paths = [
paths = with pkgs; [
entrypoint
flood-for-transmission
pkgs.transmission_4
pkgs.wireguard-tools
pkgs.libnatpmp
pkgs.curl
pkgs.jq
transmission_4
wireguard-tools
libnatpmp
curl
jq
];
pathsToLink = [
"/bin"

View File

@@ -50,7 +50,7 @@ jq '. + {
}' "$TRANSMISSION_HOME/settings.json" > "$tmpfile"
mv "$tmpfile" "$TRANSMISSION_HOME/settings.json"
if [ -f "$TRANSMISSION_HOME/settings.override".json ]; then
if [ -f "$TRANSMISSION_HOME/settings.override.json" ]; then
tmpfile="$(mktemp)"
jq -s \
'.[0] * .[1]' \