Compare commits

...
Author SHA1 Message Date
LinuxServer-CI 9381467462 Bot Updating Package Versions 2026-03-16 16:45:56 +00:00
LinuxServer-CI b0dd1ee5cb Bot Updating Package Versions 2026-03-14 16:02:23 +00:00
AdamandGitHub 4f63ccf6a6 Merge pull request #30 from nbarrientos/main 2026-03-11 13:16:20 +00:00
Nacho Barrientos 932f09c065 Remove deprecated option --autoreload-config
Deprecated since 3.19.0. See:

https://github.com/Flexget/Flexget/pull/4899
https://flexget.com/ChangeLog#h-3190-2026-03-05
2026-03-11 11:11:23 +01:00
LinuxServer-CI 9d4e452aca Bot Updating Package Versions 2026-03-09 16:47:16 +00:00
LinuxServer-CI 538c6e99e9 Bot Updating Package Versions 2026-03-05 17:57:22 +00:00
LinuxServer-CI c1165f3ac3 Bot Updating Package Versions 2026-03-04 16:27:14 +00:00
LinuxServer-CI cce280d3ee Bot Updating Package Versions 2026-03-02 16:27:12 +00:00
LinuxServer-CI 9c1cd8a5b5 Bot Updating Package Versions 2026-02-25 16:50:54 +00:00
LinuxServer-CI 644e72d1f3 Bot Updating Package Versions 2026-02-24 16:50:06 +00:00
LinuxServer-CI a1b355399e Bot Updating Package Versions 2026-02-23 16:39:58 +00:00
LinuxServer-CI caf1cb4293 Bot Updating Package Versions 2026-02-22 16:00:51 +00:00
LinuxServer-CI 40e3676a18 Bot Updating Package Versions 2026-02-16 16:29:10 +00:00
LinuxServer-CI 677242f24a Bot Updating Package Versions 2026-02-14 16:01:13 +00:00
LinuxServer-CI 43fd2f5aad Bot Updating Package Versions 2026-02-12 16:42:29 +00:00
LinuxServer-CI b5a2608b3c Bot Updating Package Versions 2026-02-11 16:49:29 +00:00
LinuxServer-CI e9a3f1b9ad Bot Updating Templated Files 2026-02-11 16:45:22 +00:00
LinuxServer-CI 6163e88586 Bot Updating Templated Files 2026-02-11 16:43:17 +00:00
LinuxServer-CI d2fba4a247 Bot Updating Package Versions 2026-02-09 17:38:45 +00:00
LinuxServer-CI 52a4d5df27 Bot Updating Package Versions 2026-02-05 19:44:04 +00:00
LinuxServer-CI 4b001c403a Bot Updating Package Versions 2026-02-02 16:08:13 +00:00
LinuxServer-CI c05e987fdc Bot Updating Package Versions 2026-01-30 16:08:05 +00:00
LinuxServer-CI 959469f776 Bot Updating Package Versions 2026-01-27 16:01:47 +00:00
LinuxServer-CI 574fd90b47 Bot Updating Package Versions 2026-01-26 16:02:57 +00:00
LinuxServer-CI 177b0f7e86 Bot Updating Package Versions 2026-01-19 15:59:51 +00:00
LinuxServer-CI 457d93ba66 Bot Updating Package Versions 2026-01-16 15:58:29 +00:00
LinuxServer-CI 584bd9d56c Bot Updating Package Versions 2026-01-12 16:01:38 +00:00
LinuxServer-CI dad9ec6d21 Bot Updating Package Versions 2026-01-10 15:53:40 +00:00
LinuxServer-CI 97360ef73e Bot Updating Package Versions 2026-01-05 15:58:57 +00:00
LinuxServer-CI ff309f320d Bot Updating Package Versions 2025-12-29 15:56:28 +00:00
LinuxServer-CI 57a12c039d Bot Updating Package Versions 2025-12-22 15:55:21 +00:00
LinuxServer-CI 0e4677c903 Bot Updating Package Versions 2025-12-15 16:00:05 +00:00
LinuxServer-CI 6611d05ada Bot Updating Package Versions 2025-12-10 15:56:51 +00:00
LinuxServer-CI 10e43e188e Bot Updating Package Versions 2025-12-08 15:54:43 +00:00
LinuxServer-CI eb62fca596 Bot Updating Package Versions 2025-12-04 15:57:01 +00:00
LinuxServer-CI 975086ada6 Bot Updating Package Versions 2025-12-01 15:56:04 +00:00
LinuxServer-CI 508394ae55 Bot Updating Package Versions 2025-11-25 15:56:31 +00:00
LinuxServer-CI 2aca825005 Bot Updating Package Versions 2025-11-24 15:56:12 +00:00
LinuxServer-CI 1f1109d8b0 Bot Updating Package Versions 2025-11-23 15:59:36 +00:00
LinuxServer-CI 0095bef01c Bot Updating Templated Files 2025-11-20 19:23:38 +00:00
LinuxServer-CI fe8d2f3558 Bot Updating Package Versions 2025-11-17 15:56:07 +00:00
LinuxServer-CI 1692f79634 Bot Updating Package Versions 2025-11-14 14:18:54 +00:00
LinuxServer-CI d656d4a913 Bot Updating Templated Files 2025-11-14 14:14:46 +00:00
AdamandGitHub 6e57548c1f Merge pull request #29 from linuxserver/3.22 2025-11-14 14:12:59 +00:00
LinuxServer-CI bbb8f05ecb Bot Updating Package Versions 2025-11-13 15:54:43 +00:00
LinuxServer-CI d164441da0 Bot Updating Package Versions 2025-11-12 17:00:37 +00:00
thespad 3fb390f265 Bump boost 2025-11-11 21:33:08 +00:00
thespad 7df62faf3c Rebase to 3.22 2025-11-10 22:18:32 +00:00
LinuxServer-CI 743257a224 Bot Updating Package Versions 2025-10-27 15:53:55 +00:00
LinuxServer-CI 481fc23341 Bot Updating Package Versions 2025-10-26 15:53:11 +00:00
LinuxServer-CI 0b2baa9fc3 Bot Updating Package Versions 2025-10-23 15:54:08 +00:00
LinuxServer-CI cc8f7b6614 Bot Updating Package Versions 2025-10-22 15:55:19 +00:00
LinuxServer-CI a4aaf57c74 Bot Updating Templated Files 2025-10-22 15:51:09 +00:00
LinuxServer-CI 9893bb6407 Bot Updating Package Versions 2025-10-17 17:14:18 +00:00
aptalcaandGitHub 6475e3e423 Merge pull request #28 from linuxserver/pip
add pip
2025-10-17 13:10:05 -04:00
aptalca 213eb70a3b add pip 2025-10-17 12:49:52 -04:00
LinuxServer-CI 3b5210595d Bot Updating Package Versions 2025-10-14 15:54:25 +00:00
LinuxServer-CI f69e003444 Bot Updating Package Versions 2025-10-13 15:53:37 +00:00
LinuxServer-CI ce563eb6d1 Bot Updating Package Versions 2025-10-06 15:53:42 +00:00
LinuxServer-CI eb41328719 Bot Updating Package Versions 2025-10-02 15:55:01 +00:00
LinuxServer-CI 804154e9ff Bot Updating Package Versions 2025-09-29 15:53:34 +00:00
LinuxServer-CI 1dc631fb06 Bot Updating Package Versions 2025-09-26 15:53:53 +00:00
LinuxServer-CI cb13049727 Bot Updating Package Versions 2025-09-22 15:54:30 +00:00
LinuxServer-CI b6313939d7 Bot Updating Package Versions 2025-09-18 15:55:34 +00:00
LinuxServer-CI f4eb945573 Bot Updating Package Versions 2025-09-15 16:14:31 +00:00
LinuxServer-CI 1e6f9e6499 Bot Updating Package Versions 2025-09-11 15:53:15 +00:00
LinuxServer-CI 173c7ea35d Bot Updating Package Versions 2025-09-08 15:55:09 +00:00
LinuxServer-CI 7d491935d8 Bot Updating Package Versions 2025-09-05 15:59:31 +00:00
LinuxServer-CI 4daa3ffa2c Bot Updating Package Versions 2025-09-03 15:53:47 +00:00
LinuxServer-CI 814b85199c Bot Updating Package Versions 2025-09-02 15:53:42 +00:00
LinuxServer-CI cf08cdd238 Bot Updating Package Versions 2025-09-01 15:54:11 +00:00
LinuxServer-CI 263ff2bf60 Bot Updating Package Versions 2025-08-29 15:53:19 +00:00
LinuxServer-CI 6a35ea4b9c Bot Updating Package Versions 2025-08-27 15:53:27 +00:00
LinuxServer-CI bf6288a533 Bot Updating Package Versions 2025-08-25 15:55:02 +00:00
LinuxServer-CI 1b55256f14 Bot Updating Package Versions 2025-08-24 15:53:43 +00:00
LinuxServer-CI 46564c4c24 Bot Updating Package Versions 2025-08-23 15:53:37 +00:00
LinuxServer-CI b73f5990cc Bot Updating Package Versions 2025-08-22 15:53:09 +00:00
LinuxServer-CI 6f3e0e406b Bot Updating Package Versions 2025-08-19 15:55:13 +00:00
LinuxServer-CI 66283cc09c Bot Updating Package Versions 2025-08-18 15:56:31 +00:00
LinuxServer-CI 02f03c1928 Bot Updating Package Versions 2025-08-15 15:54:52 +00:00
LinuxServer-CI 231d0ed7a8 Bot Updating Package Versions 2025-08-13 15:54:02 +00:00
LinuxServer-CI 95cb1f3406 Bot Updating Package Versions 2025-08-12 15:56:14 +00:00
LinuxServer-CI 5fc7831629 Bot Updating Package Versions 2025-08-11 15:57:00 +00:00
LinuxServer-CI b71e593c8e Bot Updating Package Versions 2025-08-09 15:53:35 +00:00
LinuxServer-CI ff3c210f7a Bot Updating Package Versions 2025-08-08 15:59:00 +00:00
LinuxServer-CI b4ee744268 Bot Updating Package Versions 2025-08-07 15:57:08 +00:00
LinuxServer-CI 3446bafc4d Bot Updating Package Versions 2025-08-04 16:00:13 +00:00
LinuxServer-CI f1e3b981cb Bot Updating Package Versions 2025-08-02 15:54:34 +00:00
LinuxServer-CI 308f406da9 Bot Updating Package Versions 2025-08-01 15:57:45 +00:00
LinuxServer-CI b764aed863 Bot Updating Package Versions 2025-07-28 16:01:35 +00:00
LinuxServer-CI 59abf71ebf Bot Updating Package Versions 2025-07-24 15:57:09 +00:00
LinuxServer-CI 529e8bdc4a Bot Updating Package Versions 2025-07-21 15:57:48 +00:00
LinuxServer-CI 0efe522110 Bot Updating Package Versions 2025-07-14 15:56:55 +00:00
LinuxServer-CI dbbfc2aec0 Bot Updating Package Versions 2025-07-10 15:57:22 +00:00
LinuxServer-CI 9b2c487e9f Bot Updating Templated Files 2025-07-03 19:24:53 +00:00
LinuxServer-CI 72770532a8 Bot Updating Templated Files 2025-07-03 19:23:04 +00:00
LinuxServer-CI 81d993f10f Bot Updating Package Versions 2025-07-01 15:55:03 +00:00
LinuxServer-CI 94afdab4fb Bot Updating Package Versions 2025-06-30 15:55:21 +00:00
LinuxServer-CI 52fcc4a80f Bot Updating Package Versions 2025-06-29 15:53:07 +00:00
LinuxServer-CI a63a3f3f4b Bot Updating Package Versions 2025-06-24 15:56:04 +00:00
LinuxServer-CI 3f6a358902 Bot Updating Package Versions 2025-06-23 15:56:32 +00:00
LinuxServer-CI 7c105be64f Bot Updating Package Versions 2025-06-21 15:52:37 +00:00
LinuxServer-CI b6fbe91fb8 Bot Updating Package Versions 2025-06-16 15:56:20 +00:00
LinuxServer-CI ce62c3366b Bot Updating Package Versions 2025-06-10 15:56:15 +00:00
LinuxServer-CI 459800466a Bot Updating Templated Files 2025-06-10 15:52:27 +00:00
LinuxServer-CI eed4a02b32 Bot Updating Package Versions 2025-06-09 15:56:43 +00:00
LinuxServer-CI 62a1970bc1 Bot Updating Package Versions 2025-05-28 15:54:32 +00:00
LinuxServer-CI 60da318292 Bot Updating Package Versions 2025-05-26 15:55:10 +00:00
LinuxServer-CI e098db1281 Bot Updating Package Versions 2025-05-24 15:55:30 +00:00
LinuxServer-CI 509038ed80 Bot Updating Package Versions 2025-05-22 19:26:47 +00:00
LinuxServer-CI 5367c99d28 Bot Updating Package Versions 2025-05-18 15:58:40 +00:00
LinuxServer-CI 0b85d6f03c Bot Updating Templated Files 2025-05-18 15:52:16 +00:00
LinuxServer-CI f1d474f522 Bot Updating Package Versions 2025-05-13 22:53:04 +00:00
LinuxServer-CI b7eaad01be Bot Updating Package Versions 2025-05-12 15:54:46 +00:00
LinuxServer-CI c43924b5b0 Bot Updating Package Versions 2025-05-08 15:55:28 +00:00
LinuxServer-CI 0b49e8157f Bot Updating Package Versions 2025-05-05 15:52:55 +00:00
LinuxServer-CI 35712113f0 Bot Updating Package Versions 2025-05-02 15:54:47 +00:00
LinuxServer-CI 15fd65ca85 Bot Updating Package Versions 2025-04-23 15:54:36 +00:00
LinuxServer-CI 567f4ffb5b Bot Updating Package Versions 2025-04-17 15:52:46 +00:00
LinuxServer-CI 54792dabd6 Bot Updating Package Versions 2025-04-15 15:52:52 +00:00
RoxedusandGitHub a9a6d4eb0c Merge pull request #27 from linuxserver/master-media-blurb 2025-04-15 14:09:05 +02:00
LinuxServer-CI 1df81c8d51 Bot Updating Package Versions 2025-04-14 15:52:34 +00:00
LinuxServer-CI 306f05a1d3 Bot Updating Package Versions 2025-04-10 19:21:48 +00:00
LinuxServer-CI 43c8f134c7 Bot Updating Package Versions 2025-03-31 15:53:38 +00:00
LinuxServer-CI 1a358c3201 Bot Updating Package Versions 2025-03-24 15:53:40 +00:00
LinuxServer-CI 7ef4e81d34 Bot Updating Package Versions 2025-03-20 15:54:39 +00:00
LinuxServer-CI aeeed33345 Bot Updating Package Versions 2025-03-19 15:52:57 +00:00
LinuxServer-CI e315add450 Bot Updating Package Versions 2025-03-17 15:53:32 +00:00
Roxedus 9ce3afacef Dont't use media blurb 2025-03-16 15:41:22 +01:00
LinuxServer-CI b4be92bd5a Bot Updating Package Versions 2025-03-14 15:53:40 +00:00
LinuxServer-CI 92eae020b0 Bot Updating Package Versions 2025-03-12 15:54:18 +00:00
LinuxServer-CI 47d3dd3a5f Bot Updating Package Versions 2025-03-11 19:28:08 +00:00
aptalcaandGitHub 9854689145 Merge pull request #26 from linuxserver/buildfix
update script path
2025-03-11 15:24:36 -04:00
aptalca 359652caf3 update script path 2025-03-11 14:06:16 -04:00
LinuxServer-CI 5d56c7e272 Bot Updating Package Versions 2025-03-08 15:52:32 +00:00
LinuxServer-CI 542020c4bf Bot Updating Package Versions 2025-03-07 15:52:19 +00:00
LinuxServer-CI 38a7cae4f8 Bot Updating Package Versions 2025-03-04 15:53:55 +00:00
LinuxServer-CI b3a23a9daf Bot Updating Package Versions 2025-03-03 15:53:26 +00:00
LinuxServer-CI 41f31f1f3e Bot Updating Package Versions 2025-03-02 15:52:09 +00:00
LinuxServer-CI e4a26597f0 Bot Updating Package Versions 2025-03-01 15:52:47 +00:00
LinuxServer-CI f331164ad5 Bot Updating Package Versions 2025-02-28 15:53:34 +00:00
LinuxServer-CI 020ed4527b Bot Updating Package Versions 2025-02-27 15:54:22 +00:00
LinuxServer-CI ec6ef7b08f Bot Updating Package Versions 2025-02-25 15:52:31 +00:00
LinuxServer-CI 560c9ef79e Bot Updating Package Versions 2025-02-24 15:52:43 +00:00
LinuxServer-CI d5a264eb96 Bot Updating Package Versions 2025-02-23 15:52:12 +00:00
LinuxServer-CI cde2d209fe Bot Updating Package Versions 2025-02-22 15:52:17 +00:00
LinuxServer-CI a770fa43f3 Bot Updating Package Versions 2025-02-21 19:52:30 +00:00
LinuxServer-CI 76bd2b25d1 Bot Updating Package Versions 2025-02-20 15:56:31 +00:00
LinuxServer-CI 2943f8d5be Bot Updating Package Versions 2025-02-17 15:52:31 +00:00
LinuxServer-CI e1fb028b06 Bot Updating Package Versions 2025-02-16 15:52:45 +00:00
LinuxServer-CI 142fe7139b Bot Updating Package Versions 2025-02-15 15:52:39 +00:00
LinuxServer-CI ecfb75cb6e Bot Updating Package Versions 2025-02-14 15:52:16 +00:00
LinuxServer-CI a59230af1b Bot Updating Package Versions 2025-02-13 19:20:38 +00:00
LinuxServer-CI b10dca5863 Bot Updating Package Versions 2025-02-13 15:57:33 +00:00
LinuxServer-CI 43f124e323 Bot Updating Package Versions 2025-02-12 15:57:38 +00:00
LinuxServer-CI d207db9c58 Bot Updating Package Versions 2025-02-11 15:53:59 +00:00
LinuxServer-CI 78c4ff8006 Bot Updating Package Versions 2025-02-10 15:54:01 +00:00
LinuxServer-CI 809d55725c Bot Updating Templated Files 2025-02-10 15:50:17 +00:00
LinuxServer-CI f6f94a0165 Bot Updating Package Versions 2025-02-09 15:53:18 +00:00
LinuxServer-CI fcfc023325 Bot Updating Package Versions 2025-02-08 15:51:59 +00:00
LinuxServer-CI 7a8a849c57 Bot Updating Package Versions 2025-02-07 15:56:34 +00:00
14 changed files with 366 additions and 250 deletions
@@ -8,6 +8,9 @@ on:
pull_request_review:
types: [submitted,edited,dismissed]
permissions:
contents: read
jobs:
manage-project:
permissions:
+3
View File
@@ -4,6 +4,9 @@ on:
- cron: '1 14 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
stale:
permissions:
+9 -6
View File
@@ -3,6 +3,9 @@ name: External Trigger Main
on:
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-main:
runs-on: ubuntu-latest
@@ -43,8 +46,8 @@ jobs:
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
exit 1
fi
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "External version: \`${EXT_RELEASE}\`" >> $GITHUB_STEP_SUMMARY
EXT_RELEASE_SANITIZED=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "Sanitized external version: \`${EXT_RELEASE_SANITIZED}\`" >> $GITHUB_STEP_SUMMARY
echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY
image="linuxserver/flexget"
tag="latest"
@@ -100,8 +103,8 @@ jobs:
exit 1
fi
echo "Last pushed version: \`${IMAGE_VERSION}\`" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE}" == "${IMAGE_VERSION}" ]; then
echo "Version \`${EXT_RELEASE}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE_SANITIZED}" == "${IMAGE_VERSION}" ]; then
echo "Sanitized version \`${EXT_RELEASE_SANITIZED}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
exit 0
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-flexget/job/main/lastBuild/api/json | jq -r '.building') == "true" ]; then
echo "New version \`${EXT_RELEASE}\` found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY
@@ -116,7 +119,7 @@ jobs:
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
else
printf "\n## Trigger new build\n\n" >> $GITHUB_STEP_SUMMARY
echo "New version \`${EXT_RELEASE}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY
echo "New sanitized version \`${EXT_RELEASE_SANITIZED}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY
if [[ "${artifacts_found}" == "true" ]]; then
echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY
fi
@@ -136,7 +139,7 @@ jobs:
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit"
echo "**** Notifying Discord ****"
TRIGGER_REASON="A version change was detected for flexget tag latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
TRIGGER_REASON="A version change was detected for flexget tag latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE_SANITIZED}"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
"description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
@@ -5,6 +5,9 @@ on:
- cron: '48 * * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest
+6
View File
@@ -2,8 +2,14 @@ name: Greetings
on: [pull_request_target, issues]
permissions:
contents: read
jobs:
greeting:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1
@@ -5,6 +5,9 @@ on:
- cron: '4 19 * * 4'
workflow_dispatch:
permissions:
contents: read
jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest
+8 -7
View File
@@ -2,11 +2,11 @@
FROM ghcr.io/linuxserver/unrar:latest AS unrar
FROM ghcr.io/by275/libtorrent:2-alpine3.19 AS libtorrent
FROM ghcr.io/by275/libtorrent:2-alpine3.22 AS libtorrent
FROM ghcr.io/linuxserver/baseimage-alpine:3.19
FROM ghcr.io/linuxserver/baseimage-alpine:3.22
COPY --from=ghcr.io/astral-sh/uv:0.5.26 /uv /uvx /bin/
COPY --from=ghcr.io/astral-sh/uv:0.9.8 /uv /uvx /bin/
# set version label
ARG BUILD_DATE
@@ -31,8 +31,8 @@ RUN \
python3-dev && \
apk add -U --update --no-cache \
7zip \
boost1.82-system \
boost1.82-python3 \
boost1.84-system \
boost1.84-python3 \
libstdc++ \
nodejs \
python3 && \
@@ -51,8 +51,9 @@ RUN \
/app/flexget --strip-components=1 && \
cd /app/flexget && \
uv venv /lsiopy && \
uv run bundle_webui.py && \
uv run scripts/bundle_webui.py && \
uv sync --frozen --no-dev --no-cache --group=all && \
uv pip install pip && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** cleanup ****" && \
apk del --purge \
@@ -63,7 +64,7 @@ RUN \
COPY --from=libtorrent /libtorrent-build/usr/lib/libtorrent-rasterbar.* /usr/lib/
COPY --from=libtorrent /libtorrent-build/usr/lib/python3.11 /lsiopy/lib/python3.11
COPY --from=libtorrent /libtorrent-build/usr/lib/python3.12 /lsiopy/lib/python3.12
# add local files
COPY root/ /
+8 -7
View File
@@ -2,11 +2,11 @@
FROM ghcr.io/linuxserver/unrar:arm64v8-latest AS unrar
FROM ghcr.io/by275/libtorrent:2-alpine3.19 AS libtorrent
FROM ghcr.io/by275/libtorrent:2-alpine3.22 AS libtorrent
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.19
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.22
COPY --from=ghcr.io/astral-sh/uv:0.5.26 /uv /uvx /bin/
COPY --from=ghcr.io/astral-sh/uv:0.9.8 /uv /uvx /bin/
# set version label
ARG BUILD_DATE
@@ -31,8 +31,8 @@ RUN \
python3-dev && \
apk add -U --update --no-cache \
7zip \
boost1.82-system \
boost1.82-python3 \
boost1.84-system \
boost1.84-python3 \
libstdc++ \
nodejs \
python3 && \
@@ -51,8 +51,9 @@ RUN \
/app/flexget --strip-components=1 && \
cd /app/flexget && \
uv venv /lsiopy && \
uv run bundle_webui.py && \
uv run scripts/bundle_webui.py && \
uv sync --frozen --no-dev --no-cache --group=all && \
uv pip install pip && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
echo "**** cleanup ****" && \
apk del --purge \
@@ -63,7 +64,7 @@ RUN \
COPY --from=libtorrent /libtorrent-build/usr/lib/libtorrent-rasterbar.* /usr/lib/
COPY --from=libtorrent /libtorrent-build/usr/lib/python3.11 /lsiopy/lib/python3.11
COPY --from=libtorrent /libtorrent-build/usr/lib/python3.12 /lsiopy/lib/python3.12
# add local files
COPY root/ /
Vendored
+88 -39
View File
@@ -73,7 +73,9 @@ pipeline {
fi
done
fi
docker system prune -f --volumes || : '''
docker system prune -f --volumes || :
docker image prune -af || :
'''
script{
env.EXIT_STATUS = ''
env.LS_RELEASE = sh(
@@ -95,7 +97,11 @@ pipeline {
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./root/donate.txt'
if ( env.SYFT_IMAGE_TAG == null ) {
env.SYFT_IMAGE_TAG = 'latest'
}
}
echo "Using syft image tag ${SYFT_IMAGE_TAG}"
sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
script{
@@ -212,6 +218,7 @@ pipeline {
env.META_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'latest'
}
}
}
@@ -237,6 +244,7 @@ pipeline {
env.EXT_RELEASE_TAG = 'version-' + env.EXT_RELEASE_CLEAN
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'develop'
}
}
}
@@ -262,6 +270,7 @@ pipeline {
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'develop'
}
}
}
@@ -284,7 +293,7 @@ pipeline {
-v ${WORKSPACE}:/mnt \
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
ghcr.io/linuxserver/baseimage-alpine:3.20 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
ghcr.io/linuxserver/baseimage-alpine:3.23 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache python3 && \
python3 -m venv /lsiopy && \
pip install --no-cache-dir -U pip && \
@@ -619,13 +628,16 @@ pipeline {
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
if [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in $(jobs -p); do
wait "$p" || { echo "job $p failed" >&2; exit 1; }
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
@@ -685,13 +697,16 @@ pipeline {
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
if [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in $(jobs -p); do
wait "$p" || { echo "job $p failed" >&2; exit 1; }
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
@@ -745,12 +760,14 @@ pipeline {
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
if [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in $(jobs -p); do
wait "$p" || { echo "job $p failed" >&2; exit 1; }
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
@@ -761,7 +778,8 @@ pipeline {
if [[ -n "${containers}" ]]; then
docker stop ${containers}
fi
docker system prune -af --volumes || :
docker system prune -f --volumes || :
docker image prune -af || :
'''
}
}
@@ -787,7 +805,7 @@ pipeline {
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \
ghcr.io/anchore/syft:${SYFT_IMAGE_TAG} \
${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
@@ -874,7 +892,7 @@ pipeline {
CI_DOCKERENV="LSIO_FIRST_PARTY=true"
fi
fi
docker pull ghcr.io/linuxserver/ci:latest
docker pull ghcr.io/linuxserver/ci:${CITEST_IMAGETAG}
if [ "${MULTIARCH}" == "true" ]; then
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} --platform=arm64
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
@@ -897,7 +915,10 @@ pipeline {
-e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \
-e NODE_NAME=\"${NODE_NAME}\" \
-t ghcr.io/linuxserver/ci:latest \
-e SYFT_IMAGE_TAG=\"${CI_SYFT_IMAGE_TAG:-${SYFT_IMAGE_TAG}}\" \
-e COMMIT_SHA=\"${COMMIT_SHA}\" \
-e BUILD_NUMBER=\"${BUILD_NUMBER}\" \
-t ghcr.io/linuxserver/ci:${CITEST_IMAGETAG} \
python3 test_build.py'''
}
}
@@ -923,9 +944,11 @@ pipeline {
CACHEIMAGE=${i}
fi
done
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${META_TAG} -t ${PUSHIMAGE}:latest -t ${PUSHIMAGE}:${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${META_TAG} -t ${PUSHIMAGE}:latest -t ${PUSHIMAGE}:${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${PUSHIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${PUSHIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
'''
@@ -950,20 +973,27 @@ pipeline {
CACHEIMAGE=${i}
fi
done
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${META_TAG} -t ${MANIFESTIMAGE}:amd64-latest -t ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${META_TAG} -t ${MANIFESTIMAGE}:arm64v8-latest -t ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${META_TAG} -t ${MANIFESTIMAGE}:amd64-latest -t ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${META_TAG} -t ${MANIFESTIMAGE}:arm64v8-latest -t ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${SEMVER} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${SEMVER} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker buildx imagetools create -t ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
docker buildx imagetools create -t ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
'''
@@ -981,23 +1011,41 @@ pipeline {
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Pushing New tag for current commit ${META_TAG}"
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
-d '{"tag":"'${META_TAG}'",\
"object": "'${COMMIT_SHA}'",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to main",\
"type": "commit",\
"tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag"
sh '''#! /bin/bash
curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq '. |.body' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json
echo '{"tag_name":"'${META_TAG}'",\
"target_commitish": "main",\
"name": "'${META_TAG}'",\
"body": "**CI Report:**\\n\\n'${CI_URL:-N/A}'\\n\\n**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": false}' >> releasebody.json
paste -d'\\0' start releasebody.json > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
echo "Auto-generating release notes"
if [ "$(git tag --points-at HEAD)" != "" ]; then
echo "Existing tag points to current commit, suggesting no new LS changes"
AUTO_RELEASE_NOTES="No changes"
else
AUTO_RELEASE_NOTES=$(curl -fsL -H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github+json" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases/generate-notes \
-d '{"tag_name":"'${META_TAG}'",\
"target_commitish": "main"}' \
| jq -r '.body' | sed 's|## What.s Changed||')
fi
echo "Pushing New tag for current commit ${META_TAG}"
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
-d '{"tag":"'${META_TAG}'",\
"object": "'${COMMIT_SHA}'",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to main",\
"type": "commit",\
"tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}'
echo "Pushing New release for Tag"
curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq -r '. |.body' > releasebody.json
jq -n \
--arg tag_name "$META_TAG" \
--arg target_commitish "main" \
--arg ci_url "${CI_URL:-N/A}" \
--arg ls_notes "$AUTO_RELEASE_NOTES" \
--arg remote_notes "$(cat releasebody.json)" \
'{
"tag_name": $tag_name,
"target_commitish": $target_commitish,
"name": $tag_name,
"body": ("**CI Report:**\\n\\n" + $ci_url + "\\n\\n**LinuxServer Changes:**\\n\\n" + $ls_notes + "\\n\\n**Remote Changes:**\\n\\n" + $remote_notes),
"draft": false,
"prerelease": false }' > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done
'''
}
}
// Add protection to the release branch
@@ -1187,6 +1235,7 @@ EOF
done
fi
docker system prune -f --volumes || :
docker image prune -af || :
'''
cleanWs()
}
+4 -7
View File
@@ -5,7 +5,6 @@
[![Blog](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!")
[![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://linuxserver.io/discord "realtime support / chat with the community and the team.")
[![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=discourse)](https://discourse.linuxserver.io "post on our community forum.")
[![Fleet](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.")
[![GitHub](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub&logo=github)](https://github.com/linuxserver "view the source for all of our repositories.")
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Supporters&logo=open%20collective)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
@@ -22,7 +21,6 @@ Find us at:
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
* [Discord](https://linuxserver.io/discord) - realtime support / chat with the community and the team.
* [Discourse](https://discourse.linuxserver.io) - post on our community forum.
* [Fleet](https://fleet.linuxserver.io) - an online web interface which displays all of our maintained images.
* [GitHub](https://github.com/linuxserver) - view the source for all of our repositories.
* [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
@@ -55,7 +53,6 @@ The architectures supported by this image are:
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ❌ | |
## Application Setup
@@ -65,12 +62,10 @@ See the [FlexGet website](https://flexget.com/) for more information.
### Download folders
We have set `/data` as an ***optional path***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
We have set `/data` as an ***optional path***, this is because it is the easiest way to get started.
Use the optional paths if you don't understand, or don't want hardlinks/atomic moves.
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
## Read-Only Operation
This image can be run with a read-only container filesystem. For details please [read the docs](https://docs.linuxserver.io/misc/read-only/).
@@ -80,7 +75,7 @@ This image can be run with a read-only container filesystem. For details please
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
>[!NOTE]
>Unless a parameter is flaged as 'optional', it is *mandatory* and a value must be provided.
>Unless a parameter is flagged as 'optional', it is *mandatory* and a value must be provided.
### docker-compose (recommended, [click here for more info](https://docs.linuxserver.io/general/docker-compose))
@@ -305,6 +300,8 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **10.11.25:** - Rebase to Alpine 3.22.
* **17.10.25:** - Add pip to enable [universal-package-install mod](https://github.com/linuxserver/docker-mods/tree/universal-package-install).
* **18.09.24:** - Suppress creation of empty log file when WebUI password is set.
* **17.08.24:** - Revert to Alpine 3.20 due to 1st party plugin incompatibility with Python 3.12.
* **19.06.24:** - Rebase to Alpine 3.20.
+222 -173
View File
@@ -1,173 +1,222 @@
NAME VERSION TYPE
7zip 23.01-r0 apk
ada-libs 2.7.4-r0 apk
alpine-baselayout 3.4.3-r2 apk
alpine-baselayout-data 3.4.3-r2 apk
alpine-keys 2.4-r1 apk
alpine-release 3.19.6-r0 apk
aniso8601 10.0.0 python
anyio 4.8.0 python
apk-tools 2.14.4-r0 apk
apscheduler 3.11.0 python
attrs 25.1.0 python
autocommand 2.2.2 python (+1 duplicate)
babelfish 0.6.1 python
backports-tarfile 1.2.0 python (+1 duplicate)
bash 5.2.21-r0 apk
beautifulsoup4 4.13.1 python
blinker 1.9.0 python
boost1.82-python3 1.82.0-r3 apk
boost1.82-system 1.82.0-r3 apk
brotli 1.1.0 python
brotli-libs 1.1.0-r1 apk
busybox 1.36.1-r19 apk
busybox-binsh 1.36.1-r19 apk
c-ares 1.27.0-r0 apk
ca-certificates 20241121-r1 apk
ca-certificates-bundle 20241121-r1 apk
catatonit 0.2.0-r0 apk
certifi 2025.1.31 python
charset-normalizer 3.4.1 python
cheroot 10.0.1 python
cherrypy 18.10.0 python
click 8.1.8 python
colorama 0.4.6 python
coreutils 9.4-r2 apk
coreutils-env 9.4-r2 apk
coreutils-fmt 9.4-r2 apk
coreutils-sha512sum 9.4-r2 apk
curl 8.11.1-r0 apk
deluge-client 1.10.2 python
feedparser 6.0.11 python
findutils 4.9.0-r5 apk
flask 3.1.0 python
flask-compress 1.17 python
flask-cors 5.0.0 python
flask-login 0.6.3 python
flask-restx 1.3.0 python
flexget 3.14.3 python
gdbm 1.23-r1 apk
greenlet 3.1.1 python
guessit 3.8.0 python
h11 0.14.0 python
h2 4.2.0 python
hpack 4.1.0 python
html5lib 1.1 python
httpcore 1.0.7 python
httpx 0.28.1 python
hyperframe 6.1.0 python
icu-data-en 74.1-r0 apk
icu-libs 74.1-r0 apk
idna 3.10 python
importlib-metadata 8.0.0 python
importlib-resources 6.5.2 python
inflect 7.3.1 python
itsdangerous 2.2.0 python
jaraco-collections 5.1.0 python (+1 duplicate)
jaraco-context 5.3.0 python
jaraco-context 6.0.1 python
jaraco-functools 4.0.1 python
jaraco-functools 4.1.0 python
jaraco-text 3.12.1 python
jaraco-text 4.0.0 python
jinja2 3.1.5 python
jq 1.7.1-r0 apk
jsonschema 4.23.0 python
jsonschema-specifications 2024.10.1 python
libacl 2.3.1-r4 apk
libattr 2.5.1-r5 apk
libbase64 0.5.0-r0 apk
libbsd 0.11.7-r3 apk
libbz2 1.0.8-r6 apk
libc-utils 0.7.2-r5 apk
libcrypto3 3.1.7-r1 apk
libcurl 8.11.1-r0 apk
libexpat 2.6.4-r0 apk
libffi 3.4.4-r3 apk
libgcc 13.2.1_git20231014-r0 apk
libidn2 2.3.4-r4 apk
libintl 0.22.3-r0 apk
libmd 1.1.0-r0 apk
libncursesw 6.4_p20231125-r0 apk
libpanelw 6.4_p20231125-r0 apk
libproc2 4.0.4-r0 apk
libpsl 0.21.5-r0 apk
libssl3 3.1.7-r1 apk
libstdc++ 13.2.1_git20231014-r0 apk
libunistring 1.1-r2 apk
linux-pam 1.5.3-r7 apk
loguru 0.7.3 python
markdown-it-py 3.0.0 python
markupsafe 3.0.2 python
mdurl 0.1.2 python
more-itertools 10.3.0 python
more-itertools 10.6.0 python
mpdecimal 2.5.1-r2 apk
musl 1.2.4_git20230717-r4 apk
musl-utils 1.2.4_git20230717-r4 apk
my-test-package 1.0 python
ncurses-terminfo-base 6.4_p20231125-r0 apk
netcat-openbsd 1.226-r0 apk
nghttp2-libs 1.58.0-r0 apk
nodejs 20.15.1-r0 apk
oniguruma 6.9.9-r0 apk
packaging 24.2 python (+1 duplicate)
pendulum 3.0.0 python
platformdirs 4.2.2 python
plumbum 1.9.0 python
portend 3.2.0 python
procps-ng 4.0.4-r0 apk
psutil 6.1.1 python
pyc 3.11.11-r0 apk
pygments 2.19.1 python
pynzb 0.1.0 python
pyparsing 3.2.1 python
pyrss2gen 1.1 python
python-dateutil 2.9.0.post0 python
python-telegram-bot 21.10 python
python3 3.11.11-r0 apk
python3-pyc 3.11.11-r0 apk
python3-pycache-pyc0 3.11.11-r0 apk
pytz 2025.1 python
pyyaml 6.0.2 python
qbittorrent-api 2024.12.71 python
readline 8.2.1-r2 apk
rebulk 3.2.0 python
referencing 0.36.2 python
requests 2.32.3 python
rich 13.9.4 python
rpds-py 0.22.3 python
rpyc 6.0.1 python
scanelf 1.3.7-r2 apk
setuptools 75.8.0 python
sgmllib3k 1.0.0 python
shadow 4.14.2-r0 apk
six 1.17.0 python
skalibs 2.14.0.1-r0 apk
sniffio 1.3.1 python
socksio 1.0.0 python
soupsieve 2.6 python
sqlalchemy 2.0.37 python
sqlite-libs 3.44.2-r0 apk
ssl_client 1.36.1-r19 apk
tempora 5.8.0 python
time-machine 2.16.0 python
tomli 2.0.1 python
transmission-rpc 7.0.11 python
triangular 2.5.0 npm
typeguard 4.3.0 python
typing-extensions 4.12.2 python (+1 duplicate)
tzdata 2024b-r0 apk
tzdata 2025.1 python
tzlocal 5.2 python
urllib3 1.26.20 python
utmps-libs 0.1.2.2-r0 apk
webencodings 0.5.1 python
werkzeug 3.1.3 python
wheel 0.43.0 python
xz-libs 5.4.5-r0 apk
zc-lockfile 3.0.post1 python
zipp 3.19.2 python
zlib 1.3.1-r0 apk
zstandard 0.23.0 python
zxcvbn 4.4.28 python
NAME VERSION TYPE
7zip 24.09-r0 apk
Simple Launcher 1.1.0.14 binary (+5 duplicates)
acl-libs 2.3.2-r1 apk
ada-libs 2.9.2-r4 apk
aiofiles 24.1.0 python
aiohappyeyeballs 2.6.1 python
aiohttp 3.13.3 python
aiohttp-socks 0.11.0 python
aiosignal 1.4.0 python
alpine-baselayout 3.7.0-r0 apk
alpine-baselayout-data 3.7.0-r0 apk
alpine-keys 2.5-r0 apk
alpine-release 3.22.3-r0 apk
aniso8601 10.0.1 python
annotated-doc 0.0.4 python
anyio 4.12.1 python
apk-tools 2.14.9-r3 apk
apscheduler 3.11.2 python
attrs 25.4.0 python
autocommand 2.2.2 python
babelfish 0.6.1 python
backports-tarfile 1.2.0 python
backports-zstd 1.3.0 python
bash 5.2.37-r0 apk
bcrypt 5.0.0 python
beautifulsoup4 4.14.3 python
blinker 1.9.0 python
boost1.84-python3 1.84.0-r3 apk
boost1.84-system 1.84.0-r3 apk
boto3 1.42.68 python
botocore 1.42.68 python
brotli 1.2.0 python
brotli-libs 1.1.0-r2 apk
busybox 1.37.0-r20 apk
busybox-binsh 1.37.0-r20 apk
c-ares 1.34.6-r0 apk
ca-certificates 20250911-r0 apk
ca-certificates-bundle 20250911-r0 apk
catatonit 0.2.1-r0 apk
certifi 2026.2.25 python
cffi 2.0.0 python
chardet 7.1.0 python
charset-normalizer 3.4.6 python
cheroot 11.1.2 python
cherrypy 18.10.0 python
cli UNKNOWN binary
cli-32 UNKNOWN binary
cli-64 UNKNOWN binary
cli-arm64 UNKNOWN binary
click 8.3.1 python
click-option-group 0.5.9 python
coreutils 9.7-r1 apk
coreutils-env 9.7-r1 apk
coreutils-fmt 9.7-r1 apk
coreutils-sha512sum 9.7-r1 apk
cryptography 46.0.5 python
curl 8.14.1-r2 apk
decorator 5.2.1 python
defusedxml 0.7.1 python
deluge-client 1.10.2 python
dogpile-cache 1.5.0 python
enzyme 0.5.2 python
feedparser 6.0.12 python
findutils 4.10.0-r0 apk
flask 3.1.3 python
flask-compress 1.23 python
flask-cors 6.0.2 python
flask-login 0.6.3 python
flask-restx 1.3.2 python
flexget 3.19.3 python
frozenlist 1.8.0 python
ftputil 5.1.0 python
gdbm 1.24-r0 apk
greenlet 3.3.2 python
guessit 3.8.0 python
gui UNKNOWN binary
gui-32 UNKNOWN binary
gui-64 UNKNOWN binary
gui-arm64 UNKNOWN binary
h11 0.16.0 python
h2 4.3.0 python
hpack 4.1.0 python
html5lib 1.1 python
httpcore 1.0.9 python
httpx 0.28.1 python
hyperframe 6.1.0 python
icu-data-en 76.1-r1 apk
icu-libs 76.1-r1 apk
idna 3.11 python
importlib-metadata 8.7.1 python
importlib-resources 6.5.2 python
itsdangerous 2.2.0 python
jaraco-collections 5.2.1 python
jaraco-context 6.1.0 python
jaraco-context 6.1.1 python
jaraco-functools 4.4.0 python (+1 duplicate)
jaraco-text 4.0.0 python
jaraco-text 4.2.0 python
jinja2 3.1.6 python
jmespath 1.1.0 python
jq 1.8.1-r0 apk
jsonschema 4.26.0 python
jsonschema-specifications 2025.9.1 python
knowit 0.5.11 python
libapk2 2.14.9-r3 apk
libattr 2.5.2-r2 apk
libbsd 0.12.2-r0 apk
libbz2 1.0.8-r6 apk
libcrypto3 3.5.5-r0 apk
libcurl 8.14.1-r2 apk
libexpat 2.7.4-r0 apk
libffi 3.4.8-r0 apk
libgcc 14.2.0-r6 apk
libidn2 2.3.7-r0 apk
libintl 0.24.1-r0 apk
libmd 1.1.0-r0 apk
libncursesw 6.5_p20250503-r0 apk
libpanelw 6.5_p20250503-r0 apk
libproc2 4.0.4-r3 apk
libpsl 0.21.5-r3 apk
libssl3 3.5.5-r0 apk
libstdc++ 14.2.0-r6 apk
libunistring 1.3-r0 apk
linux-pam 1.7.0-r4 apk
loguru 0.7.3 python
markdown-it-py 4.0.0 python
markupsafe 3.0.3 python
matrix-nio 0.25.2 python
mdurl 0.1.2 python
more-itertools 10.8.0 python (+1 duplicate)
mpdecimal 4.0.1-r0 apk
multidict 6.7.1 python
musl 1.2.5-r10 apk
musl-utils 1.2.5-r10 apk
ncurses-terminfo-base 6.5_p20250503-r0 apk
netcat-openbsd 1.229.1-r0 apk
nghttp2-libs 1.65.0-r0 apk
nodejs 22.22.0-r0 apk
oniguruma 6.9.10-r0 apk
packaging 26.0 python (+1 duplicate)
paramiko 3.5.1 python
pendulum 3.2.0 python
pip 26.0.1 python
platformdirs 4.4.0 python
platformdirs 4.9.4 python
plexapi 4.18.0 python
plumbum 1.10.0 python
portend 3.2.1 python
procps-ng 4.0.4-r3 apk
propcache 0.4.1 python
psutil 7.2.2 python
pyc 3.12.12-r0 apk
pycparser 3.0 python
pycryptodome 3.23.0 python
pygments 2.19.2 python
pymediainfo 7.0.1 python
pynacl 1.6.2 python
pynzb 0.1.0 python
pyparsing 3.3.2 python
pyrss2gen 1.1 python
pysftp 0.2.9 python
pysubs2 1.8.0 python
python-dateutil 2.9.0.post0 python
python-socks 2.8.1 python
python-telegram-bot 22.6 python
python3 3.12.12-r0 apk
python3-pyc 3.12.12-r0 apk
python3-pycache-pyc0 3.12.12-r0 apk
pyyaml 6.0.3 python
qbittorrent-api 2025.11.1 python
rarfile 4.2 python
readline 8.2.13-r1 apk
rebulk 3.2.0 python
referencing 0.37.0 python
requests 2.32.5 python
rich 14.3.3 python
rpds-py 0.30.0 python
rpyc 6.0.2 python
s3transfer 0.16.0 python
scanelf 1.3.8-r1 apk
setuptools 82.0.1 python
sgmllib3k 1.0.0 python
shadow 4.17.3-r0 apk
shellingham 1.5.4 python
simdjson 3.12.0-r0 apk
simdutf 7.2.1-r0 apk
six 1.17.0 python
skalibs-libs 2.14.4.0-r0 apk
socksio 1.0.0 python
soupsieve 2.8.3 python
sqlalchemy 2.0.48 python
sqlite-libs 3.49.2-r1 apk
srt 3.5.3 python
ssl_client 1.37.0-r20 apk
stevedore 5.7.0 python
subliminal 2.6.0 python
tempora 5.8.1 python
tomli 2.4.0 python
tomlkit 0.14.0 python
trakit 0.2.5 python
transmission-rpc 7.0.11 python
triangular 2.5.0 npm
typer 0.24.1 python
typer-slim 0.24.0 python
typing-extensions 4.15.0 python
tzdata 2025.3 python
tzdata 2026a-r0 apk
tzlocal 5.3.1 python
unpaddedbase64 2.1.0 python
urllib3 2.6.3 python
utmps-libs 0.1.3.1-r0 apk
webencodings 0.5.1 python
werkzeug 3.1.6 python
wheel 0.46.3 python
xz-libs 5.8.1-r0 apk
yarl 1.23.0 python
zc-lockfile 4.0 python
zipp 3.23.0 python
zlib 1.3.1-r2 apk
zstd-libs 1.5.7-r0 apk
zxcvbn 4.5.0 python
+8 -10
View File
@@ -42,11 +42,9 @@ app_setup_block: |
### Download folders
We have set `/data` as an ***optional path***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
We have set `/data` as an ***optional path***, this is because it is the easiest way to get started.
Use the optional paths if you don't understand, or don't want hardlinks/atomic moves.
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
# init diagram
init_diagram: |
"flexget:latest": {
@@ -64,34 +62,34 @@ init_diagram: |
init-migrations -> init-adduser
init-os-end -> init-config
init-config -> init-config-end
init-crontab-config -> init-config-end
init-flexget-config -> init-config-end
init-os-end -> init-crontab-config
init-config -> init-crontab-config
init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile
init-config -> init-flexget-config
base -> init-migrations
base -> init-mods
init-config-end -> init-mods
init-mods -> init-mods-end
init-mods-package-install -> init-mods-end
init-mods -> init-mods-package-install
base -> init-os-end
init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end
init-migrations -> init-os-end
init-custom-files -> init-services
init-mods-end -> init-services
init-services -> svc-cron
svc-cron -> legacy-services
init-services -> svc-flexget
svc-flexget -> legacy-services
}
Base Images: {
"baseimage-alpine:3.19"
"baseimage-alpine:3.22"
}
"flexget:latest" <- Base Images
# changelog
changelogs:
- {date: "10.11.25:", desc: "Rebase to Alpine 3.22."}
- {date: "17.10.25:", desc: "Add pip to enable [universal-package-install mod](https://github.com/linuxserver/docker-mods/tree/universal-package-install)."}
- {date: "18.09.24:", desc: "Suppress creation of empty log file when WebUI password is set."}
- {date: "17.08.24:", desc: "Revert to Alpine 3.20 due to 1st party plugin incompatibility with Python 3.12."}
- {date: "19.06.24:", desc: "Rebase to Alpine 3.20."}
Executable → Regular
View File
+1 -1
View File
@@ -4,4 +4,4 @@
exec \
s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z localhost 5050" \
cd /config s6-setuidgid abc python3 /lsiopy/bin/flexget \
--loglevel "${FG_LOG_LEVEL:-info}" --logfile "${FG_LOG_FILE:-/config/.flexget/flexget.log}" -c "${FG_CONFIG_FILE:-/config/.flexget/config.yml}" daemon start --autoreload-config
--loglevel "${FG_LOG_LEVEL:-info}" --logfile "${FG_LOG_FILE:-/config/.flexget/flexget.log}" -c "${FG_CONFIG_FILE:-/config/.flexget/config.yml}" daemon start