From 2a371c441907ffad5dfa1ce93527703f9fcd84f1 Mon Sep 17 00:00:00 2001 From: Kieran Date: Fri, 26 Sep 2025 16:04:22 -0700 Subject: [PATCH 1/4] [Dev] Add Deno to Dockerfiles (#801) * Added Deno to Dockerfiles * Updated yt-dlp source * Added unzip * Update deno directory * The ACTUAL deno install path this time. Christ, am I new here? * Linting --- docker/dev.Dockerfile | 6 ++++-- docker/selfhosted.Dockerfile | 6 +++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/docker/dev.Dockerfile b/docker/dev.Dockerfile index adf30df..8ceadee 100644 --- a/docker/dev.Dockerfile +++ b/docker/dev.Dockerfile @@ -13,7 +13,7 @@ RUN echo "Building for ${TARGETPLATFORM:?}" RUN apt-get update -qq && \ apt-get install -y inotify-tools curl git openssh-client jq \ python3 python3-setuptools python3-wheel python3-dev pipx \ - python3-mutagen locales procps build-essential graphviz zsh + python3-mutagen locales procps build-essential graphviz zsh unzip # Install ffmpeg RUN export FFMPEG_DOWNLOAD=$(case ${TARGETPLATFORM:-linux/amd64} in \ @@ -32,8 +32,10 @@ RUN curl -sL https://deb.nodesource.com/setup_20.x -o nodesource_setup.sh && \ # Install baseline Elixir packages mix local.hex --force && \ mix local.rebar --force && \ + # Install Deno - required for YouTube downloads (See yt-dlp#14404) + curl -fsSL https://deno.land/install.sh | DENO_INSTALL=/usr/local sh -s -- -y --no-modify-path && \ # Download and update YT-DLP - curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && \ + curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -o /usr/local/bin/yt-dlp && \ chmod a+rx /usr/local/bin/yt-dlp && \ yt-dlp -U && \ # Install Apprise diff --git a/docker/selfhosted.Dockerfile b/docker/selfhosted.Dockerfile index 82af31f..0bbc0d0 100644 --- a/docker/selfhosted.Dockerfile +++ b/docker/selfhosted.Dockerfile @@ -94,13 +94,17 @@ RUN apt-get update -y && \ python3 \ pipx \ jq \ + # unzip is needed for Deno + unzip \ procps && \ + # Install Deno - required for YouTube downloads (See yt-dlp#14404) + curl -fsSL https://deno.land/install.sh | DENO_INSTALL=/usr/local sh -s -- -y --no-modify-path && \ # Apprise export PIPX_HOME=/opt/pipx && \ export PIPX_BIN_DIR=/usr/local/bin && \ pipx install apprise && \ # yt-dlp - curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && \ + curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -o /usr/local/bin/yt-dlp && \ chmod a+rx /usr/local/bin/yt-dlp && \ yt-dlp -U && \ # Set the locale From 4f8cba3f9c0edc567687c6a007aaa80b311c6899 Mon Sep 17 00:00:00 2001 From: Kieran Eglin Date: Fri, 26 Sep 2025 16:04:56 -0700 Subject: [PATCH 2/4] Bumped version --- mix.exs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mix.exs b/mix.exs index 70dc39f..27e5f85 100644 --- a/mix.exs +++ b/mix.exs @@ -4,7 +4,7 @@ defmodule Pinchflat.MixProject do def project do [ app: :pinchflat, - version: "2025.6.6", + version: "2025.9.26", elixir: "~> 1.17", elixirc_paths: elixirc_paths(Mix.env()), elixirc_options: [warnings_as_errors: System.get_env("EX_CHECK") == "1"], From 0688e880f55e77cda6e47ee7d62face006075281 Mon Sep 17 00:00:00 2001 From: Kieran Eglin Date: Sat, 27 Sep 2025 10:20:33 -0700 Subject: [PATCH 3/4] Added yt=dlp for arm64 --- docker/dev.Dockerfile | 6 +++++- docker/selfhosted.Dockerfile | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/docker/dev.Dockerfile b/docker/dev.Dockerfile index 8ceadee..04a3e13 100644 --- a/docker/dev.Dockerfile +++ b/docker/dev.Dockerfile @@ -35,7 +35,11 @@ RUN curl -sL https://deb.nodesource.com/setup_20.x -o nodesource_setup.sh && \ # Install Deno - required for YouTube downloads (See yt-dlp#14404) curl -fsSL https://deno.land/install.sh | DENO_INSTALL=/usr/local sh -s -- -y --no-modify-path && \ # Download and update YT-DLP - curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -o /usr/local/bin/yt-dlp && \ + export YT_DLP_DOWNLOAD=$(case ${TARGETPLATFORM:-linux/amd64} in \ + "linux/amd64") echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" ;; \ + "linux/arm64") echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux_aarch64" ;; \ + *) echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" ;; esac) && \ + curl -L ${YT_DLP_DOWNLOAD} -o /usr/local/bin/yt-dlp && \ chmod a+rx /usr/local/bin/yt-dlp && \ yt-dlp -U && \ # Install Apprise diff --git a/docker/selfhosted.Dockerfile b/docker/selfhosted.Dockerfile index 0bbc0d0..ed0bb0b 100644 --- a/docker/selfhosted.Dockerfile +++ b/docker/selfhosted.Dockerfile @@ -104,7 +104,11 @@ RUN apt-get update -y && \ export PIPX_BIN_DIR=/usr/local/bin && \ pipx install apprise && \ # yt-dlp - curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -o /usr/local/bin/yt-dlp && \ + export YT_DLP_DOWNLOAD=$(case ${TARGETPLATFORM:-linux/amd64} in \ + "linux/amd64") echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" ;; \ + "linux/arm64") echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux_aarch64" ;; \ + *) echo "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux" ;; esac) && \ + curl -L ${YT_DLP_DOWNLOAD} -o /usr/local/bin/yt-dlp && \ chmod a+rx /usr/local/bin/yt-dlp && \ yt-dlp -U && \ # Set the locale From 163e8eb8ccef84c3f71f274634a61820562f34be Mon Sep 17 00:00:00 2001 From: Googleplex Date: Sun, 28 Sep 2025 12:31:17 +0800 Subject: [PATCH 4/4] Update selfhosted.Dockerfile (#802) --- docker/selfhosted.Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/docker/selfhosted.Dockerfile b/docker/selfhosted.Dockerfile index ed0bb0b..17f7af7 100644 --- a/docker/selfhosted.Dockerfile +++ b/docker/selfhosted.Dockerfile @@ -73,6 +73,7 @@ RUN mix release FROM ${RUNNER_IMAGE} +ARG TARGETPLATFORM ARG PORT=8945 COPY --from=builder ./usr/local/bin/ffmpeg /usr/bin/ffmpeg