Compare commits

...

34 Commits

Author SHA1 Message Date
LinuxServer-CI
950b8b98c9 Bot Updating Package Versions 2025-10-14 10:39:30 +00:00
LinuxServer-CI
09e0ed6728 Bot Updating Package Versions 2025-10-07 10:37:46 +00:00
LinuxServer-CI
9013f1b551 Bot Updating Package Versions 2025-09-30 10:39:33 +00:00
LinuxServer-CI
df00bc1995 Bot Updating Package Versions 2025-09-23 10:38:39 +00:00
LinuxServer-CI
ddeea3fc6a Bot Updating Package Versions 2025-09-16 10:37:44 +00:00
LinuxServer-CI
787fa45993 Bot Updating Package Versions 2025-09-09 10:40:02 +00:00
LinuxServer-CI
89c38bcff0 Bot Updating Package Versions 2025-08-26 10:42:20 +00:00
LinuxServer-CI
7f8d6b2122 Bot Updating Package Versions 2025-08-19 10:41:23 +00:00
LinuxServer-CI
ba5848adb1 Bot Updating Package Versions 2025-08-12 10:44:07 +00:00
LinuxServer-CI
6b3500a710 Bot Updating Package Versions 2025-08-05 10:46:36 +00:00
LinuxServer-CI
a4f703ce23 Bot Updating Package Versions 2025-07-29 10:46:04 +00:00
LinuxServer-CI
8426201f56 Bot Updating Package Versions 2025-07-22 10:45:33 +00:00
LinuxServer-CI
556f938946 Bot Updating Package Versions 2025-07-15 10:44:55 +00:00
LinuxServer-CI
5396b05953 Bot Updating Package Versions 2025-07-08 10:47:16 +00:00
LinuxServer-CI
2121759d85 Bot Updating Templated Files 2025-07-08 10:44:34 +00:00
LinuxServer-CI
9d7f5b8fc2 Bot Updating Templated Files 2025-07-08 10:42:45 +00:00
LinuxServer-CI
b13ea92136 Bot Updating Package Versions 2025-07-01 10:43:55 +00:00
LinuxServer-CI
26611c9803 Bot Updating Package Versions 2025-06-24 10:44:16 +00:00
Adam
2fbe193446 Merge pull request #307 from stavros-k/patch-1 2025-06-20 14:40:32 +01:00
LinuxServer-CI
2b0e4243fc Bot Updating Package Versions 2025-06-17 10:43:17 +00:00
LinuxServer-CI
d9d11b3d3f Bot Updating Package Versions 2025-06-10 10:45:34 +00:00
LinuxServer-CI
c5c77adaf7 Bot Updating Templated Files 2025-06-10 10:42:41 +00:00
LinuxServer-CI
0c3b360ff1 Bot Updating Package Versions 2025-06-03 10:43:43 +00:00
LinuxServer-CI
a68085138b Bot Updating Package Versions 2025-05-27 10:43:02 +00:00
LinuxServer-CI
b18d88a011 Bot Updating Package Versions 2025-05-20 10:44:56 +00:00
LinuxServer-CI
2424de4ae2 Bot Updating Templated Files 2025-05-20 10:42:08 +00:00
LinuxServer-CI
ce44e98db1 Bot Updating Package Versions 2025-05-13 10:43:02 +00:00
LinuxServer-CI
0b493643b5 Bot Updating Package Versions 2025-05-06 10:42:39 +00:00
LinuxServer-CI
54f6391848 Bot Updating Package Versions 2025-04-29 10:43:11 +00:00
Stavros Kois
52fc6098ff account for changed port 2025-04-24 19:30:13 +03:00
LinuxServer-CI
2c2f302bb7 Bot Updating Package Versions 2025-04-22 10:40:12 +00:00
LinuxServer-CI
06402dac36 Bot Updating Package Versions 2025-04-15 10:42:46 +00:00
LinuxServer-CI
376ada4699 Bot Updating Package Versions 2025-04-10 21:19:08 +00:00
LinuxServer-CI
d406a62e8d Bot Updating Package Versions 2025-03-18 10:38:39 +00:00
12 changed files with 101 additions and 73 deletions

View File

@@ -8,6 +8,9 @@ on:
pull_request_review:
types: [submitted,edited,dismissed]
permissions:
contents: read
jobs:
manage-project:
permissions:

View File

@@ -4,6 +4,9 @@ on:
- cron: '5 19 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
stale:
permissions:

View File

