diff --git a/Jenkinsfile b/Jenkinsfile index e6adbe6f..e105833b 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -208,6 +208,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' } } } @@ -233,6 +234,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' } } } @@ -258,6 +260,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' } } } @@ -280,7 +283,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 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 && \ @@ -615,13 +618,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 ''' @@ -681,13 +687,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 ''' @@ -741,12 +750,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 ''' @@ -871,7 +882,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} @@ -895,7 +906,7 @@ pipeline { -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 \ + -t ghcr.io/linuxserver/ci:${CITEST_IMAGETAG} \ python3 test_build.py''' } } @@ -921,9 +932,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 ''' @@ -948,20 +961,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 ''' @@ -979,23 +999,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 master",\ - "type": "commit",\ - "tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}' ''' - echo "Pushing New release for Tag" sh '''#! /bin/bash + 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": "master"}' \ + | 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 master",\ + "type": "commit",\ + "tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}' + echo "Pushing New release for Tag" echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json - echo '{"tag_name":"'${META_TAG}'",\ - "target_commitish": "master",\ - "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''' + jq -n \ + --arg tag_name "$META_TAG" \ + --arg target_commitish "master" \ + --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 diff --git a/README.md b/README.md index 399a5410..a52dd2b5 100644 --- a/README.md +++ b/README.md @@ -329,6 +329,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **10.08.25:** - Let server listen on both ipv4 and ipv6. * **03.06.25:** - Allow setting PWA name using env var `PWA_APPNAME`. * **13.10.24:** - Only chown config folder when change to ownership or new install is detected. * **09.10.24:** - Manage permissions in /config/.ssh according to file type diff --git a/package_versions.txt b/package_versions.txt index 3c4b4974..bebd684b 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -8,30 +8,28 @@ NAME VERSION TYPE @microsoft/applicationinsights-shims 2.0.2 npm @microsoft/dynamicproto-js 1.1.9 npm @parcel/watcher 2.5.1 npm -@parcel/watcher-linux-x64-glibc 2.5.1 npm -@parcel/watcher-linux-x64-musl 2.5.1 npm @phc/format 1.0.0 npm @tootallnate/once 3.0.0 npm @tootallnate/quickjs-emscripten 0.23.0 npm @vscode/deviceid 0.1.1 npm @vscode/iconv-lite-umd 0.7.0 npm -@vscode/proxy-agent 0.32.0 npm +@vscode/proxy-agent 0.35.0 npm @vscode/ripgrep 1.15.14 npm @vscode/spdlog 0.15.2 npm @vscode/tree-sitter-wasm 0.1.4 npm @vscode/vscode-languagedetection 1.0.21 npm @vscode/windows-process-tree 0.6.0 npm @vscode/windows-registry 1.1.0 npm -@xterm/addon-clipboard 0.2.0-beta.95 npm -@xterm/addon-image 0.9.0-beta.112 npm -@xterm/addon-ligatures 0.10.0-beta.112 npm -@xterm/addon-progress 0.2.0-beta.18 npm -@xterm/addon-search 0.16.0-beta.112 npm -@xterm/addon-serialize 0.14.0-beta.112 npm -@xterm/addon-unicode11 0.9.0-beta.112 npm -@xterm/addon-webgl 0.19.0-beta.112 npm -@xterm/headless 5.6.0-beta.112 npm -@xterm/xterm 5.6.0-beta.112 npm +@xterm/addon-clipboard 0.2.0-beta.102 npm +@xterm/addon-image 0.9.0-beta.119 npm +@xterm/addon-ligatures 0.10.0-beta.119 npm +@xterm/addon-progress 0.2.0-beta.25 npm +@xterm/addon-search 0.16.0-beta.119 npm +@xterm/addon-serialize 0.14.0-beta.119 npm +@xterm/addon-unicode11 0.9.0-beta.119 npm +@xterm/addon-webgl 0.19.0-beta.119 npm +@xterm/headless 5.6.0-beta.119 npm +@xterm/xterm 5.6.0-beta.119 npm OpenConsole.exe 1.22.250204002 binary (+1 duplicate) abbrev 1.1.1 npm accepts 2.0.0 npm @@ -48,7 +46,7 @@ argon2 0.31.2 npm argparse 2.0.1 npm ast-types 0.13.4 npm balanced-match 1.0.2 npm -base-files 13ubuntu10.2 deb +base-files 13ubuntu10.3 deb base-passwd 3.6.3build1 deb base64-js 1.5.1 npm bash 5.2.21-2ubuntu4 deb @@ -76,12 +74,13 @@ charenc 0.0.2 npm chownr 1.1.4 npm chownr 2.0.0 npm clojure 1.0.0 npm -code-server 1.102.1 npm -code-server 4.102.1 npm +code-server 1.105.1 npm +code-server 4.105.1 npm coffeescript 1.0.0 npm color-support 1.1.3 npm +commander 8.3.0 npm compressible 2.0.18 npm -compression 1.8.0 npm +compression 1.8.1 npm concat-map 0.0.1 npm configuration-editing 1.0.0 npm conpty.dll 1.22.250204002 binary (+1 duplicate) @@ -93,7 +92,7 @@ cookie 0.7.2 npm cookie-parser 1.4.7 npm cookie-signature 1.0.6 npm cookie-signature 1.2.2 npm -coreutils 9.4-3ubuntu6 deb +coreutils 9.4-3ubuntu6.1 deb cpp 1.0.0 npm cron 3.0pl1-184ubuntu2 deb cron-daemon-common 3.0pl1-184ubuntu2 deb @@ -110,7 +109,7 @@ debianutils 5.17build1 deb debug 2.6.9 npm debug 4.3.4 npm debug 4.3.6 npm -debug 4.4.0 npm +debug 4.4.1 npm debug-auto-launch 1.0.0 npm debug-server-ready 1.0.0 npm decompress-response 6.0.0 npm @@ -119,14 +118,13 @@ degenerator 5.0.1 npm delegates 1.0.0 npm depd 2.0.0 npm destroy 1.2.0 npm -detect-libc 1.0.3 npm -detect-libc 2.0.1 npm detect-libc 2.0.3 npm +detect-libc 2.0.4 npm diff 1.0.0 npm diffutils 1:3.10-1build1 deb dirmngr 2.4.4-2ubuntu17.3 deb docker 1.0.0 npm -dpkg 1.22.6ubuntu6.1 deb +dpkg 1.22.6ubuntu6.5 deb dunder-proto 1.0.1 npm e2fsprogs 1.47.0-2.4~exp1ubuntu4.1 deb ee-first 1.1.1 npm @@ -235,9 +233,9 @@ isexe 2.0.0 npm jake 1.0.0 npm java 1.0.0 npm javascript 1.0.0 npm -jq 1.7.1-3build1 deb +jq 1.7.1-3ubuntu0.24.04.1 deb js-base64 3.7.7 npm -js-debug 1.102.0 npm +js-debug 1.105.0 npm js-debug-companion 1.1.3 npm js-yaml 4.1.0 npm jsbn 1.1.0 npm (+1 duplicate) @@ -247,6 +245,7 @@ json-language-features 1.0.0 npm jsonfile 6.1.0 npm julia 1.0.0 npm just-performance 4.3.0 npm +katex 0.16.22 npm kerberos 2.1.1 npm keyboxd 2.4.4-2ubuntu17.3 deb krb5-locales 1.20.1-6ubuntu2.6 deb @@ -265,8 +264,8 @@ libblkid1 2.39.3-9ubuntu6.3 deb libbrotli1 1.1.0-2build2 deb libbsd0 0.12.1-1build1.1 deb libbz2-1.0 1.0.8-5.1build0.1 deb -libc-bin 2.39-0ubuntu8.5 deb -libc6 2.39-0ubuntu8.5 deb +libc-bin 2.39-0ubuntu8.6 deb +libc6 2.39-0ubuntu8.6 deb libcap-ng0 0.8.4-2build2 deb libcap2 1:2.66-5ubuntu2.2 deb libcbor0.10 0.10.2-1.2ubuntu2 deb @@ -292,7 +291,7 @@ libgpg-error0 1.47-3build2.1 deb libgssapi-krb5-2 1.20.1-6ubuntu2.6 deb libhogweed6t64 3.9.1-2.2build1.1 deb libidn2-0 2.3.7-2build1.1 deb -libjq1 1.7.1-3build1 deb +libjq1 1.7.1-3ubuntu0.24.04.1 deb libk5crypto3 1.20.1-6ubuntu2.6 deb libkeyutils1 1.6.3-3build1 deb libkrb5-3 1.20.1-6ubuntu2.6 deb @@ -310,12 +309,12 @@ libnghttp2-14 1.59.0-1ubuntu0.2 deb libnpth0t64 1.6-3.1build1 deb libonig5 6.9.9-1build1 deb libp11-kit0 0.25.3-4ubuntu2.1 deb -libpam-modules 1.5.3-5ubuntu5.4 deb -libpam-modules-bin 1.5.3-5ubuntu5.4 deb -libpam-runtime 1.5.3-5ubuntu5.4 deb -libpam0g 1.5.3-5ubuntu5.4 deb +libpam-modules 1.5.3-5ubuntu5.5 deb +libpam-modules-bin 1.5.3-5ubuntu5.5 deb +libpam-runtime 1.5.3-5ubuntu5.5 deb +libpam0g 1.5.3-5ubuntu5.5 deb libpcre2-8-0 10.42-4ubuntu2.1 deb -libperl5.38t64 5.38.2-3.2ubuntu0.1 deb +libperl5.38t64 5.38.2-3.2ubuntu0.2 deb libproc2-0 2:4.0.4-4ubuntu3.2 deb libpsl5t64 0.21.2-1.1build1 deb libreadline8t64 8.2-4build1 deb @@ -329,15 +328,15 @@ libsemanage-common 3.5-1build5 deb libsemanage2 3.5-1build5 deb libsepol2 3.5-2build1 deb libsmartcols1 2.39.3-9ubuntu6.3 deb -libsqlite3-0 3.45.1-1ubuntu2.3 deb +libsqlite3-0 3.45.1-1ubuntu2.5 deb libss2 1.47.0-2.4~exp1ubuntu4.1 deb -libssh-4 0.10.6-2ubuntu0.1 deb -libssl3t64 3.0.13-0ubuntu3.5 deb +libssh-4 0.10.6-2ubuntu0.2 deb +libssl3t64 3.0.13-0ubuntu3.6 deb libstdc++6 14.2.0-4ubuntu2~24.04 deb -libsystemd0 255.4-1ubuntu8.10 deb +libsystemd0 255.4-1ubuntu8.11 deb libtasn1-6 4.19.0-3ubuntu0.24.04.1 deb libtinfo6 6.4+20240113-1ubuntu2 deb -libudev1 255.4-1ubuntu8.10 deb +libudev1 255.4-1ubuntu8.11 deb libunistring5 1.1-2build1.1 deb libuuid1 2.39.3-9ubuntu6.3 deb libx11-6 2:1.8.7-1build1 deb @@ -350,7 +349,7 @@ libxmuu1 2:1.1.3-3build2 deb libxxhash0 0.8.2-2build1 deb libzstd1 1.5.5+dfsg2-2build1.1 deb limiter 2.1.0 npm -locales 2.39-0ubuntu8.5 deb +locales 2.39-0ubuntu8.6 deb log 1.0.0 npm login 1:4.13+dfsg1-4ubuntu3.2 deb logsave 1.47.0-2.4~exp1ubuntu4.1 deb @@ -369,6 +368,7 @@ media-preview 1.0.0 npm media-typer 1.1.0 npm merge-conflict 1.0.0 npm merge-descriptors 2.0.0 npm +mermaid-chat-features 1.0.0 npm methods 1.1.2 npm micromatch 4.0.8 npm microsoft-authentication 0.0.1 npm @@ -399,12 +399,12 @@ net-tools 2.10-0.1ubuntu4.4 deb netbase 6.4 deb netcat-openbsd 1.226-1ubuntu2 deb netmask 2.0.2 npm -node 22.15.1 binary +node 22.19.0 binary node-abi 3.8.0 npm node-addon-api 7.1.0 npm node-addon-api 7.1.1 npm node-fetch 2.7.0 npm -node-pty 1.1.0-beta33 npm +node-pty 1.1.0-beta35 npm nopt 5.0.0 npm npm 1.0.1 npm npmlog 5.0.1 npm @@ -413,10 +413,10 @@ object-assign 4.1.1 npm object-inspect 1.13.4 npm objective-c 1.0.0 npm on-finished 2.4.1 npm -on-headers 1.0.2 npm +on-headers 1.1.0 npm once 1.4.0 npm (+1 duplicate) -openssh-client 1:9.6p1-3ubuntu13.12 deb -openssl 3.0.13-0ubuntu3.5 deb +openssh-client 1:9.6p1-3ubuntu13.14 deb +openssl 3.0.13-0ubuntu3.6 deb opentype.js 0.8.0 npm os-tmpdir 1.0.2 npm pac-proxy-agent 7.2.0 npm @@ -429,9 +429,9 @@ path-to-regexp 8.2.0 npm pem 1.14.8 npm pend 1.2.0 npm perl 1.0.0 npm -perl 5.38.2-3.2ubuntu0.1 deb -perl-base 5.38.2-3.2ubuntu0.1 deb -perl-modules-5.38 5.38.2-3.2ubuntu0.1 deb +perl 5.38.2-3.2ubuntu0.2 deb +perl-base 5.38.2-3.2ubuntu0.2 deb +perl-modules-5.38 5.38.2-3.2ubuntu0.2 deb php 1.0.0 npm php-language-features 1.0.0 npm picomatch 2.3.1 npm @@ -505,11 +505,11 @@ strip-ansi 6.0.1 npm strip-json-comments 2.0.1 npm sudo 1.9.15p5-3ubuntu5.24.04.1 deb swift 1.0.0 npm -systemd-standalone-sysusers 255.4-1ubuntu8.10 deb +systemd-standalone-sysusers 255.4-1ubuntu8.11 deb sysvinit-utils 3.08-6ubuntu3 deb tar 1.35+dfsg-3build1 deb tar 6.2.1 npm -tar-fs 2.1.3 npm +tar-fs 2.1.4 npm tar-stream 2.2.0 npm tas-client-umd 0.2.0 npm terminal-suggest 1.0.1 npm @@ -533,7 +533,8 @@ tunnel-agent 0.6.0 npm tunnel-forwarding 1.0.0 npm type-is 2.0.0 npm typescript 1.0.0 npm -typescript 5.8.3 npm (+1 duplicate) +typescript 5.8.3 npm +typescript 5.9.3 npm typescript-language-features 1.0.0 npm tzdata 2025b-0ubuntu0.24.04.1 deb ubuntu-keyring 2023.11.28.1 deb diff --git a/readme-vars.yml b/readme-vars.yml index 3a0908fd..3996ca39 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -102,6 +102,7 @@ init_diagram: | "code-server:latest" <- Base Images # changelog changelogs: + - {date: "10.08.25:", desc: "Let server listen on both ipv4 and ipv6."} - {date: "03.06.25:", desc: "Allow setting PWA name using env var `PWA_APPNAME`."} - {date: "13.10.24:", desc: "Only chown config folder when change to ownership or new install is detected."} - {date: "09.10.24:", desc: "Manage permissions in /config/.ssh according to file type"} diff --git a/root/etc/s6-overlay/s6-rc.d/svc-code-server/run b/root/etc/s6-overlay/s6-rc.d/svc-code-server/run index 582c9b5d..d8a6e224 100755 --- a/root/etc/s6-overlay/s6-rc.d/svc-code-server/run +++ b/root/etc/s6-overlay/s6-rc.d/svc-code-server/run @@ -35,7 +35,7 @@ else exec \ s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z 127.0.0.1 8443" \ /app/code-server/bin/code-server \ - --bind-addr 0.0.0.0:8443 \ + --bind-addr "[::]:8443" \ --user-data-dir /config/data \ --extensions-dir /config/extensions \ --disable-telemetry \