From b3e07b346936b173e6b809d83d7957f79f21e3be Mon Sep 17 00:00:00 2001 From: zacharias Date: Wed, 6 May 2026 14:39:21 +0200 Subject: [PATCH 1/2] Updated and futureproofed CUPS docker image --- cups/Dockerfile | 44 ++++++++++++-------------- cups/drivers/cupsdriver-1.2-56.tar.gz | Bin 23385 -> 23283 bytes cups/install.sh | 17 ---------- 3 files changed, 21 insertions(+), 40 deletions(-) delete mode 100644 cups/install.sh diff --git a/cups/Dockerfile b/cups/Dockerfile index 421cd51..8a2f228 100644 --- a/cups/Dockerfile +++ b/cups/Dockerfile @@ -1,30 +1,28 @@ -# lock version to 16.04 in order to not get a cups version that doesn't delete job data files. -FROM ubuntu:16.04 - -RUN apt-get clean && apt-get update && apt-get install -y locales - -# enable utf-8 locale -RUN locale-gen en_US.UTF-8 -ENV LANG en_US.UTF-8 -ENV LANGUAGE en_US:en -ENV LC_ALL en_US.UTF-8 -ENV LANG en_US.UTF-8 - -ENV TERM xterm - -ADD install.sh /tmp/install.sh -RUN sh -e /tmp/install.sh - -ENV TINI_VERSION v0.9.0 -ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini -RUN chmod +rx /tini - -# install intermec drivers +FROM ubuntu:24.04 + +RUN apt-get update && apt-get install -y \ + cups \ + automake \ + autoconf \ + gcc \ + ghostscript \ + poppler-utils \ + netpbm \ + build-essential \ + && apt-get clean + +# Enable utf-8 locale +ENV LANG=C.UTF-8 +ENV LC_ALL=C.UTF-8 + +# Used by driver build script +ENV TERM=xterm + +# Install intermec drivers ADD drivers ./drivers RUN cd ./drivers && tar -zxvf cupsdriver-1.2-56.tar.gz && cd cupsdriver-1.2-56 && ./build.sh # Copy local configuration file to container COPY cupsd.conf /etc/cups/ -ENTRYPOINT ["/tini", "--"] CMD ["/usr/sbin/cupsd", "-f"] diff --git a/cups/drivers/cupsdriver-1.2-56.tar.gz b/cups/drivers/cupsdriver-1.2-56.tar.gz index 62f0f655702a51da721b0d975f9b1cc97ffcff21..0d77a36b73ae21e8953f186ad5432170f1d422ba 100644 GIT binary patch literal 23283 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 Date: Wed, 6 May 2026 14:42:51 +0200 Subject: [PATCH 2/2] Added canary build for CUPS image --- .github/workflows/build_cups_docker.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build_cups_docker.yml b/.github/workflows/build_cups_docker.yml index 314b631..6ec4424 100644 --- a/.github/workflows/build_cups_docker.yml +++ b/.github/workflows/build_cups_docker.yml @@ -3,6 +3,7 @@ run-name: Building CUPS docker image and pushing it to GitHub registry on: push: branches: + - canary - master paths: - "cups/**" @@ -19,6 +20,14 @@ jobs: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} + - name: Set image tag variable + id: vars + run: | + if [[ ${{ github.ref_name }} == "master" ]]; then + echo "TAG=latest" >> $GITHUB_OUTPUT + else + echo "TAG=${{ github.ref_name }}" >> $GITHUB_OUTPUT + fi - name: Set up Docker Buildx # Needed by docker/build-push-action@v6 uses: docker/setup-buildx-action@v3 - name: Build and push @@ -27,4 +36,4 @@ jobs: context: ./cups file: ./cups/Dockerfile push: true - tags: ghcr.io/sellpy/cups:latest + tags: ghcr.io/sellpy/cups:${{ steps.vars.outputs.TAG }}