diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index b41e0f6..63a1eb3 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -14,13 +14,13 @@ on: permissions: {} env: BASENAME: bitnami/minideb - LATEST: bookworm + LATEST: trixie # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" shellcheck: # The type of runner that the job will run on - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: github.event_name != 'schedule' || github.repository == 'bitnami/minideb' name: Shellcheck # Steps represent a sequence of tasks that will be executed as part of the job @@ -35,11 +35,11 @@ jobs: run: | bash shellcheck build_multiarch: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [ shellcheck ] strategy: matrix: - dist: [bullseye, bookworm] + dist: [bullseye, bookworm, trixie] arch: [amd64, arm64] name: Build ${{ matrix.dist }} on ${{ matrix.arch }} steps: @@ -80,7 +80,7 @@ jobs: bash pushone "latest" "${{ matrix.arch }}" fi deploy_manifests: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [ build_multiarch ] if: github.repository == 'bitnami/minideb' && github.ref == 'refs/heads/master' @@ -92,7 +92,7 @@ jobs: DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} DOCKER_REGISTRY: docker.io run: | - DISTS="bullseye bookworm latest" bash pushmanifest + DISTS="bullseye bookworm trixie latest" bash pushmanifest - name: Push Manifests to AWS env: DOCKER_USERNAME: AWS @@ -102,7 +102,7 @@ jobs: run: | # AWS login export DOCKER_PASSWORD="$(aws ecr-public get-login-password --region us-east-1)" - DISTS="bullseye bookworm latest" bash pushmanifest + DISTS="bullseye bookworm trixie latest" bash pushmanifest # If the CI Pipeline does not succeed we should notify the interested agents notify: name: Send notification diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e64af4b..f5f30a3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,13 +8,13 @@ on: permissions: {} env: BASENAME: bitnami/minideb - LATEST: bookworm + LATEST: trixie # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" shellcheck: # The type of runner that the job will run on - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 name: Shellcheck # Steps represent a sequence of tasks that will be executed as part of the job steps: @@ -28,11 +28,11 @@ jobs: run: | bash shellcheck build_multiarch: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [ shellcheck ] strategy: matrix: - dist: [bullseye, bookworm] + dist: [bullseye, bookworm, trixie] arch: [amd64, arm64] name: Build ${{ matrix.dist }} on ${{ matrix.arch }} steps: diff --git a/README.md b/README.md index 734552b..f555c66 100644 --- a/README.md +++ b/README.md @@ -22,14 +22,14 @@ $ docker run --rm -it bitnami/minideb:latest There are [tags](https://hub.docker.com/r/bitnami/minideb/tags/) for the different Debian releases. ``` -$ docker run --rm -it bitnami/minideb:bookworm +$ docker run --rm -it bitnami/minideb:trixie ``` The images are built daily and have the security release enabled, so will contain any security updates released more than 24 hours ago. You can also use the images as a base for your own `Dockerfile`: ``` -FROM bitnami/minideb:bookworm +FROM bitnami/minideb:trixie ``` # Why use Minideb @@ -70,14 +70,14 @@ We provide a Makefile to help you build Minideb locally. It should be run on a D $ sudo make ``` -To build an individual release (bullseye or bookworm) +To build an individual release (bullseye, bookworm or trixie) ``` -$ sudo make bookworm +$ sudo make trixie ``` To test the resulting image: ``` -$ sudo make test-bookworm +$ sudo make test-trixie ``` ## Building Minideb for foreign architecture @@ -85,13 +85,13 @@ Make commands shown above will build an image for the architecture you are curre To build an image for a foreign architecture (for example to build a multi-arch image), we provide a simple script that runs a QEMU instance for the target architecture and builds the image inside it. -To build and test a bookworm image for arm64: +To build and test a trixie image for arm64: ``` -$ ./qemu_build bookworm arm64 +$ ./qemu_build trixie arm64 ``` The image will be then imported locally through the docker CLI with the `$distribution-$architecture` tag -(example: `bitnami/minideb:bookworm-arm64`) +(example: `bitnami/minideb:trixie-arm64`) Current limitations of the `qemu_build` script: diff --git a/buildall b/buildall index b57a00c..05edfb3 100755 --- a/buildall +++ b/buildall @@ -10,6 +10,7 @@ arch=${1:-"amd64 arm64"} dist="bullseye bookworm +trixie " for a in $arch; do for i in $dist; do diff --git a/debootstrap/bullseye b/debootstrap/bullseye index 804e966..861b182 100644 --- a/debootstrap/bullseye +++ b/debootstrap/bullseye @@ -46,7 +46,7 @@ work_out_debs () { # tzdata for handling timezones # util-linux for getopt # mount is required for mounting /proc during debootstrap - required="adduser base-files base-passwd bash bsdutils coreutils dash debian-archive-keyring diffutils dpkg findutils grep gzip hostname init-system-helpers libc-bin login lsb-base mawk ncurses-base passwd sed sysv-rc tar tzdata util-linux mount" + required="adduser base-files base-passwd bash bsdutils coreutils dash debian-archive-keyring diffutils dpkg findutils grep gzip hostname init-system-helpers libc-bin login lsb-base mawk ncurses-base passwd perl sed sysv-rc tar tzdata util-linux mount" base="apt" diff --git a/debootstrap/trixie b/debootstrap/trixie new file mode 120000 index 0000000..91bf492 --- /dev/null +++ b/debootstrap/trixie @@ -0,0 +1 @@ +bullseye \ No newline at end of file diff --git a/mkimage b/mkimage index fbe37bf..962ddf5 100755 --- a/mkimage +++ b/mkimage @@ -76,7 +76,7 @@ sec_repo_url_1="${repo_url}-security" sec_repo_url_2="http://security.debian.org/debian-security" echo -e "deb ${repo_url} $DIST main" > "$rootfsDir/etc/apt/sources.list" -if [ "$DIST" == "bookworm" ]; then +if [ "$DIST" == "bookworm" ] || [ "$DIST" == "trixie" ]; then echo "deb ${repo_url} $DIST-updates main" >> "$rootfsDir/etc/apt/sources.list" echo "deb ${sec_repo_url_1} $DIST-security main" >> "$rootfsDir/etc/apt/sources.list" elif [ "$DIST" == "bullseye" ]; then diff --git a/pushmanifest b/pushmanifest index bc2b5ff..77d5101 100755 --- a/pushmanifest +++ b/pushmanifest @@ -6,6 +6,7 @@ set -o pipefail DISTS=${DISTS:-"bullseye bookworm +trixie latest "}