@@ -3,6 +3,9 @@ name: External Trigger Main
on:
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-master:
runs-on: ubuntu-latest
@@ -44,8 +47,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/transmission"
tag="latest"
@@ -101,8 +104,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 -sL "http://dl-cdn.alpinelinux.org/alpine/edge/community/aarch64/APKINDEX.tar.gz" | tar -xz -C /tmp && awk '/^P:'"transmission-daemon"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://') != "${EXT_RELEASE}" ]]; then
echo "New version \`${EXT_RELEASE}\` found; but not all arch repos updated yet; exiting" >> $GITHUB_STEP_SUMMARY
@@ -124,7 +127,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
@@ -144,7 +147,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 transmission tag latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
TRIGGER_REASON="A version change was detected for transmission 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 }}

View File

@@ -5,6 +5,9 @@ on:
- cron: '1 * * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest

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

View File

@@ -5,6 +5,9 @@ on:
- cron: '15 10 * * 2'
workflow_dispatch:
permissions:
contents: read
jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest

7
Jenkinsfile vendored
View File

@@ -97,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'
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{
@@ -784,7 +788,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"
@@ -894,6 +898,7 @@ pipeline {
-e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \
-e NODE_NAME=\"${NODE_NAME}\" \
-e SYFT_IMAGE_TAG=\"${CI_SYFT_IMAGE_TAG:-${SYFT_IMAGE_TAG}}\" \
-t ghcr.io/linuxserver/ci:latest \
python3 test_build.py'''
}

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

View File

@@ -1,73 +1,74 @@
NAME VERSION TYPE
7zip 24.09-r0 apk
7zip 25.01-r0 apk
acl-libs 2.3.2-r1 apk
alpine-baselayout 3.6.8-r1 apk
alpine-baselayout-data 3.6.8-r1 apk
alpine-keys 2.5-r0 apk
apk-tools 2.14.9-r1 apk
bash 5.2.37-r0 apk
alpine-baselayout 3.7.1-r1 apk
alpine-baselayout-data 3.7.1-r1 apk
alpine-keys 2.6-r0 apk
apk-tools 3.0.0_rc6-r0 apk
bash 5.3.3-r1 apk
brotli-libs 1.1.0-r2 apk
busybox 1.37.0-r14 apk
busybox-binsh 1.37.0-r14 apk
c-ares 1.34.4-r0 apk
ca-certificates 20241121-r1 apk
ca-certificates-bundle 20241121-r1 apk
busybox 1.37.0-r24 apk
busybox-binsh 1.37.0-r24 apk
c-ares 1.34.5-r0 apk
ca-certificates 20250911-r0 apk
ca-certificates-bundle 20250911-r0 apk
catatonit 0.2.1-r0 apk
coreutils 9.6-r2 apk
coreutils-env 9.6-r2 apk
coreutils-fmt 9.6-r2 apk
coreutils-sha512sum 9.6-r2 apk
curl 8.12.1-r0 apk
coreutils 9.8-r1 apk
coreutils-env 9.8-r1 apk
coreutils-fmt 9.8-r1 apk
coreutils-sha512sum 9.8-r1 apk
curl 8.16.0-r1 apk
findutils 4.10.0-r0 apk
gdbm 1.24-r0 apk
jq 1.7.1-r0 apk
libapk2 2.14.9-r1 apk
gdbm 1.26-r0 apk
jq 1.8.1-r0 apk
libapk 3.0.0_rc6-r0 apk
libattr 2.5.2-r2 apk
libbsd 0.12.2-r0 apk
libbz2 1.0.8-r6 apk
libcrypto3 3.3.3-r0 apk
libcurl 8.12.1-r0 apk
libdeflate 1.23-r0 apk
libcrypto3 3.5.4-r0 apk
libcurl 8.16.0-r1 apk
libdeflate 1.24-r0 apk
libevent 2.1.12-r8 apk
libexpat 2.6.4-r0 apk
libffi 3.4.7-r0 apk
libgcc 14.2.0-r5 apk
libidn2 2.3.7-r0 apk
libintl 0.22.5-r0 apk
libexpat 2.7.3-r0 apk
libffi 3.5.2-r0 apk
libgcc 15.2.0-r0 apk
libidn2 2.3.8-r0 apk
libintl 0.24.1-r1 apk
libmd 1.1.0-r0 apk
libncursesw 6.5_p20250216-r0 apk
libpanelw 6.5_p20250216-r0 apk
libproc2 4.0.4-r2 apk
libncursesw 6.5_p20250816-r0 apk
libpanelw 6.5_p20250816-r0 apk
libproc2 4.0.4-r3 apk
libpsl 0.21.5-r3 apk
libssl3 3.3.3-r0 apk
libstdc++ 14.2.0-r5 apk
libssl3 3.5.4-r0 apk
libstdc++ 15.2.0-r0 apk
libunistring 1.3-r0 apk
linux-pam 1.7.0-r1 apk
miniupnpc 2.3.1-r0 apk
mpdecimal 4.0.0-r0 apk
musl 1.2.5-r10 apk
musl-utils 1.2.5-r10 apk
ncurses-terminfo-base 6.5_p20250216-r0 apk
netcat-openbsd 1.228.1-r0 apk
nghttp2-libs 1.65.0-r0 apk
linux-pam 1.7.0-r4 apk
miniupnpc 2.3.2-r0 apk
mpdecimal 4.0.1-r0 apk
musl 1.2.5-r21 apk
musl-utils 1.2.5-r20 apk
ncurses-terminfo-base 6.5_p20250816-r0 apk
netcat-openbsd 1.229.1-r0 apk
nghttp2-libs 1.67.1-r0 apk
nghttp3 1.11.0-r0 apk
oniguruma 6.9.10-r0 apk
procps-ng 4.0.4-r2 apk
pyc 3.12.9-r0 apk
python3 3.12.9-r0 apk
python3-pyc 3.12.9-r0 apk
python3-pycache-pyc0 3.12.9-r0 apk
readline 8.2.13-r0 apk
scanelf 1.3.8-r1 apk
shadow 4.17.3-r0 apk
skalibs-libs 2.14.3.0-r0 apk
sqlite-libs 3.49.1-r0 apk
ssl_client 1.37.0-r14 apk
transmission-cli 4.0.6-r3 apk
transmission-daemon 4.0.6-r3 apk
transmission-extra 4.0.6-r3 apk
transmission-remote 4.0.6-r3 apk
tzdata 2025a-r0 apk
utmps-libs 0.1.2.3-r2 apk
xz-libs 5.6.4-r0 apk
procps-ng 4.0.4-r3 apk
pyc 3.12.12-r0 apk
python3 3.12.12-r0 apk
python3-pyc 3.12.12-r0 apk
python3-pycache-pyc0 3.12.12-r0 apk
readline 8.3.1-r0 apk
scanelf 1.3.8-r2 apk
shadow 4.18.0-r0 apk
skalibs-libs 2.14.4.0-r0 apk
sqlite-libs 3.50.4-r1 apk
ssl_client 1.37.0-r24 apk
transmission-cli 4.0.6-r4 apk
transmission-daemon 4.0.6-r4 apk
transmission-extra 4.0.6-r4 apk
transmission-remote 4.0.6-r4 apk
tzdata 2025b-r0 apk
utmps-libs 0.1.3.1-r0 apk
xz-libs 5.8.1-r0 apk
zlib 1.3.1-r2 apk
zstd-libs 1.5.7-r0 apk
zstd-libs 1.5.7-r2 apk

View File

@@ -84,12 +84,14 @@ init_diagram: |
init-transmission-config -> init-config-end
init-config -> init-crontab-config
init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile
base -> init-migrations
init-config-end -> init-mods
init-mods-package-install -> init-mods-end
init-mods -> init-mods-package-install
init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end
init-custom-files -> init-services
init-config -> init-transmission-config

View File

@@ -2,11 +2,12 @@
# shellcheck shell=bash
BLOCKLIST_ENABLED=$(jq -r '.["blocklist-enabled"]' /config/settings.json)
PORT=$(jq '.["rpc-port"]' /config/settings.json)
if [[ "$BLOCKLIST_ENABLED" == true ]]; then
if [[ -n "$USER" ]] && [[ -n "$PASS" ]]; then
/usr/bin/transmission-remote -n "$USER":"$PASS" --blocklist-update
/usr/bin/transmission-remote 127.0.0.1:${PORT:-9091} -n "$USER":"$PASS" --blocklist-update
else
/usr/bin/transmission-remote --blocklist-update
/usr/bin/transmission-remote 127.0.0.1:${PORT:-9091} --blocklist-update
fi
fi

View File

@@ -2,11 +2,12 @@
# shellcheck shell=bash
pid=$(pidof transmission-daemon)
PORT=$(jq '.["rpc-port"]' /config/settings.json)
if [[ -n "$USER" ]] && [[ -n "$PASS" ]]; then
/usr/bin/transmission-remote -n "$USER":"$PASS" --exit
/usr/bin/transmission-remote 127.0.0.1:${PORT:-9091} -n "$USER":"$PASS" --exit
else
/usr/bin/transmission-remote --exit
/usr/bin/transmission-remote 127.0.0.1:${PORT:-9091} --exit
fi
tail --pid=${pid} -f /dev/null