Compare commits
12
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0e677e3fa6 | ||
|
|
b4f3bde041 | ||
|
|
042e03872e | ||
|
|
6b7e660595 | ||
|
|
f71264cd3e | ||
|
|
46d8502a55 | ||
|
|
722c7f95fe | ||
|
|
96778db7d0 | ||
|
|
b40409d544 | ||
|
|
a7d54a2cd3 | ||
|
|
f59472c9f2 | ||
|
|
fe53ba5730 |
Vendored
+76
-36
@@ -218,6 +218,7 @@ pipeline {
|
||||
env.META_TAG = 'dev-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
env.EXT_RELEASE_TAG = 'dev-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'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -243,6 +244,7 @@ pipeline {
|
||||
env.EXT_RELEASE_TAG = 'dev-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'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -268,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'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -290,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 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 && \
|
||||
@@ -625,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
|
||||
'''
|
||||
@@ -691,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
|
||||
'''
|
||||
@@ -751,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
|
||||
'''
|
||||
@@ -881,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}
|
||||
@@ -905,7 +916,9 @@ 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 \
|
||||
-e COMMIT_SHA=\"${COMMIT_SHA}\" \
|
||||
-e BUILD_NUMBER=\"${BUILD_NUMBER}\" \
|
||||
-t ghcr.io/linuxserver/ci:${CITEST_IMAGETAG} \
|
||||
python3 test_build.py'''
|
||||
}
|
||||
}
|
||||
@@ -931,9 +944,11 @@ pipeline {
|
||||
CACHEIMAGE=${i}
|
||||
fi
|
||||
done
|
||||
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${META_TAG} -t ${PUSHIMAGE}:dev -t ${PUSHIMAGE}:${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${META_TAG} -t ${PUSHIMAGE}:dev -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
|
||||
'''
|
||||
@@ -958,20 +973,27 @@ pipeline {
|
||||
CACHEIMAGE=${i}
|
||||
fi
|
||||
done
|
||||
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${META_TAG} -t ${MANIFESTIMAGE}:amd64-dev -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-dev -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-dev -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-dev -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}:dev ${MANIFESTIMAGE}:amd64-dev ${MANIFESTIMAGE}:arm64v8-dev
|
||||
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}:dev ${MANIFESTIMAGE}:amd64-dev ${MANIFESTIMAGE}:arm64v8-dev || \
|
||||
{ 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
|
||||
'''
|
||||
@@ -989,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 dev",\
|
||||
"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 | jq '.[0] |.body' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json
|
||||
echo '{"tag_name":"'${META_TAG}'",\
|
||||
"target_commitish": "dev",\
|
||||
"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": true}' >> 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": "dev"}' \
|
||||
| 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 dev",\
|
||||
"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 | jq -r '.[0] |.body' > releasebody.json
|
||||
jq -n \
|
||||
--arg tag_name "$META_TAG" \
|
||||
--arg target_commitish "dev" \
|
||||
--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": true }' > 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
|
||||
|
||||
+31
-31
@@ -5,10 +5,10 @@ apt-utils 2.8.3 deb
|
||||
base-files 13ubuntu10.3 deb
|
||||
base-passwd 3.6.3build1 deb
|
||||
bash 5.2.21-2ubuntu4 deb
|
||||
bsdutils 1:2.39.3-9ubuntu6.3 deb
|
||||
bsdutils 1:2.39.3-9ubuntu6.4 deb
|
||||
ca-certificates 20240203 deb
|
||||
catatonit 0.1.7-1 deb
|
||||
coreutils 9.4-3ubuntu6 deb
|
||||
coreutils 9.4-3ubuntu6.1 deb
|
||||
cron 3.0pl1-184ubuntu2 deb
|
||||
cron-daemon-common 3.0pl1-184ubuntu2 deb
|
||||
curl 8.5.0-2ubuntu10.6 deb
|
||||
@@ -17,7 +17,7 @@ debconf 1.5.86ubuntu1 deb
|
||||
debianutils 5.17build1 deb
|
||||
diffutils 1:3.10-1build1 deb
|
||||
dirmngr 2.4.4-2ubuntu17.3 deb
|
||||
dpkg 1.22.6ubuntu6.1 deb
|
||||
dpkg 1.22.6ubuntu6.5 deb
|
||||
e2fsprogs 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
findutils 4.9.0-5build1 deb
|
||||
gcc-14-base 14.2.0-4ubuntu2~24.04 deb
|
||||
@@ -43,12 +43,12 @@ libassuan0 2.5.6-1build1 deb
|
||||
libattr1 1:2.5.2-1build1.1 deb
|
||||
libaudit-common 1:3.1.2-2.1build1.1 deb
|
||||
libaudit1 1:3.1.2-2.1build1.1 deb
|
||||
libblkid1 2.39.3-9ubuntu6.3 deb
|
||||
libblkid1 2.39.3-9ubuntu6.4 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
|
||||
libcom-err2 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
@@ -79,24 +79,24 @@ libldap2 2.6.7+dfsg-1~exp1ubuntu8.2 deb
|
||||
liblz4-1 1.9.4-1build1.1 deb
|
||||
liblzma5 5.6.1+really5.4.5-1ubuntu0.2 deb
|
||||
libmd0 1.1.0-2build1.1 deb
|
||||
libmount1 2.39.3-9ubuntu6.3 deb
|
||||
libmount1 2.39.3-9ubuntu6.4 deb
|
||||
libncursesw6 6.4+20240113-1ubuntu2 deb
|
||||
libnettle8t64 3.9.1-2.2build1.1 deb
|
||||
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
|
||||
libpng16-16t64 1.6.43-5build1 deb
|
||||
libpng16-16t64 1.6.43-5ubuntu0.1 deb
|
||||
libproc2-0 2:4.0.4-4ubuntu3.2 deb
|
||||
libpsl5t64 0.21.2-1.1build1 deb
|
||||
libpython3-stdlib 3.12.3-0ubuntu2 deb
|
||||
libpython3.12-minimal 3.12.3-1ubuntu0.8 deb
|
||||
libpython3.12-stdlib 3.12.3-1ubuntu0.8 deb
|
||||
libpython3-stdlib 3.12.3-0ubuntu2.1 deb
|
||||
libpython3.12-minimal 3.12.3-1ubuntu0.9 deb
|
||||
libpython3.12-stdlib 3.12.3-1ubuntu0.9 deb
|
||||
libreadline8t64 8.2-4build1 deb
|
||||
librtmp1 2.4+20151223.gitfa8646d.1-2build7 deb
|
||||
libsasl2-2 2.1.28+dfsg1-5ubuntu3.1 deb
|
||||
@@ -107,49 +107,49 @@ libselinux1 3.5-2ubuntu2.1 deb
|
||||
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.4 deb
|
||||
libsmartcols1 2.39.3-9ubuntu6.4 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.12 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.12 deb
|
||||
libunistring5 1.1-2build1.1 deb
|
||||
libuuid1 2.39.3-9ubuntu6.3 deb
|
||||
libuuid1 2.39.3-9ubuntu6.4 deb
|
||||
libxxhash0 0.8.2-2build1 deb
|
||||
libzstd1 1.5.5+dfsg2-2build1.1 deb
|
||||
locales 2.39-0ubuntu8.5 deb
|
||||
locales 2.39-0ubuntu8.6 deb
|
||||
login 1:4.13+dfsg1-4ubuntu3.2 deb
|
||||
logsave 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
mawk 1.3.4.20240123-1build1 deb
|
||||
media-types 10.1.0 deb
|
||||
mount 2.39.3-9ubuntu6.3 deb
|
||||
mount 2.39.3-9ubuntu6.4 deb
|
||||
ncurses-base 6.4+20240113-1ubuntu2 deb
|
||||
ncurses-bin 6.4+20240113-1ubuntu2 deb
|
||||
netbase 6.4 deb
|
||||
netcat-openbsd 1.226-1ubuntu2 deb
|
||||
openssl 3.0.13-0ubuntu3.5 deb
|
||||
openssl 3.0.13-0ubuntu3.6 deb
|
||||
passwd 1:4.13+dfsg1-4ubuntu3.2 deb
|
||||
perl-base 5.38.2-3.2ubuntu0.2 deb
|
||||
pinentry-curses 1.2.1-3ubuntu5 deb
|
||||
procps 2:4.0.4-4ubuntu3.2 deb
|
||||
publicsuffix 20231001.0357-0.1 deb
|
||||
python3 3.12.3-0ubuntu2 deb
|
||||
python3-minimal 3.12.3-0ubuntu2 deb
|
||||
python3.12 3.12.3-1ubuntu0.8 deb
|
||||
python3.12-minimal 3.12.3-1ubuntu0.8 deb
|
||||
python3 3.12.3-0ubuntu2.1 deb
|
||||
python3-minimal 3.12.3-0ubuntu2.1 deb
|
||||
python3.12 3.12.3-1ubuntu0.9 deb
|
||||
python3.12-minimal 3.12.3-1ubuntu0.9 deb
|
||||
readline-common 8.2-4build1 deb
|
||||
sed 4.9-2build1 deb
|
||||
sensible-utils 0.0.22 deb
|
||||
systemd-standalone-sysusers 255.4-1ubuntu8.10 deb
|
||||
systemd-standalone-sysusers 255.4-1ubuntu8.12 deb
|
||||
sysvinit-utils 3.08-6ubuntu3 deb
|
||||
tar 1.35+dfsg-3build1 deb
|
||||
tzdata 2025b-0ubuntu0.24.04.1 deb
|
||||
ubuntu-keyring 2023.11.28.1 deb
|
||||
unminimize 0.2.1 deb
|
||||
unzip 6.0-28ubuntu4.1 deb
|
||||
util-linux 2.39.3-9ubuntu6.3 deb
|
||||
util-linux 2.39.3-9ubuntu6.4 deb
|
||||
zlib1g 1:1.3.dfsg-3.1ubuntu2.1 deb
|
||||
|
||||
Reference in New Issue
Block a user