From 542c6539600b2e9bc365a3502c4f9ba29c13769f Mon Sep 17 00:00:00 2001 From: thespad Date: Tue, 13 Aug 2024 17:29:26 +0100 Subject: [PATCH] Rebase to noble --- .github/workflows/external_trigger.yml | 2 +- Dockerfile | 8 ++++---- Dockerfile.aarch64 | 9 +++++---- Jenkinsfile | 6 +++--- README.md | 5 +++-- jenkins-vars.yml | 6 +++--- readme-vars.yml | 16 +++------------- 7 files changed, 22 insertions(+), 30 deletions(-) diff --git a/.github/workflows/external_trigger.yml b/.github/workflows/external_trigger.yml index 3654ebde5..8ed79c162 100644 --- a/.github/workflows/external_trigger.yml +++ b/.github/workflows/external_trigger.yml @@ -20,7 +20,7 @@ jobs: echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_JELLYFIN_MASTER\". ****" echo "External trigger running off of master branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_JELLYFIN_MASTER\`" >> $GITHUB_STEP_SUMMARY echo "**** Retrieving external version ****" - EXT_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/jammy/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}') + EXT_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/noble/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}') if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then echo "**** Can't retrieve external version, exiting ****" FAILURE_REASON="Can't retrieve external version for jellyfin branch master" diff --git a/Dockerfile b/Dockerfile index 9882fe47f..6f05aa246 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -FROM ghcr.io/linuxserver/baseimage-ubuntu:jammy +FROM ghcr.io/linuxserver/baseimage-ubuntu:noble # set version label ARG BUILD_DATE @@ -16,9 +16,9 @@ ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility" RUN \ echo "**** install jellyfin *****" && \ curl -s https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | gpg --dearmor | tee /usr/share/keyrings/jellyfin.gpg >/dev/null && \ - echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu jammy main' > /etc/apt/sources.list.d/jellyfin.list && \ + echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble main' > /etc/apt/sources.list.d/jellyfin.list && \ if [ -z ${JELLYFIN_RELEASE+x} ]; then \ - JELLYFIN_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/jammy/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'); \ + JELLYFIN_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/noble/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'); \ fi && \ apt-get update && \ apt-get install -y --no-install-recommends \ @@ -33,7 +33,7 @@ RUN \ /var/tmp/* # add local files -COPY root/ / +COPY root/ / # ports and volumes EXPOSE 8096 8920 diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 01b923a74..279b0f4d8 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-jammy +FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-noble # set version label ARG BUILD_DATE @@ -16,9 +16,9 @@ ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility" RUN \ echo "**** install jellyfin *****" && \ curl -s https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | gpg --dearmor | tee /usr/share/keyrings/jellyfin.gpg >/dev/null && \ - echo 'deb [arch=arm64 signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu jammy main' > /etc/apt/sources.list.d/jellyfin.list && \ + echo 'deb [arch=arm64 signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble main' > /etc/apt/sources.list.d/jellyfin.list && \ if [ -z ${JELLYFIN_RELEASE+x} ]; then \ - JELLYFIN_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/jammy/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'); \ + JELLYFIN_RELEASE=$(curl -sX GET https://repo.jellyfin.org/ubuntu/dists/noble/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'); \ fi && \ apt-get update && \ apt-get install -y --no-install-recommends \ @@ -28,6 +28,7 @@ RUN \ libomxil-bellagio-bin \ libraspberrypi0 \ xmlstarlet && \ + printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \ echo "**** cleanup ****" && \ rm -rf \ /tmp/* \ @@ -35,7 +36,7 @@ RUN \ /var/tmp/* # add local files -COPY root/ / +COPY root/ / # ports and volumes EXPOSE 8096 8920 diff --git a/Jenkinsfile b/Jenkinsfile index 7eef2de18..362182bec 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -31,8 +31,8 @@ pipeline { CI_PORT='8096' CI_SSL='false' CI_DELAY='120' - CI_DOCKERENV='TZ=US/Pacific' - CI_AUTH='user:password' + CI_DOCKERENV='' + CI_AUTH='' CI_WEBPATH='' } stages { @@ -115,7 +115,7 @@ pipeline { steps{ script{ env.EXT_RELEASE = sh( - script: ''' curl -sX GET https://repo.jellyfin.org/ubuntu/dists/jammy/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}' ''', + script: ''' curl -sX GET https://repo.jellyfin.org/ubuntu/dists/noble/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}' ''', returnStdout: true).trim() env.RELEASE_LINK = 'custom_command' } diff --git a/README.md b/README.md index 5079c09be..ded50361a 100644 --- a/README.md +++ b/README.md @@ -146,7 +146,7 @@ services: - TZ=Etc/UTC - JELLYFIN_PublishedServerUrl=192.168.0.5 #optional volumes: - - /path/to/library:/config + - /path/to/jellyfin/library:/config - /path/to/tvseries:/data/tvshows - /path/to/movies:/data/movies ports: @@ -170,7 +170,7 @@ docker run -d \ -p 8920:8920 `#optional` \ -p 7359:7359/udp `#optional` \ -p 1900:1900/udp `#optional` \ - -v /path/to/library:/config \ + -v /path/to/jellyfin/library:/config \ -v /path/to/tvseries:/data/tvshows \ -v /path/to/movies:/data/movies \ --restart unless-stopped \ @@ -371,6 +371,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **13.08.24:** - Rebase to Ubuntu Noble. * **01.05.24:** - Increase verbosity of device permissions fixing. * **12.02.24:** - Use universal hardware acceleration blurb. * **12.09.23:** - Take ownership of plugin directories. diff --git a/jenkins-vars.yml b/jenkins-vars.yml index 154074269..e407127db 100644 --- a/jenkins-vars.yml +++ b/jenkins-vars.yml @@ -3,7 +3,7 @@ # jenkins variables project_name: docker-jellyfin external_type: na -custom_version_command: "curl -sX GET https://repo.jellyfin.org/ubuntu/dists/jammy/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'" +custom_version_command: "curl -sX GET https://repo.jellyfin.org/ubuntu/dists/noble/main/binary-amd64/Packages |grep -A 7 -m 1 'Package: jellyfin-server' | awk -F ': ' '/Version/{print $2;exit}'" release_type: stable release_tag: latest ls_branch: master @@ -22,8 +22,8 @@ repo_vars: - CI_PORT='8096' - CI_SSL='false' - CI_DELAY='120' - - CI_DOCKERENV='TZ=US/Pacific' - - CI_AUTH='user:password' + - CI_DOCKERENV='' + - CI_AUTH='' - CI_WEBPATH='' sponsor_links: - { name: "Jellyfin", url: "https://opencollective.com/jellyfin" } diff --git a/readme-vars.yml b/readme-vars.yml index 47025c6f2..f121ef971 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -3,7 +3,7 @@ # project information project_name: jellyfin project_url: "https://github.com/jellyfin/jellyfin" -project_logo: "https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/banner-logo-solid.svg?sanitize=true" +project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jellyfin-logo.png" project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_name }}" project_blurb: "[{{ project_name|capitalize }}]({{ project_url }}) is a Free Software Media System that puts you in control of managing and streaming your media. It is an alternative to the proprietary Emby and Plex, to provide media from a dedicated server to end-user devices via multiple apps. Jellyfin is descended from Emby's 3.5.2 release and ported to the .NET Core framework to enable full cross-platform support. There are no strings attached, no premium licenses or features, and no hidden agendas: just a team who want to build something better and work together to achieve it." # supported architectures @@ -20,7 +20,7 @@ common_param_env_vars_enabled: true #PGID, PUID, etc param_container_name: "{{ project_name }}" param_usage_include_vols: true param_volumes: - - {vol_path: "/config", vol_host_path: "/path/to/library", desc: "Jellyfin data storage location. *This can grow very large, 50gb+ is likely for a large collection.*"} + - {vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/library", desc: "Jellyfin data storage location. *This can grow very large, 50gb+ is likely for a large collection.*"} - {vol_path: "/data/tvshows", vol_host_path: "/path/to/tvseries", desc: "Media goes here. Add as many as needed e.g. `/data/movies`, `/data/tv`, etc."} - {vol_path: "/data/movies", vol_host_path: "/path/to/movies", desc: "Media goes here. Add as many as needed e.g. `/data/movies`, `/data/tv`, etc."} param_usage_include_ports: true @@ -31,17 +31,6 @@ param_usage_include_env: true opt_param_usage_include_env: true opt_param_env_vars: - {env_var: "JELLYFIN_PublishedServerUrl", env_value: "192.168.0.5", desc: "Set the autodiscovery response domain or IP address."} -opt_param_usage_include_vols: false -opt_param_volumes: - - {vol_path: "/opt/vc/lib", vol_host_path: "/opt/vc/lib", desc: "Path for Raspberry Pi OpenMAX libs *optional*."} -opt_param_device_map: false -opt_param_devices: - - {device_path: "/dev/dri", device_host_path: "/dev/dri", desc: "Only needed if you want to use your Intel GPU for hardware accelerated video encoding (vaapi)."} - - {device_path: "/dev/vcsm", device_host_path: "/dev/vcsm", desc: "Only needed if you want to use your Raspberry Pi MMAL video decoding (Enabled as OpenMax H264 decode in gui settings)."} - - {device_path: "/dev/vchiq", device_host_path: "/dev/vchiq", desc: "Only needed if you want to use your Raspberry Pi OpenMax video encoding."} - - {device_path: "/dev/video10", device_host_path: "/dev/video10", desc: "Only needed if you want to use your Raspberry Pi V4L2 video encoding."} - - {device_path: "/dev/video11", device_host_path: "/dev/video11", desc: "Only needed if you want to use your Raspberry Pi V4L2 video encoding."} - - {device_path: "/dev/video12", device_host_path: "/dev/video12", desc: "Only needed if you want to use your Raspberry Pi V4L2 video encoding."} opt_param_usage_include_ports: true opt_param_ports: - {external_port: "8920", internal_port: "8920", port_desc: "Optional - Https webUI (you need to set up your own certificate)."} @@ -102,6 +91,7 @@ readme_hwaccel: true unraid_template_sync: false # changelog changelogs: + - {date: "13.08.24:", desc: "Rebase to Ubuntu Noble."} - {date: "01.05.24:", desc: "Increase verbosity of device permissions fixing."} - {date: "12.02.24:", desc: "Use universal hardware acceleration blurb."} - {date: "12.09.23:", desc: "Take ownership of plugin directories."}