Compare commits

...

35 Commits

Author SHA1 Message Date
LinuxServer-CI
7f9835b43f Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-07-05 03:53:44 +00:00
LinuxServer-CI
f3ac0dd394 Bot Updating Templated Files 2025-07-05 03:49:27 +00:00
LinuxServer-CI
0168126729 Bot Updating Templated Files 2025-07-05 03:48:01 +00:00
LinuxServer-CI
0e55f7b67e Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-06-28 03:48:42 +00:00
LinuxServer-CI
b52e35e494 Bot Updating Package Versions
Some checks failed
Mark stale issues and pull requests / stale (push) Has been cancelled
External Trigger Scheduler / external-trigger-scheduler (push) Has been cancelled
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-06-21 03:48:40 +00:00
LinuxServer-CI
ef2a5f2077 Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-06-16 17:39:01 +00:00
Adam
0c910b9a7b Merge pull request #570 from jlssmt/add-tinyauth 2025-06-16 18:34:21 +01:00
LinuxServer-CI
9ab0f727d0 Bot Updating Package Versions 2025-06-14 03:47:18 +00:00
LinuxServer-CI
adcdf5d748 Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-06-12 20:30:24 +00:00
LinuxServer-CI
7a38630c0b Bot Updating Package Versions 2025-06-12 20:26:05 +00:00
LinuxServer-CI
6b6e7b74b5 Bot Updating Package Versions 2025-06-11 01:48:03 +00:00
LinuxServer-CI
3b6d0484b9 Bot Updating Templated Files 2025-06-11 01:43:55 +00:00
jlssmt
0d952bcee1 add tinyauth 2025-06-08 17:47:30 +02:00
LinuxServer-CI
35deb8f654 Bot Updating Package Versions 2025-06-07 03:47:21 +00:00
LinuxServer-CI
2ec9bacf0c Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-05-31 03:44:37 +00:00
LinuxServer-CI
bcbad63147 Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-05-24 03:40:40 +00:00
LinuxServer-CI
962c2322eb Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-05-17 03:43:00 +00:00
LinuxServer-CI
dd8fd8ad05 Bot Updating Templated Files 2025-05-17 03:39:19 +00:00
LinuxServer-CI
b818ae1f58 Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-05-10 03:39:03 +00:00
LinuxServer-CI
43466fe490 Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-05-08 21:11:05 +00:00
LinuxServer-CI
3781360d72 Bot Updating Templated Files 2025-05-08 21:05:17 +00:00
Eric Nemchik
a01e4aca17 Merge pull request #564 from linuxserver/max-log-backups 2025-05-08 16:03:57 -05:00
Eric Nemchik
b87c9d2886 Update readme-vars.yml 2025-05-05 15:25:41 -05:00
Eric Nemchik
08aa9cc07b Disable Certbot's built in log rotation 2025-05-05 15:24:38 -05:00
LinuxServer-CI
23e05f1f7a Bot Updating Package Versions 2025-05-03 03:40:16 +00:00
LinuxServer-CI
f80d14bf8c Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-04-26 03:36:46 +00:00
LinuxServer-CI
7e7e22753c Bot Updating Package Versions
Some checks failed
Package Trigger Scheduler / package-trigger-scheduler (push) Has been cancelled
2025-04-19 03:33:00 +00:00
LinuxServer-CI
9f76c031fe Bot Updating Package Versions 2025-04-12 03:34:26 +00:00
LinuxServer-CI
2b2ccf9e9a Bot Updating Package Versions 2025-04-11 03:24:16 +00:00
Eric Nemchik
54ed99d81a Merge pull request #554 from linuxserver/remove-old-authelia
chore: ⚰️ remove authelia 4.37 and below comments
2025-04-10 22:18:39 -05:00
LinuxServer-CI
a3f72898ff Bot Updating Package Versions 2025-04-08 01:29:27 +00:00
Eric Nemchik
8b8d33a81a Merge branch 'master' into remove-old-authelia 2025-04-05 15:43:54 -05:00
Eric Nemchik
563ae7e9c5 chore: authentik/authelia consistency
Signed-off-by: GitHub <noreply@github.com>
2025-03-25 21:30:10 +00:00
Eric Nemchik
8caf2a1841 feat: 💩 proxy pass the full authelia auth request subpath
Signed-off-by: GitHub <noreply@github.com>
2025-03-25 21:28:54 +00:00
Eric Nemchik
15a3bc9d2c chore: ⚰️ remove authelia 4.37 and below comments
Signed-off-by: GitHub <noreply@github.com>
2025-03-25 19:50:00 +00:00
18 changed files with 473 additions and 420 deletions

View File

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

View File

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

View File

@@ -3,6 +3,9 @@ name: External Trigger Main
on: on:
workflow_dispatch: workflow_dispatch:
permissions:
contents: read
jobs: jobs:
external-trigger-master: external-trigger-master:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -43,8 +46,8 @@ jobs:
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
exit 1 exit 1
fi fi
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g') EXT_RELEASE_SANITIZED=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "External version: \`${EXT_RELEASE}\`" >> $GITHUB_STEP_SUMMARY echo "Sanitized external version: \`${EXT_RELEASE_SANITIZED}\`" >> $GITHUB_STEP_SUMMARY
echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY
image="linuxserver/swag" image="linuxserver/swag"
tag="latest" tag="latest"
@@ -100,8 +103,8 @@ jobs:
exit 1 exit 1
fi fi
echo "Last pushed version: \`${IMAGE_VERSION}\`" >> $GITHUB_STEP_SUMMARY echo "Last pushed version: \`${IMAGE_VERSION}\`" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE}" == "${IMAGE_VERSION}" ]; then if [ "${EXT_RELEASE_SANITIZED}" == "${IMAGE_VERSION}" ]; then
echo "Version \`${EXT_RELEASE}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY echo "Sanitized version \`${EXT_RELEASE_SANITIZED}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
exit 0 exit 0
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-swag/job/master/lastBuild/api/json | jq -r '.building') == "true" ]; then elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-swag/job/master/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 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 }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
else else
printf "\n## Trigger new build\n\n" >> $GITHUB_STEP_SUMMARY 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 if [[ "${artifacts_found}" == "true" ]]; then
echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY
fi fi
@@ -136,7 +139,7 @@ jobs:
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \ --data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit" --data-urlencode "Submit=Submit"
echo "**** Notifying Discord ****" echo "**** Notifying Discord ****"
TRIGGER_REASON="A version change was detected for swag tag latest. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}" TRIGGER_REASON="A version change was detected for swag 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, 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"}], "description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }} "username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}

View File

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

View File

@@ -2,8 +2,14 @@ name: Greetings
on: [pull_request_target, issues] on: [pull_request_target, issues]
permissions:
contents: read
jobs: jobs:
greeting: greeting:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/first-interaction@v1 - uses: actions/first-interaction@v1

View File

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

1
.gitignore vendored
View File

@@ -1 +1,2 @@
.idea
.jenkins-external .jenkins-external

7
Jenkinsfile vendored
View File

@@ -95,7 +95,11 @@ pipeline {
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/' env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID 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' 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 sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" ''' echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
script{ script{
@@ -780,7 +784,7 @@ pipeline {
docker run --rm \ docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \ -v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \ -v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \ ghcr.io/anchore/syft:${SYFT_IMAGE_TAG} \
${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt ${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 ) 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" echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
@@ -890,6 +894,7 @@ pipeline {
-e WEB_AUTH=\"${CI_AUTH}\" \ -e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \ -e WEB_PATH=\"${CI_WEBPATH}\" \
-e NODE_NAME=\"${NODE_NAME}\" \ -e NODE_NAME=\"${NODE_NAME}\" \
-e SYFT_IMAGE_TAG=\"${CI_SYFT_IMAGE_TAG:-${SYFT_IMAGE_TAG}}\" \
-t ghcr.io/linuxserver/ci:latest \ -t ghcr.io/linuxserver/ci:latest \
python3 test_build.py''' 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!") [![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.") [![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.") [![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.") [![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") [![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! * [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. * [Discord](https://linuxserver.io/discord) - realtime support / chat with the community and the team.
* [Discourse](https://discourse.linuxserver.io) - post on our community forum. * [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. * [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 * [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
@@ -54,7 +52,6 @@ The architectures supported by this image are:
| :----: | :----: | ---- | | :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> | | x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> | | arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ❌ | |
## Application Setup ## Application Setup
@@ -423,6 +420,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions ## Versions
* **05.05.25:** - Disable Certbot's built in log rotation.
* **19.01.25:** - Add [Auto Reload](https://github.com/linuxserver/docker-mods/tree/swag-auto-reload) functionality to SWAG. * **19.01.25:** - Add [Auto Reload](https://github.com/linuxserver/docker-mods/tree/swag-auto-reload) functionality to SWAG.
* **17.12.24:** - Rebase to Alpine 3.21. * **17.12.24:** - Rebase to Alpine 3.21.
* **21.10.24:** - Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are set in /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns). * **21.10.24:** - Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are set in /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns).

View File

@@ -1,365 +1,374 @@
NAME VERSION TYPE NAME VERSION TYPE
acl-libs 2.3.2-r1 apk Simple Launcher 1.1.0.14 binary (+5 duplicates)
acme 3.3.0 python acl-libs 2.3.2-r1 apk
alpine-baselayout 3.6.8-r1 apk acme 4.1.1 python
alpine-baselayout-data 3.6.8-r1 apk alpine-baselayout 3.6.8-r1 apk
alpine-keys 2.5-r0 apk alpine-baselayout-data 3.6.8-r1 apk
alpine-release 3.21.3-r0 apk alpine-keys 2.5-r0 apk
aom-libs 3.11.0-r0 apk alpine-release 3.21.3-r0 apk
apache2-utils 2.4.62-r0 apk aom-libs 3.11.0-r0 apk
apk-tools 2.14.6-r3 apk apache2-utils 2.4.62-r0 apk
apr 1.7.5-r0 apk apk-tools 2.14.6-r3 apk
apr-util 1.6.3-r1 apk apr 1.7.5-r0 apk
argon2-libs 20190702-r5 apk apr-util 1.6.3-r1 apk
attrs 25.3.0 python argon2-libs 20190702-r5 apk
autocommand 2.2.2 python attrs 25.3.0 python
azure-common 1.1.28 python autocommand 2.2.2 python
azure-core 1.33.0 python azure-common 1.1.28 python
azure-identity 1.21.0 python azure-core 1.35.0 python
azure-mgmt-core 1.5.0 python azure-identity 1.23.0 python
azure-mgmt-dns 8.2.0 python azure-mgmt-core 1.6.0 python
backports-tarfile 1.2.0 python azure-mgmt-dns 8.2.0 python
bash 5.2.37-r0 apk backports-tarfile 1.2.0 python
beautifulsoup4 4.13.3 python bash 5.2.37-r0 apk
boto3 1.37.28 python beautifulsoup4 4.13.4 python
botocore 1.37.28 python boto3 1.39.3 python
brotli-libs 1.1.0-r2 apk botocore 1.39.3 python
bs4 0.0.2 python brotli-libs 1.1.0-r2 apk
busybox 1.37.0-r12 apk bs4 0.0.2 python
busybox-binsh 1.37.0-r12 apk busybox 1.37.0-r12 apk
c-ares 1.34.3-r0 apk busybox-binsh 1.37.0-r12 apk
c-client 2007f-r15 apk c-ares 1.34.5-r0 apk
ca-certificates 20241121-r1 apk c-client 2007f-r15 apk
ca-certificates-bundle 20241121-r1 apk ca-certificates 20241121-r1 apk
cachetools 5.5.2 python ca-certificates-bundle 20241121-r1 apk
catatonit 0.2.0-r0 apk cachetools 5.5.2 python
certbot 3.3.0 python catatonit 0.2.0-r0 apk
certbot-dns-acmedns 0.1.0 python certbot 4.1.1 python
certbot-dns-aliyun 2.0.0 python certbot-dns-acmedns 0.1.0 python
certbot-dns-azure 2.6.1 python certbot-dns-aliyun 2.0.0 python
certbot-dns-bunny 3.0.0 python certbot-dns-azure 1.5.0 python
certbot-dns-cloudflare 3.3.0 python certbot-dns-bunny 3.0.0 python
certbot-dns-cpanel 0.4.0 python certbot-dns-cloudflare 4.1.1 python
certbot-dns-desec 1.2.1 python certbot-dns-cpanel 0.4.0 python
certbot-dns-digitalocean 3.3.0 python certbot-dns-desec 1.2.1 python
certbot-dns-directadmin 1.0.14 python certbot-dns-digitalocean 4.1.1 python
certbot-dns-dnsimple 3.3.0 python certbot-dns-directadmin 1.0.15 python
certbot-dns-dnsmadeeasy 3.3.0 python certbot-dns-dnsimple 4.1.1 python
certbot-dns-dnspod 0.1.0 python certbot-dns-dnsmadeeasy 4.1.1 python
certbot-dns-do 0.31.0 python certbot-dns-dnspod 0.1.0 python
certbot-dns-domeneshop 0.2.9 python certbot-dns-do 0.31.0 python
certbot-dns-dreamhost 1.0 python certbot-dns-domeneshop 0.2.9 python
certbot-dns-duckdns 1.5 python certbot-dns-dreamhost 1.0 python
certbot-dns-dynudns 0.0.6 python certbot-dns-duckdns 1.6 python
certbot-dns-freedns 0.2.0 python certbot-dns-dynudns 0.0.6 python
certbot-dns-gehirn 3.3.0 python certbot-dns-freedns 0.2.0 python
certbot-dns-glesys 2.1.0 python certbot-dns-gehirn 4.1.1 python
certbot-dns-godaddy 2.8.0 python certbot-dns-glesys 2.1.0 python
certbot-dns-google 3.3.0 python certbot-dns-godaddy 2.8.0 python
certbot-dns-he 1.0.0 python certbot-dns-google 4.1.1 python
certbot-dns-hetzner 2.0.1 python certbot-dns-he 1.0.0 python
certbot-dns-infomaniak 0.2.3 python certbot-dns-hetzner 2.0.1 python
certbot-dns-inwx 3.0.2 python certbot-dns-infomaniak 0.2.3 python
certbot-dns-ionos 2024.11.9 python certbot-dns-inwx 3.0.3 python
certbot-dns-linode 3.3.0 python certbot-dns-ionos 2024.11.9 python
certbot-dns-loopia 1.0.1 python certbot-dns-linode 4.1.1 python
certbot-dns-luadns 3.3.0 python certbot-dns-loopia 1.0.1 python
certbot-dns-namecheap 1.0.0 python certbot-dns-luadns 4.1.1 python
certbot-dns-netcup 1.4.4 python certbot-dns-namecheap 1.0.0 python
certbot-dns-njalla 2.0.2 python certbot-dns-netcup 1.4.4 python
certbot-dns-nsone 3.3.0 python certbot-dns-njalla 2.0.2 python
certbot-dns-ovh 3.3.0 python certbot-dns-nsone 4.1.1 python
certbot-dns-porkbun 0.9.1 python certbot-dns-ovh 4.1.1 python
certbot-dns-rfc2136 3.3.0 python certbot-dns-porkbun 0.10.1 python
certbot-dns-route53 3.3.0 python certbot-dns-rfc2136 4.1.1 python
certbot-dns-sakuracloud 3.3.0 python certbot-dns-route53 4.1.1 python
certbot-dns-standalone 1.2.1 python certbot-dns-sakuracloud 4.1.1 python
certbot-dns-transip 0.5.2 python certbot-dns-standalone 1.2.1 python
certbot-dns-vultr 1.1.0 python certbot-dns-transip 0.5.2 python
certbot-plugin-gandi 1.5.0 python certbot-dns-vultr 1.1.0 python
certifi 2025.1.31 python certbot-plugin-gandi 1.5.0 python
cffi 1.17.1 python certifi 2025.6.15 python
charset-normalizer 3.4.1 python cffi 1.17.1 python
cloudflare 2.19.4 python charset-normalizer 3.4.2 python
composer 2.8.7 binary cli UNKNOWN binary
configargparse 1.7 python cli-32 UNKNOWN binary
configobj 5.0.9 python cli-64 UNKNOWN binary
coreutils 9.5-r2 apk cli-arm64 UNKNOWN binary
coreutils-env 9.5-r2 apk cloudflare 2.19.4 python
coreutils-fmt 9.5-r2 apk composer 2.8.9 binary
coreutils-sha512sum 9.5-r2 apk configargparse 1.7.1 python
cryptography 44.0.2 python configobj 5.0.9 python
curl 8.12.1-r1 apk coreutils 9.5-r2 apk
distro 1.9.0 python coreutils-env 9.5-r2 apk
dns-lexicon 3.20.1 python coreutils-fmt 9.5-r2 apk
dnslib 0.9.26 python coreutils-sha512sum 9.5-r2 apk
dnspython 2.7.0 python cryptography 45.0.5 python
domeneshop 0.4.4 python curl 8.12.1-r1 apk
fail2ban 1.1.0 python distro 1.9.0 python
fail2ban 1.1.0-r2 apk dns-lexicon 3.21.1 python
fail2ban-pyc 1.1.0-r2 apk dnslib 0.9.26 python
filelock 3.18.0 python dnspython 2.7.0 python
findutils 4.10.0-r0 apk domeneshop 0.4.4 python
fontconfig 2.15.0-r1 apk fail2ban 1.1.0 python
freetype 2.13.3-r0 apk fail2ban 1.1.0-r2 apk
future 1.0.0 python fail2ban-pyc 1.1.0-r2 apk
gdbm 1.24-r0 apk filelock 3.18.0 python
git 2.47.2-r0 apk findutils 4.10.0-r0 apk
git-init-template 2.47.2-r0 apk fontconfig 2.15.0-r1 apk
git-perl 2.47.2-r0 apk freetype 2.13.3-r0 apk
gmp 6.3.0-r2 apk future 1.0.0 python
gnupg 2.4.7-r0 apk gdbm 1.24-r0 apk
gnupg-dirmngr 2.4.7-r0 apk git 2.47.2-r0 apk
gnupg-gpgconf 2.4.7-r0 apk git-init-template 2.47.2-r0 apk
gnupg-keyboxd 2.4.7-r0 apk git-perl 2.47.2-r0 apk
gnupg-utils 2.4.7-r0 apk gmp 6.3.0-r2 apk
gnupg-wks-client 2.4.7-r0 apk gnupg 2.4.7-r0 apk
gnutls 3.8.8-r0 apk gnupg-dirmngr 2.4.7-r0 apk
google-api-core 2.24.2 python gnupg-gpgconf 2.4.7-r0 apk
google-api-python-client 2.166.0 python gnupg-keyboxd 2.4.7-r0 apk
google-auth 2.38.0 python gnupg-utils 2.4.7-r0 apk
google-auth-httplib2 0.2.0 python gnupg-wks-client 2.4.7-r0 apk
googleapis-common-protos 1.69.2 python gnutls 3.8.8-r0 apk
gpg 2.4.7-r0 apk google-api-core 2.25.1 python
gpg-agent 2.4.7-r0 apk google-api-python-client 2.175.0 python
gpg-wks-server 2.4.7-r0 apk google-auth 2.40.3 python
gpgsm 2.4.7-r0 apk google-auth-httplib2 0.2.0 python
gpgv 2.4.7-r0 apk googleapis-common-protos 1.70.0 python
httplib2 0.22.0 python gpg 2.4.7-r0 apk
icu-data-en 74.2-r0 apk gpg-agent 2.4.7-r0 apk
icu-libs 74.2-r0 apk gpg-wks-server 2.4.7-r0 apk
idna 3.10 python gpgsm 2.4.7-r0 apk
importlib-metadata 8.0.0 python gpgv 2.4.7-r0 apk
inflect 7.3.1 python gui UNKNOWN binary
inotify-tools 4.23.9.0-r0 apk gui-32 UNKNOWN binary
inotify-tools-libs 4.23.9.0-r0 apk gui-64 UNKNOWN binary
inwx-domrobot 3.2.0 python gui-arm64 UNKNOWN binary
iptables 1.8.11-r1 apk httplib2 0.22.0 python
iptables-legacy 1.8.11-r1 apk icu-data-en 74.2-r0 apk
isodate 0.7.2 python icu-libs 74.2-r0 apk
jaraco-collections 5.1.0 python idna 3.10 python
jaraco-context 5.3.0 python importlib-metadata 8.0.0 python
jaraco-functools 4.0.1 python inflect 7.3.1 python
jaraco-text 3.12.1 python inotify-tools 4.23.9.0-r0 apk
jinja2 3.1.6 python inotify-tools-libs 4.23.9.0-r0 apk
jmespath 1.0.1 python inwx-domrobot 3.2.0 python
josepy 1.15.0 python iptables 1.8.11-r1 apk
jq 1.7.1-r0 apk iptables-legacy 1.8.11-r1 apk
jsonlines 4.0.0 python isodate 0.7.2 python
jsonpickle 4.0.5 python jaraco-collections 5.1.0 python
libassuan 2.5.7-r0 apk jaraco-context 5.3.0 python
libattr 2.5.2-r2 apk jaraco-functools 4.0.1 python
libavif 1.0.4-r0 apk jaraco-text 3.12.1 python
libbsd 0.12.2-r0 apk jinja2 3.1.6 python
libbz2 1.0.8-r6 apk jmespath 1.0.1 python
libcrypto3 3.3.3-r0 apk josepy 2.0.0 python
libcurl 8.12.1-r1 apk jq 1.7.1-r0 apk
libdav1d 1.5.0-r0 apk jsonlines 4.0.0 python
libedit 20240808.3.1-r0 apk jsonpickle 4.1.1 python
libevent 2.1.12-r7 apk libassuan 2.5.7-r0 apk
libexpat 2.7.0-r0 apk libattr 2.5.2-r2 apk
libffi 3.4.7-r0 apk libavif 1.0.4-r0 apk
libgcc 14.2.0-r4 apk libbsd 0.12.2-r0 apk
libgcrypt 1.10.3-r1 apk libbz2 1.0.8-r6 apk
libgd 2.3.3-r9 apk libcrypto3 3.3.3-r0 apk
libgpg-error 1.51-r0 apk libcurl 8.12.1-r1 apk
libice 1.1.1-r6 apk libdav1d 1.5.0-r0 apk
libidn2 2.3.7-r0 apk libedit 20240808.3.1-r0 apk
libintl 0.22.5-r0 apk libevent 2.1.12-r7 apk
libip4tc 1.8.11-r1 apk libexpat 2.7.0-r0 apk
libip6tc 1.8.11-r1 apk libffi 3.4.7-r0 apk
libjpeg-turbo 3.0.4-r0 apk libgcc 14.2.0-r4 apk
libksba 1.6.7-r0 apk libgcrypt 1.10.3-r1 apk
libldap 2.6.8-r0 apk libgd 2.3.3-r9 apk
libmaxminddb-libs 1.9.1-r0 apk libgpg-error 1.51-r0 apk
libmcrypt 2.5.8-r10 apk libice 1.1.1-r6 apk
libmd 1.1.0-r0 apk libidn2 2.3.7-r0 apk
libmemcached-libs 1.1.4-r1 apk libintl 0.22.5-r0 apk
libmnl 1.0.5-r2 apk libip4tc 1.8.11-r1 apk
libncursesw 6.5_p20241006-r3 apk libip6tc 1.8.11-r1 apk
libnftnl 1.2.8-r0 apk libjpeg-turbo 3.0.4-r0 apk
libpanelw 6.5_p20241006-r3 apk libksba 1.6.7-r0 apk
libpng 1.6.47-r0 apk libldap 2.6.8-r0 apk
libpq 17.4-r0 apk libmaxminddb-libs 1.9.1-r0 apk
libproc2 4.0.4-r2 apk libmcrypt 2.5.8-r10 apk
libpsl 0.21.5-r3 apk libmd 1.1.0-r0 apk
libsasl 2.1.28-r8 apk libmemcached-libs 1.1.4-r1 apk
libseccomp 2.5.5-r1 apk libmnl 1.0.5-r2 apk
libsharpyuv 1.4.0-r0 apk libncursesw 6.5_p20241006-r3 apk
libsm 1.2.4-r4 apk libnftnl 1.2.8-r0 apk
libsodium 1.0.20-r0 apk libpanelw 6.5_p20241006-r3 apk
libssl3 3.3.3-r0 apk libpng 1.6.47-r0 apk
libstdc++ 14.2.0-r4 apk libpq 17.5-r0 apk
libtasn1 4.20.0-r0 apk libproc2 4.0.4-r2 apk
libunistring 1.2-r0 apk libpsl 0.21.5-r3 apk
libuuid 2.40.4-r0 apk libsasl 2.1.28-r8 apk
libwebp 1.4.0-r0 apk libseccomp 2.5.5-r1 apk
libx11 1.8.10-r0 apk libsharpyuv 1.4.0-r0 apk
libxau 1.0.11-r4 apk libsm 1.2.4-r4 apk
libxcb 1.16.1-r0 apk libsodium 1.0.20-r0 apk
libxdmcp 1.1.5-r1 apk libssl3 3.3.3-r0 apk
libxext 1.3.6-r2 apk libstdc++ 14.2.0-r4 apk
libxml2 2.13.4-r5 apk libtasn1 4.20.0-r0 apk
libxpm 3.5.17-r0 apk libunistring 1.2-r0 apk
libxslt 1.1.42-r2 apk libuuid 2.40.4-r1 apk
libxt 1.3.1-r0 apk libwebp 1.4.0-r0 apk
libxtables 1.8.11-r1 apk libx11 1.8.10-r0 apk
libzip 1.11.2-r0 apk libxau 1.0.11-r4 apk
linux-pam 1.6.1-r1 apk libxcb 1.16.1-r0 apk
logrotate 3.21.0-r1 apk libxdmcp 1.1.5-r1 apk
loopialib 0.2.0 python libxext 1.3.6-r2 apk
lxml 5.3.1 python libxml2 2.13.4-r6 apk
lz4-libs 1.10.0-r0 apk libxpm 3.5.17-r0 apk
markupsafe 3.0.2 python libxslt 1.1.42-r2 apk
memcached 1.6.32-r0 apk libxt 1.3.1-r0 apk
mock 5.2.0 python libxtables 1.8.11-r1 apk
more-itertools 10.3.0 python libzip 1.11.2-r0 apk
mpdecimal 4.0.0-r0 apk linux-pam 1.6.1-r1 apk
msal 1.32.0 python logrotate 3.21.0-r1 apk
msal-extensions 1.3.1 python loopialib 0.2.0 python
musl 1.2.5-r9 apk lxml 6.0.0 python
musl-utils 1.2.5-r9 apk lz4-libs 1.10.0-r0 apk
my-test-package 1.0 python markupsafe 3.0.2 python
nano 8.2-r0 apk memcached 1.6.32-r0 apk
ncurses-terminfo-base 6.5_p20241006-r3 apk mock 5.2.0 python
netcat-openbsd 1.226.1.1-r0 apk more-itertools 10.3.0 python
nettle 3.10-r1 apk mpdecimal 4.0.0-r0 apk
nghttp2-libs 1.64.0-r0 apk msal 1.32.3 python
nginx 1.26.3-r0 apk msal-extensions 1.3.1 python
nginx-mod-devel-kit 1.26.3-r0 apk musl 1.2.5-r9 apk
nginx-mod-http-brotli 1.26.3-r0 apk musl-utils 1.2.5-r9 apk
nginx-mod-http-dav-ext 1.26.3-r0 apk my-test-package 1.0 python
nginx-mod-http-echo 1.26.3-r0 apk nano 8.2-r0 apk
nginx-mod-http-fancyindex 1.26.3-r0 apk ncurses-terminfo-base 6.5_p20241006-r3 apk
nginx-mod-http-geoip2 1.26.3-r0 apk netcat-openbsd 1.226.1.1-r0 apk
nginx-mod-http-headers-more 1.26.3-r0 apk nettle 3.10-r1 apk
nginx-mod-http-image-filter 1.26.3-r0 apk nghttp2-libs 1.64.0-r0 apk
nginx-mod-http-perl 1.26.3-r0 apk nginx 1.26.3-r0 apk
nginx-mod-http-redis2 1.26.3-r0 apk nginx-mod-devel-kit 1.26.3-r0 apk
nginx-mod-http-set-misc 1.26.3-r0 apk nginx-mod-http-brotli 1.26.3-r0 apk
nginx-mod-http-upload-progress 1.26.3-r0 apk nginx-mod-http-dav-ext 1.26.3-r0 apk
nginx-mod-http-xslt-filter 1.26.3-r0 apk nginx-mod-http-echo 1.26.3-r0 apk
nginx-mod-mail 1.26.3-r0 apk nginx-mod-http-fancyindex 1.26.3-r0 apk
nginx-mod-rtmp 1.26.3-r0 apk nginx-mod-http-geoip2 1.26.3-r0 apk
nginx-mod-stream 1.26.3-r0 apk nginx-mod-http-headers-more 1.26.3-r0 apk
nginx-mod-stream-geoip2 1.26.3-r0 apk nginx-mod-http-image-filter 1.26.3-r0 apk
nginx-vim 1.26.3-r0 apk nginx-mod-http-perl 1.26.3-r0 apk
npth 1.6-r4 apk nginx-mod-http-redis2 1.26.3-r0 apk
oniguruma 6.9.9-r0 apk nginx-mod-http-set-misc 1.26.3-r0 apk
openssl 3.3.3-r0 apk nginx-mod-http-upload-progress 1.26.3-r0 apk
p11-kit 0.25.5-r2 apk nginx-mod-http-xslt-filter 1.26.3-r0 apk
packaging 24.2 python nginx-mod-mail 1.26.3-r0 apk
parsedatetime 2.6 python nginx-mod-rtmp 1.26.3-r0 apk
pcre 8.45-r3 apk nginx-mod-stream 1.26.3-r0 apk
pcre2 10.43-r0 apk nginx-mod-stream-geoip2 1.26.3-r0 apk
perl 5.40.1-r0 apk nginx-vim 1.26.3-r0 apk
perl-error 0.17029-r2 apk npth 1.6-r4 apk
perl-git 2.47.2-r0 apk oniguruma 6.9.9-r0 apk
php83 8.3.19-r0 apk openssl 3.3.3-r0 apk
php83-bcmath 8.3.19-r0 apk p11-kit 0.25.5-r2 apk
php83-bz2 8.3.19-r0 apk packaging 24.2 python
php83-common 8.3.19-r0 apk parsedatetime 2.6 python
php83-ctype 8.3.19-r0 apk pcre 8.45-r3 apk
php83-curl 8.3.19-r0 apk pcre2 10.43-r0 apk
php83-dom 8.3.19-r0 apk perl 5.40.1-r1 apk
php83-exif 8.3.19-r0 apk perl-error 0.17029-r2 apk
php83-fileinfo 8.3.19-r0 apk perl-git 2.47.2-r0 apk
php83-fpm 8.3.19-r0 apk php83 8.3.19-r0 apk
php83-ftp 8.3.19-r0 apk php83-bcmath 8.3.19-r0 apk
php83-gd 8.3.19-r0 apk php83-bz2 8.3.19-r0 apk
php83-gmp 8.3.19-r0 apk php83-common 8.3.19-r0 apk
php83-iconv 8.3.19-r0 apk php83-ctype 8.3.19-r0 apk
php83-imap 8.3.19-r0 apk php83-curl 8.3.19-r0 apk
php83-intl 8.3.19-r0 apk php83-dom 8.3.19-r0 apk
php83-ldap 8.3.19-r0 apk php83-exif 8.3.19-r0 apk
php83-mbstring 8.3.19-r0 apk php83-fileinfo 8.3.19-r0 apk
php83-mysqli 8.3.19-r0 apk php83-fpm 8.3.19-r0 apk
php83-mysqlnd 8.3.19-r0 apk php83-ftp 8.3.19-r0 apk
php83-opcache 8.3.19-r0 apk php83-gd 8.3.19-r0 apk
php83-openssl 8.3.19-r0 apk php83-gmp 8.3.19-r0 apk
php83-pdo 8.3.19-r0 apk php83-iconv 8.3.19-r0 apk
php83-pdo_mysql 8.3.19-r0 apk php83-imap 8.3.19-r0 apk
php83-pdo_odbc 8.3.19-r0 apk php83-intl 8.3.19-r0 apk
php83-pdo_pgsql 8.3.19-r0 apk php83-ldap 8.3.19-r0 apk
php83-pdo_sqlite 8.3.19-r0 apk php83-mbstring 8.3.19-r0 apk
php83-pear 8.3.19-r0 apk php83-mysqli 8.3.19-r0 apk
php83-pecl-apcu 5.1.24-r0 apk php83-mysqlnd 8.3.19-r0 apk
php83-pecl-igbinary 3.2.16-r0 apk php83-opcache 8.3.19-r0 apk
php83-pecl-mcrypt 1.0.7-r0 apk php83-openssl 8.3.19-r0 apk
php83-pecl-memcached 3.3.0-r0 apk php83-pdo 8.3.19-r0 apk
php83-pecl-msgpack 3.0.0-r0 apk php83-pdo_mysql 8.3.19-r0 apk
php83-pecl-redis 6.2.0-r0 apk php83-pdo_odbc 8.3.19-r0 apk
php83-pgsql 8.3.19-r0 apk php83-pdo_pgsql 8.3.19-r0 apk
php83-phar 8.3.19-r0 apk php83-pdo_sqlite 8.3.19-r0 apk
php83-posix 8.3.19-r0 apk php83-pear 8.3.19-r0 apk
php83-session 8.3.19-r0 apk php83-pecl-apcu 5.1.24-r0 apk
php83-simplexml 8.3.19-r0 apk php83-pecl-igbinary 3.2.16-r0 apk
php83-soap 8.3.19-r0 apk php83-pecl-mcrypt 1.0.7-r0 apk
php83-sockets 8.3.19-r0 apk php83-pecl-memcached 3.3.0-r0 apk
php83-sodium 8.3.19-r0 apk php83-pecl-msgpack 3.0.0-r0 apk
php83-sqlite3 8.3.19-r0 apk php83-pecl-redis 6.2.0-r0 apk
php83-tokenizer 8.3.19-r0 apk php83-pgsql 8.3.19-r0 apk
php83-xml 8.3.19-r0 apk php83-phar 8.3.19-r0 apk
php83-xmlreader 8.3.19-r0 apk php83-posix 8.3.19-r0 apk
php83-xmlwriter 8.3.19-r0 apk php83-session 8.3.19-r0 apk
php83-xsl 8.3.19-r0 apk php83-simplexml 8.3.19-r0 apk
php83-zip 8.3.19-r0 apk php83-soap 8.3.19-r0 apk
pinentry 1.3.1-r0 apk php83-sockets 8.3.19-r0 apk
pip 25.0.1 python php83-sodium 8.3.19-r0 apk
pkb-client 2.0.0 python php83-sqlite3 8.3.19-r0 apk
platformdirs 4.2.2 python php83-tokenizer 8.3.19-r0 apk
popt 1.19-r4 apk php83-xml 8.3.19-r0 apk
procps-ng 4.0.4-r2 apk php83-xmlreader 8.3.19-r0 apk
proto-plus 1.26.1 python php83-xmlwriter 8.3.19-r0 apk
protobuf 6.30.2 python php83-xsl 8.3.19-r0 apk
pyacmedns 0.4 python php83-zip 8.3.19-r0 apk
pyasn1 0.6.1 python pinentry 1.3.1-r0 apk
pyasn1-modules 0.4.2 python pip 25.1.1 python
pyc 3.12.9-r0 apk pkb-client 2.2.0 python
pycparser 2.22 python platformdirs 4.2.2 python
pyjwt 2.10.1 python popt 1.19-r4 apk
pynamecheap 0.0.3 python procps-ng 4.0.4-r2 apk
pyopenssl 25.0.0 python proto-plus 1.26.1 python
pyotp 2.9.0 python protobuf 6.31.1 python
pyparsing 3.2.3 python pyacmedns 0.4 python
pyrfc3339 2.0.1 python pyasn1 0.6.1 python
python-dateutil 2.9.0.post0 python pyasn1-modules 0.4.2 python
python-digitalocean 1.17.0 python pyc 3.12.11-r0 apk
python-transip 0.6.0 python pycparser 2.22 python
python3 3.12.9-r0 apk pyjwt 2.10.1 python
python3-pyc 3.12.9-r0 apk pynamecheap 0.0.3 python
python3-pycache-pyc0 3.12.9-r0 apk pyopenssl 25.1.0 python
pytz 2025.2 python pyotp 2.9.0 python
pyyaml 6.0.2 python pyparsing 3.2.3 python
readline 8.2.13-r0 apk pyrfc3339 2.0.1 python
requests 2.32.3 python python-dateutil 2.9.0.post0 python
requests-file 2.1.0 python python-digitalocean 1.17.0 python
requests-mock 1.12.1 python python-transip 0.6.0 python
rsa 4.9 python python3 3.12.11-r0 apk
s3transfer 0.11.4 python python3-pyc 3.12.11-r0 apk
scanelf 1.3.8-r1 apk python3-pycache-pyc0 3.12.11-r0 apk
setuptools 78.1.0 python pytz 2025.2 python
shadow 4.16.0-r1 apk pyyaml 6.0.2 python
six 1.17.0 python readline 8.2.13-r0 apk
skalibs-libs 2.14.3.0-r0 apk requests 2.32.4 python
soupsieve 2.6 python requests-file 2.1.0 python
sqlite-libs 3.48.0-r0 apk requests-mock 1.12.1 python
ssl_client 1.37.0-r12 apk rsa 4.9.1 python
tiff 4.7.0-r0 apk s3transfer 0.13.0 python
tldextract 5.1.3 python scanelf 1.3.8-r1 apk
tomli 2.0.1 python setuptools 80.9.0 python
typeguard 4.3.0 python shadow 4.16.0-r1 apk
typing-extensions 4.12.2 python six 1.17.0 python
typing-extensions 4.13.1 python skalibs-libs 2.14.3.0-r0 apk
tzdata 2025b-r0 apk soupsieve 2.7 python
unixodbc 2.3.12-r0 apk sqlite-libs 3.48.0-r2 apk
uritemplate 4.1.1 python ssl_client 1.37.0-r12 apk
urllib3 2.3.0 python tiff 4.7.0-r0 apk
utmps-libs 0.1.2.3-r2 apk tldextract 5.3.0 python
wheel 0.45.1 python (+1 duplicate) tomli 2.0.1 python
whois 5.5.23-r0 apk typeguard 4.3.0 python
xz-libs 5.6.3-r1 apk typing-extensions 4.12.2 python
zipp 3.19.2 python typing-extensions 4.14.1 python
zlib 1.3.1-r2 apk tzdata 2025b-r0 apk
zope-interface 7.2 python unixodbc 2.3.12-r0 apk
zstd-libs 1.5.6-r2 apk uritemplate 4.2.0 python
urllib3 2.5.0 python
utmps-libs 0.1.2.3-r2 apk
wheel 0.45.1 python (+1 duplicate)
whois 5.5.23-r0 apk
xz-libs 5.6.3-r1 apk
zipp 3.19.2 python
zlib 1.3.1-r2 apk
zope-interface 7.2 python
zstd-libs 1.5.6-r2 apk

View File

@@ -164,6 +164,7 @@ init_diagram: |
init-outdated-config -> init-config-end init-outdated-config -> init-config-end
init-config -> init-crontab-config init-config -> init-crontab-config
init-mods-end -> init-custom-files init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile base -> init-envfile
init-swag-samples -> init-fail2ban-config init-swag-samples -> init-fail2ban-config
init-os-end -> init-folders init-os-end -> init-folders
@@ -175,6 +176,7 @@ init_diagram: |
init-samples -> init-nginx init-samples -> init-nginx
init-version-checks -> init-nginx-end init-version-checks -> init-nginx-end
init-adduser -> init-os-end init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end init-envfile -> init-os-end
init-renew -> init-outdated-config init-renew -> init-outdated-config
init-keygen -> init-permissions init-keygen -> init-permissions
@@ -205,6 +207,7 @@ init_diagram: |
"swag:latest" <- Base Images "swag:latest" <- Base Images
# changelog # changelog
changelogs: changelogs:
- {date: "05.05.25:", desc: "Disable Certbot's built in log rotation."}
- {date: "19.01.25:", desc: "Add [Auto Reload](https://github.com/linuxserver/docker-mods/tree/swag-auto-reload) functionality to SWAG."} - {date: "19.01.25:", desc: "Add [Auto Reload](https://github.com/linuxserver/docker-mods/tree/swag-auto-reload) functionality to SWAG."}
- {date: "17.12.24:", desc: "Rebase to Alpine 3.21."} - {date: "17.12.24:", desc: "Rebase to Alpine 3.21."}
- {date: "21.10.24:", desc: "Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are set in /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns)."} - {date: "21.10.24:", desc: "Fix naming issue with Dynu plugin. If you are using Dynu, please make sure your credentials are set in /config/dns-conf/dynu.ini and your DNSPLUGIN variable is set to dynu (not dynudns)."}

View File

@@ -1,13 +1,8 @@
## Version 2024/03/14 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authelia-location.conf.sample ## Version 2025/03/25 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authelia-location.conf.sample
# Make sure that your authelia container is in the same user defined bridge network and is named authelia # Make sure that your authelia container is in the same user defined bridge network and is named authelia
# Rename /config/nginx/proxy-confs/authelia.subdomain.conf.sample to /config/nginx/proxy-confs/authelia.subdomain.conf # Rename /config/nginx/proxy-confs/authelia.subdomain.conf.sample to /config/nginx/proxy-confs/authelia.subdomain.conf
# For authelia 4.37 and below, make sure that the authelia configuration.yml has 'path: "authelia"' defined
# For authelia 4.38 and above, make sure that the authelia configuration.yml has 'address: "tcp://:9091/authelia"' defined
## Send a subrequest to Authelia to verify if the user is authenticated and has permission to access the resource ## Send a subrequest to Authelia to verify if the user is authenticated and has permission to access the resource
## For authelia 4.37 and below, use the following line
# auth_request /authelia/api/verify;
## For authelia 4.38 and above, use the following line
auth_request /authelia/api/authz/auth-request; auth_request /authelia/api/authz/auth-request;
## If the subreqest returns 200 pass to the backend, if the subrequest returns 401 redirect to the portal ## If the subreqest returns 200 pass to the backend, if the subrequest returns 401 redirect to the portal

View File

@@ -1,44 +1,15 @@
## Version 2024/03/16 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authelia-server.conf.sample ## Version 2025/03/25 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authelia-server.conf.sample
# Make sure that your authelia container is in the same user defined bridge network and is named authelia # Make sure that your authelia container is in the same user defined bridge network and is named authelia
# Rename /config/nginx/proxy-confs/authelia.subdomain.conf.sample to /config/nginx/proxy-confs/authelia.subdomain.conf # Rename /config/nginx/proxy-confs/authelia.subdomain.conf.sample to /config/nginx/proxy-confs/authelia.subdomain.conf
# For authelia 4.37 and below, make sure that the authelia configuration.yml has 'path: "authelia"' defined
# For authelia 4.38 and above, make sure that the authelia configuration.yml has 'address: "tcp://:9091/authelia"' defined
# location for authelia subfolder requests # location for authelia auth requests
location ^~ /authelia {
auth_request off; # requests to this subfolder must be accessible without authentication
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_authelia authelia;
proxy_pass http://$upstream_authelia:9091;
}
# location for authelia 4.37 and below auth requests
location = /authelia/api/verify {
internal;
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_authelia authelia;
proxy_pass http://$upstream_authelia:9091;
## Include the Set-Cookie header if present
auth_request_set $set_cookie $upstream_http_set_cookie;
add_header Set-Cookie $set_cookie;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
}
# location for authelia 4.38 and above auth requests
location = /authelia/api/authz/auth-request { location = /authelia/api/authz/auth-request {
internal; internal;
include /config/nginx/proxy.conf; include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf; include /config/nginx/resolver.conf;
set $upstream_authelia authelia; set $upstream_authelia authelia;
proxy_pass http://$upstream_authelia:9091; proxy_pass http://$upstream_authelia:9091/api/authz/auth-request;
## Include the Set-Cookie header if present ## Include the Set-Cookie header if present
auth_request_set $set_cookie $upstream_http_set_cookie; auth_request_set $set_cookie $upstream_http_set_cookie;
@@ -62,11 +33,6 @@ location @authelia_proxy_signin {
## Translate the Location response header from the auth subrequest into a variable ## Translate the Location response header from the auth subrequest into a variable
auth_request_set $signin_url $upstream_http_location; auth_request_set $signin_url $upstream_http_location;
if ($signin_url = '') {
## Set the $signin_url variable
set $signin_url https://$http_host/authelia/?rd=$target_url;
}
## Redirect to login ## Redirect to login
return 302 $signin_url; return 302 $signin_url;
} }

View File

@@ -1,4 +1,4 @@
## Version 2023/04/27 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authentik-server.conf.sample ## Version 2025/03/25 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/authentik-server.conf.sample
# Make sure that your authentik container is in the same user defined bridge network and is named authentik-server # Make sure that your authentik container is in the same user defined bridge network and is named authentik-server
# Rename /config/nginx/proxy-confs/authentik.subdomain.conf.sample to /config/nginx/proxy-confs/authentik.subdomain.conf # Rename /config/nginx/proxy-confs/authentik.subdomain.conf.sample to /config/nginx/proxy-confs/authentik.subdomain.conf
@@ -19,7 +19,7 @@ location = /outpost.goauthentik.io/auth/nginx {
include /config/nginx/proxy.conf; include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf; include /config/nginx/resolver.conf;
set $upstream_authentik authentik-server; set $upstream_authentik authentik-server;
proxy_pass http://$upstream_authentik:9000; proxy_pass http://$upstream_authentik:9000/outpost.goauthentik.io/auth/nginx;
## Include the Set-Cookie header if present ## Include the Set-Cookie header if present
auth_request_set $set_cookie $upstream_http_set_cookie; auth_request_set $set_cookie $upstream_http_set_cookie;

View File

@@ -0,0 +1,9 @@
## Version 2025/06/08 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/tinyauth-location.conf.sample
# Make sure that your tinyauth container is in the same user defined bridge network and is named tinyauth
# Rename /config/nginx/proxy-confs/tinyauth.subdomain.conf.sample to /config/nginx/proxy-confs/tinyauth.subdomain.conf
## Send a subrequest to tinyauth to verify if the user is authenticated and has permission to access the resource
auth_request /tinyauth;
## If the subreqest returns 200 pass to the backend, if the subrequest returns 401 redirect to the portal
error_page 401 = @tinyauth_login;

View File

@@ -0,0 +1,35 @@
## Version 2025/06/08 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/tinyauth-server.conf.sample
# Make sure that your tinyauth container is in the same user defined bridge network and is named tinyauth
# Rename /config/nginx/proxy-confs/tinyauth.subdomain.conf.sample to /config/nginx/proxy-confs/tinyauth.subdomain.conf
# location for tinyauth auth requests
location /tinyauth {
internal;
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_tinyauth tinyauth;
proxy_pass http://$upstream_tinyauth:3000/api/auth/nginx;
proxy_set_header x-forwarded-proto $scheme;
proxy_set_header x-forwarded-host $http_host;
proxy_set_header x-forwarded-uri $request_uri;
}
# virtual location for tinyauth 401 redirects
location @tinyauth_login {
internal;
## Set the $target_url variable based on the original request
set_escape_uri $target_url $scheme://$http_host$request_uri;
## Set the $signin_url variable
set $domain $host;
if ($host ~* "^[^.]+\.([^.]+\..+)$") {
set $domain $1;
}
set $signin_url https://tinyauth.$domain/login?redirect_uri=$target_url;
## Redirect to login
return 302 $signin_url;
}

View File

@@ -59,6 +59,9 @@ grep -qF 'agree-tos' /config/etc/letsencrypt/cli.ini || echo 'agree-tos=true' >>
# Check for broken dns credentials value in cli.ini and remove # Check for broken dns credentials value in cli.ini and remove
sed -i '/dns--credentials/d' /config/etc/letsencrypt/cli.ini sed -i '/dns--credentials/d' /config/etc/letsencrypt/cli.ini
# Disable Certbot's built in log rotation
set_ini_value "max-log-backups" "0" /config/etc/letsencrypt/cli.ini
# copy dns default configs # copy dns default configs
cp -n /defaults/dns-conf/* /config/dns-conf/ 2> >(grep -v 'cp: not replacing') cp -n /defaults/dns-conf/* /config/dns-conf/ 2> >(grep -v 'cp: not replacing')
lsiown -R abc:abc /config/dns-conf lsiown -R abc:abc /config/dns-conf

View File

@@ -22,6 +22,14 @@ if [[ ! -f /config/nginx/authentik-server.conf ]]; then
cp /defaults/nginx/authentik-server.conf.sample /config/nginx/authentik-server.conf cp /defaults/nginx/authentik-server.conf.sample /config/nginx/authentik-server.conf
fi fi
# copy tinyauth config files if they don't exist
if [[ ! -f /config/nginx/tinyauth-location.conf ]]; then
cp /defaults/nginx/tinyauth-location.conf.sample /config/nginx/tinyauth-location.conf
fi
if [[ ! -f /config/nginx/tinyauth-server.conf ]]; then
cp /defaults/nginx/tinyauth-server.conf.sample /config/nginx/tinyauth-server.conf
fi
# copy old ldap config file to new location # copy old ldap config file to new location
if [[ -f /config/nginx/ldap.conf ]] && [[ ! -f /config/nginx/ldap-server.conf ]]; then if [[ -f /config/nginx/ldap.conf ]] && [[ ! -f /config/nginx/ldap-server.conf ]]; then
cp /config/nginx/ldap.conf /config/nginx/ldap-server.conf cp /config/nginx/ldap.conf /config/nginx/ldap-server.conf