diff --git a/DECISIONS.md b/DECISIONS.md index f05efb6..e8a9194 100644 --- a/DECISIONS.md +++ b/DECISIONS.md @@ -121,3 +121,9 @@ Also adds `tzdata` to Noble's distro `extraPackages` (matching Jammy). FB3 relie **Decision:** The `update-repo` job in `publish-fork.yaml` only commits and pushes regenerated `generated/` and `README.md` when running on the fork's default branch (`github.event.repository.default_branch`). Dispatches on PR or feature branches still run `Invoke-Build Prepare` and `Invoke-Build Update-Readme` (so a template-substitution regression still fails the workflow) but skip the `git commit` / `git push`. Amends D-014 for the publish-fork case; `publish.yaml` (the official-repo publish) is unchanged. **Rationale:** `publish-fork.yaml` passes `-Registry 'ghcr.io/'` to `Update-Readme`, which substitutes the fork's registry into the README table header. The previous unguarded auto-commit pushed that fork-specific README back to whatever branch was dispatched, including branches with open upstream PRs — directly polluting the PR diff with content that must not land upstream, and breaking GitHub's linear rebase when the upstream master had its own concurrent `README.md` changes (observed during PR #43, which required a force-pushed clean rebase to unblock). Branch-gating preserves D-014's "generated/ tracked in git" invariant on the fork's default branch while keeping PR/feature branches diff-clean against upstream. Confines the `-Registry` rewrite to the only place the fork wants it (its own showcased README on `master`). + +## D-019: FB3 library provisioning runs before the Firebird installer + +**Decision:** The FB3-only `libtommath.so.0` symlink and the `libncurses5`/`libtinfo5` provisioning (D-017) run inside the main `RUN` step, after the prerequisite `apt-get install` and before `./install.sh -silent`. They are no longer separate `RUN` steps after the install. Amends the placement described in D-017; the provisioning logic itself is unchanged. + +**Rationale:** The FB3 installer sets the generated SYSDBA password with `gsec -add sysdba -pw `, and then writes that password to `/opt/firebird/SYSDBA.password`. FB3's `gsec` (and `libfbclient`, `libSrp.so`) link against `libtommath.so.0` and `libncurses.so.5`/`libtinfo.so.5`. With the libraries provisioned only after the install, `gsec` failed with `error while loading shared libraries: libtommath.so.0`; the installer's `runSilent` wrapper printed the error and carried on. The image therefore shipped the tarball's pristine `security3.fdb` — no Srp user, no `PLG$SRP` table — alongside a `SYSDBA.password` file holding a password that was never set. Any Srp login then failed with the misleading `Install incomplete, please read the Compatibility chapter in the release notes for this version`. The defect stayed hidden because `FIREBIRD_ROOT_PASSWORD` (used in every documented example) and `FIREBIRD_USER` both go through the Srp user manager at container start, which creates the missing structures. The test suite now covers the stock, no-environment container. FB4+ is unaffected: its binaries' dependencies are satisfied by the prerequisite packages. See [issue #47](https://github.com/FirebirdSQL/firebird-docker/issues/47). diff --git a/generated/3.0.10/bookworm/Dockerfile b/generated/3.0.10/bookworm/Dockerfile index 33a9de5..fa88aa4 100644 --- a/generated/3.0.10/bookworm/Dockerfile +++ b/generated/3.0.10/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.10/bullseye/Dockerfile b/generated/3.0.10/bullseye/Dockerfile index 923d45e..9228d35 100644 --- a/generated/3.0.10/bullseye/Dockerfile +++ b/generated/3.0.10/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.10/jammy/Dockerfile b/generated/3.0.10/jammy/Dockerfile index 3a3bb1d..01d4774 100644 --- a/generated/3.0.10/jammy/Dockerfile +++ b/generated/3.0.10/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.10/noble/Dockerfile b/generated/3.0.10/noble/Dockerfile index 6a38647..956b545 100644 --- a/generated/3.0.10/noble/Dockerfile +++ b/generated/3.0.10/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.10/trixie/Dockerfile b/generated/3.0.10/trixie/Dockerfile index 9c0b884..d1d9fec 100644 --- a/generated/3.0.10/trixie/Dockerfile +++ b/generated/3.0.10/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.11/bookworm/Dockerfile b/generated/3.0.11/bookworm/Dockerfile index 652383c..4904288 100644 --- a/generated/3.0.11/bookworm/Dockerfile +++ b/generated/3.0.11/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.11/bullseye/Dockerfile b/generated/3.0.11/bullseye/Dockerfile index 0f4a13c..787dd84 100644 --- a/generated/3.0.11/bullseye/Dockerfile +++ b/generated/3.0.11/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.11/jammy/Dockerfile b/generated/3.0.11/jammy/Dockerfile index 2dd64b2..f07c2d9 100644 --- a/generated/3.0.11/jammy/Dockerfile +++ b/generated/3.0.11/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.11/noble/Dockerfile b/generated/3.0.11/noble/Dockerfile index 3c2e520..b189edf 100644 --- a/generated/3.0.11/noble/Dockerfile +++ b/generated/3.0.11/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.11/trixie/Dockerfile b/generated/3.0.11/trixie/Dockerfile index c5ed8c1..fb8ad84 100644 --- a/generated/3.0.11/trixie/Dockerfile +++ b/generated/3.0.11/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.12/bookworm/Dockerfile b/generated/3.0.12/bookworm/Dockerfile index 7861cfc..1b31557 100644 --- a/generated/3.0.12/bookworm/Dockerfile +++ b/generated/3.0.12/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.12/bullseye/Dockerfile b/generated/3.0.12/bullseye/Dockerfile index 8cca737..b57adf7 100644 --- a/generated/3.0.12/bullseye/Dockerfile +++ b/generated/3.0.12/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.12/jammy/Dockerfile b/generated/3.0.12/jammy/Dockerfile index e7d841a..f4306ed 100644 --- a/generated/3.0.12/jammy/Dockerfile +++ b/generated/3.0.12/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.12/noble/Dockerfile b/generated/3.0.12/noble/Dockerfile index e8883d0..ce4de96 100644 --- a/generated/3.0.12/noble/Dockerfile +++ b/generated/3.0.12/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.12/trixie/Dockerfile b/generated/3.0.12/trixie/Dockerfile index 3f2b4d7..1059a19 100644 --- a/generated/3.0.12/trixie/Dockerfile +++ b/generated/3.0.12/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.13/bookworm/Dockerfile b/generated/3.0.13/bookworm/Dockerfile index 8fc958c..921784c 100644 --- a/generated/3.0.13/bookworm/Dockerfile +++ b/generated/3.0.13/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.13/bullseye/Dockerfile b/generated/3.0.13/bullseye/Dockerfile index 6a33d34..8564200 100644 --- a/generated/3.0.13/bullseye/Dockerfile +++ b/generated/3.0.13/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.13/jammy/Dockerfile b/generated/3.0.13/jammy/Dockerfile index 9afb0b4..b6dcad5 100644 --- a/generated/3.0.13/jammy/Dockerfile +++ b/generated/3.0.13/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.13/noble/Dockerfile b/generated/3.0.13/noble/Dockerfile index dff334e..98756f6 100644 --- a/generated/3.0.13/noble/Dockerfile +++ b/generated/3.0.13/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.13/trixie/Dockerfile b/generated/3.0.13/trixie/Dockerfile index 5f9f67c..e995583 100644 --- a/generated/3.0.13/trixie/Dockerfile +++ b/generated/3.0.13/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.14/bookworm/Dockerfile b/generated/3.0.14/bookworm/Dockerfile index 4c850b0..9241c5b 100644 --- a/generated/3.0.14/bookworm/Dockerfile +++ b/generated/3.0.14/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.14/bullseye/Dockerfile b/generated/3.0.14/bullseye/Dockerfile index 4779946..3d923ac 100644 --- a/generated/3.0.14/bullseye/Dockerfile +++ b/generated/3.0.14/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.14/jammy/Dockerfile b/generated/3.0.14/jammy/Dockerfile index 1c3c449..ec5f14f 100644 --- a/generated/3.0.14/jammy/Dockerfile +++ b/generated/3.0.14/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.14/noble/Dockerfile b/generated/3.0.14/noble/Dockerfile index eafebd0..6cd728a 100644 --- a/generated/3.0.14/noble/Dockerfile +++ b/generated/3.0.14/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.14/trixie/Dockerfile b/generated/3.0.14/trixie/Dockerfile index 96f3f62..83e532c 100644 --- a/generated/3.0.14/trixie/Dockerfile +++ b/generated/3.0.14/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.9/bookworm/Dockerfile b/generated/3.0.9/bookworm/Dockerfile index 1edf8d1..2d52fbd 100644 --- a/generated/3.0.9/bookworm/Dockerfile +++ b/generated/3.0.9/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.9/bullseye/Dockerfile b/generated/3.0.9/bullseye/Dockerfile index 8c9760f..ef2ca1e 100644 --- a/generated/3.0.9/bullseye/Dockerfile +++ b/generated/3.0.9/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.9/jammy/Dockerfile b/generated/3.0.9/jammy/Dockerfile index a650711..8c44d8f 100644 --- a/generated/3.0.9/jammy/Dockerfile +++ b/generated/3.0.9/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.9/noble/Dockerfile b/generated/3.0.9/noble/Dockerfile index e151d28..8177c6b 100644 --- a/generated/3.0.9/noble/Dockerfile +++ b/generated/3.0.9/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/3.0.9/trixie/Dockerfile b/generated/3.0.9/trixie/Dockerfile index 7362a0b..374d8ca 100644 --- a/generated/3.0.9/trixie/Dockerfile +++ b/generated/3.0.9/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.0/bookworm/Dockerfile b/generated/4.0.0/bookworm/Dockerfile index fd0f375..3c15f8d 100644 --- a/generated/4.0.0/bookworm/Dockerfile +++ b/generated/4.0.0/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.0/bullseye/Dockerfile b/generated/4.0.0/bullseye/Dockerfile index e46610c..b34ef4b 100644 --- a/generated/4.0.0/bullseye/Dockerfile +++ b/generated/4.0.0/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.0/jammy/Dockerfile b/generated/4.0.0/jammy/Dockerfile index 4e92ede..3f6fb51 100644 --- a/generated/4.0.0/jammy/Dockerfile +++ b/generated/4.0.0/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.0/noble/Dockerfile b/generated/4.0.0/noble/Dockerfile index bb272eb..0135fcf 100644 --- a/generated/4.0.0/noble/Dockerfile +++ b/generated/4.0.0/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.0/trixie/Dockerfile b/generated/4.0.0/trixie/Dockerfile index ead67a4..f4a3cd3 100644 --- a/generated/4.0.0/trixie/Dockerfile +++ b/generated/4.0.0/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.1/bookworm/Dockerfile b/generated/4.0.1/bookworm/Dockerfile index b07bb8c..2745250 100644 --- a/generated/4.0.1/bookworm/Dockerfile +++ b/generated/4.0.1/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.1/bullseye/Dockerfile b/generated/4.0.1/bullseye/Dockerfile index d685b6c..6ae2bc7 100644 --- a/generated/4.0.1/bullseye/Dockerfile +++ b/generated/4.0.1/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.1/jammy/Dockerfile b/generated/4.0.1/jammy/Dockerfile index dcdf5cc..73dfbd0 100644 --- a/generated/4.0.1/jammy/Dockerfile +++ b/generated/4.0.1/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.1/noble/Dockerfile b/generated/4.0.1/noble/Dockerfile index a0c96fb..1055c42 100644 --- a/generated/4.0.1/noble/Dockerfile +++ b/generated/4.0.1/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.1/trixie/Dockerfile b/generated/4.0.1/trixie/Dockerfile index e05defa..8780e9f 100644 --- a/generated/4.0.1/trixie/Dockerfile +++ b/generated/4.0.1/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.2/bookworm/Dockerfile b/generated/4.0.2/bookworm/Dockerfile index d72ad5f..7d05f98 100644 --- a/generated/4.0.2/bookworm/Dockerfile +++ b/generated/4.0.2/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.2/bullseye/Dockerfile b/generated/4.0.2/bullseye/Dockerfile index ffec909..2d2cb47 100644 --- a/generated/4.0.2/bullseye/Dockerfile +++ b/generated/4.0.2/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.2/jammy/Dockerfile b/generated/4.0.2/jammy/Dockerfile index 054feb1..e967f18 100644 --- a/generated/4.0.2/jammy/Dockerfile +++ b/generated/4.0.2/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.2/noble/Dockerfile b/generated/4.0.2/noble/Dockerfile index ff8914e..f7367e5 100644 --- a/generated/4.0.2/noble/Dockerfile +++ b/generated/4.0.2/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.2/trixie/Dockerfile b/generated/4.0.2/trixie/Dockerfile index 877ca13..c0720b2 100644 --- a/generated/4.0.2/trixie/Dockerfile +++ b/generated/4.0.2/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.3/bookworm/Dockerfile b/generated/4.0.3/bookworm/Dockerfile index 4884ae3..4c049d3 100644 --- a/generated/4.0.3/bookworm/Dockerfile +++ b/generated/4.0.3/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.3/bullseye/Dockerfile b/generated/4.0.3/bullseye/Dockerfile index 03484db..cd671f7 100644 --- a/generated/4.0.3/bullseye/Dockerfile +++ b/generated/4.0.3/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.3/jammy/Dockerfile b/generated/4.0.3/jammy/Dockerfile index 6d8cae3..0b5443f 100644 --- a/generated/4.0.3/jammy/Dockerfile +++ b/generated/4.0.3/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.3/noble/Dockerfile b/generated/4.0.3/noble/Dockerfile index 6e9e7b8..c72b285 100644 --- a/generated/4.0.3/noble/Dockerfile +++ b/generated/4.0.3/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.3/trixie/Dockerfile b/generated/4.0.3/trixie/Dockerfile index 3d03792..796ac22 100644 --- a/generated/4.0.3/trixie/Dockerfile +++ b/generated/4.0.3/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.4/bookworm/Dockerfile b/generated/4.0.4/bookworm/Dockerfile index 9a355b5..c5ec139 100644 --- a/generated/4.0.4/bookworm/Dockerfile +++ b/generated/4.0.4/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.4/bullseye/Dockerfile b/generated/4.0.4/bullseye/Dockerfile index 84ca99f..7705202 100644 --- a/generated/4.0.4/bullseye/Dockerfile +++ b/generated/4.0.4/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.4/jammy/Dockerfile b/generated/4.0.4/jammy/Dockerfile index f0c5992..29bec27 100644 --- a/generated/4.0.4/jammy/Dockerfile +++ b/generated/4.0.4/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.4/noble/Dockerfile b/generated/4.0.4/noble/Dockerfile index 51ef49f..918eb07 100644 --- a/generated/4.0.4/noble/Dockerfile +++ b/generated/4.0.4/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.4/trixie/Dockerfile b/generated/4.0.4/trixie/Dockerfile index 2906a6e..e265c8d 100644 --- a/generated/4.0.4/trixie/Dockerfile +++ b/generated/4.0.4/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.5/bookworm/Dockerfile b/generated/4.0.5/bookworm/Dockerfile index e9b450f..666b38c 100644 --- a/generated/4.0.5/bookworm/Dockerfile +++ b/generated/4.0.5/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.5/bullseye/Dockerfile b/generated/4.0.5/bullseye/Dockerfile index fa82a48..b68d574 100644 --- a/generated/4.0.5/bullseye/Dockerfile +++ b/generated/4.0.5/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.5/jammy/Dockerfile b/generated/4.0.5/jammy/Dockerfile index ef6f30d..794432e 100644 --- a/generated/4.0.5/jammy/Dockerfile +++ b/generated/4.0.5/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.5/noble/Dockerfile b/generated/4.0.5/noble/Dockerfile index 35e9467..febfa47 100644 --- a/generated/4.0.5/noble/Dockerfile +++ b/generated/4.0.5/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.5/trixie/Dockerfile b/generated/4.0.5/trixie/Dockerfile index 105e14e..69b2600 100644 --- a/generated/4.0.5/trixie/Dockerfile +++ b/generated/4.0.5/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.6/bookworm/Dockerfile b/generated/4.0.6/bookworm/Dockerfile index f64e601..1b1e8d1 100644 --- a/generated/4.0.6/bookworm/Dockerfile +++ b/generated/4.0.6/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.6/bullseye/Dockerfile b/generated/4.0.6/bullseye/Dockerfile index 733b01b..db05dc3 100644 --- a/generated/4.0.6/bullseye/Dockerfile +++ b/generated/4.0.6/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.6/jammy/Dockerfile b/generated/4.0.6/jammy/Dockerfile index 2e507c4..a43dabd 100644 --- a/generated/4.0.6/jammy/Dockerfile +++ b/generated/4.0.6/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.6/noble/Dockerfile b/generated/4.0.6/noble/Dockerfile index 7469096..b7c7c55 100644 --- a/generated/4.0.6/noble/Dockerfile +++ b/generated/4.0.6/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.6/trixie/Dockerfile b/generated/4.0.6/trixie/Dockerfile index cb094ff..5673c8b 100644 --- a/generated/4.0.6/trixie/Dockerfile +++ b/generated/4.0.6/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.7/bookworm/Dockerfile b/generated/4.0.7/bookworm/Dockerfile index cb02b6e..550e030 100644 --- a/generated/4.0.7/bookworm/Dockerfile +++ b/generated/4.0.7/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.7/bullseye/Dockerfile b/generated/4.0.7/bullseye/Dockerfile index d490cad..5e4fb0a 100644 --- a/generated/4.0.7/bullseye/Dockerfile +++ b/generated/4.0.7/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.7/jammy/Dockerfile b/generated/4.0.7/jammy/Dockerfile index 914f687..41a499a 100644 --- a/generated/4.0.7/jammy/Dockerfile +++ b/generated/4.0.7/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.7/noble/Dockerfile b/generated/4.0.7/noble/Dockerfile index b3a5c6b..98bf804 100644 --- a/generated/4.0.7/noble/Dockerfile +++ b/generated/4.0.7/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -68,54 +102,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/4.0.7/trixie/Dockerfile b/generated/4.0.7/trixie/Dockerfile index 2d006c0..f7747c7 100644 --- a/generated/4.0.7/trixie/Dockerfile +++ b/generated/4.0.7/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.0/bookworm/Dockerfile b/generated/5.0.0/bookworm/Dockerfile index 785100b..4b93170 100644 --- a/generated/5.0.0/bookworm/Dockerfile +++ b/generated/5.0.0/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.0/bullseye/Dockerfile b/generated/5.0.0/bullseye/Dockerfile index a9fcc69..dfc17c4 100644 --- a/generated/5.0.0/bullseye/Dockerfile +++ b/generated/5.0.0/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.0/jammy/Dockerfile b/generated/5.0.0/jammy/Dockerfile index 0266f19..0b214e5 100644 --- a/generated/5.0.0/jammy/Dockerfile +++ b/generated/5.0.0/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.0/noble/Dockerfile b/generated/5.0.0/noble/Dockerfile index f541232..88c1a7b 100644 --- a/generated/5.0.0/noble/Dockerfile +++ b/generated/5.0.0/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.0/trixie/Dockerfile b/generated/5.0.0/trixie/Dockerfile index 1a0f1ca..4a4ddd8 100644 --- a/generated/5.0.0/trixie/Dockerfile +++ b/generated/5.0.0/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.1/bookworm/Dockerfile b/generated/5.0.1/bookworm/Dockerfile index f12214e..8273db9 100644 --- a/generated/5.0.1/bookworm/Dockerfile +++ b/generated/5.0.1/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.1/bullseye/Dockerfile b/generated/5.0.1/bullseye/Dockerfile index 9eb494c..f727565 100644 --- a/generated/5.0.1/bullseye/Dockerfile +++ b/generated/5.0.1/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.1/jammy/Dockerfile b/generated/5.0.1/jammy/Dockerfile index b232966..a753018 100644 --- a/generated/5.0.1/jammy/Dockerfile +++ b/generated/5.0.1/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.1/noble/Dockerfile b/generated/5.0.1/noble/Dockerfile index 712a51f..cae9820 100644 --- a/generated/5.0.1/noble/Dockerfile +++ b/generated/5.0.1/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.1/trixie/Dockerfile b/generated/5.0.1/trixie/Dockerfile index f470973..0f35e70 100644 --- a/generated/5.0.1/trixie/Dockerfile +++ b/generated/5.0.1/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.2/bookworm/Dockerfile b/generated/5.0.2/bookworm/Dockerfile index 6fb9081..1f77c73 100644 --- a/generated/5.0.2/bookworm/Dockerfile +++ b/generated/5.0.2/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.2/bullseye/Dockerfile b/generated/5.0.2/bullseye/Dockerfile index 0de59be..0cbbb1c 100644 --- a/generated/5.0.2/bullseye/Dockerfile +++ b/generated/5.0.2/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.2/jammy/Dockerfile b/generated/5.0.2/jammy/Dockerfile index 14c6815..ad8ddca 100644 --- a/generated/5.0.2/jammy/Dockerfile +++ b/generated/5.0.2/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.2/noble/Dockerfile b/generated/5.0.2/noble/Dockerfile index dacf5b6..8c5576d 100644 --- a/generated/5.0.2/noble/Dockerfile +++ b/generated/5.0.2/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.2/trixie/Dockerfile b/generated/5.0.2/trixie/Dockerfile index 4b17087..b68cff8 100644 --- a/generated/5.0.2/trixie/Dockerfile +++ b/generated/5.0.2/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.3/bookworm/Dockerfile b/generated/5.0.3/bookworm/Dockerfile index cba1ef7..c84b9f3 100644 --- a/generated/5.0.3/bookworm/Dockerfile +++ b/generated/5.0.3/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.3/bullseye/Dockerfile b/generated/5.0.3/bullseye/Dockerfile index c397c41..b5f887c 100644 --- a/generated/5.0.3/bullseye/Dockerfile +++ b/generated/5.0.3/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.3/jammy/Dockerfile b/generated/5.0.3/jammy/Dockerfile index 52eed8d..c98b86b 100644 --- a/generated/5.0.3/jammy/Dockerfile +++ b/generated/5.0.3/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.3/noble/Dockerfile b/generated/5.0.3/noble/Dockerfile index f47b26d..ee209a9 100644 --- a/generated/5.0.3/noble/Dockerfile +++ b/generated/5.0.3/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.3/trixie/Dockerfile b/generated/5.0.3/trixie/Dockerfile index 0df8a3a..a21ce26 100644 --- a/generated/5.0.3/trixie/Dockerfile +++ b/generated/5.0.3/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.4/bookworm/Dockerfile b/generated/5.0.4/bookworm/Dockerfile index 1c9b378..e66d400 100644 --- a/generated/5.0.4/bookworm/Dockerfile +++ b/generated/5.0.4/bookworm/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.4/bullseye/Dockerfile b/generated/5.0.4/bullseye/Dockerfile index 3e63ebe..01b2519 100644 --- a/generated/5.0.4/bullseye/Dockerfile +++ b/generated/5.0.4/bullseye/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.4/jammy/Dockerfile b/generated/5.0.4/jammy/Dockerfile index bb11a63..b8b2998 100644 --- a/generated/5.0.4/jammy/Dockerfile +++ b/generated/5.0.4/jammy/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.4/noble/Dockerfile b/generated/5.0.4/noble/Dockerfile index fa12063..cc61e88 100644 --- a/generated/5.0.4/noble/Dockerfile +++ b/generated/5.0.4/noble/Dockerfile @@ -35,6 +35,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -72,54 +106,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/generated/5.0.4/trixie/Dockerfile b/generated/5.0.4/trixie/Dockerfile index 2d6ae21..d1a642a 100644 --- a/generated/5.0.4/trixie/Dockerfile +++ b/generated/5.0.4/trixie/Dockerfile @@ -34,6 +34,40 @@ RUN set -eux; \ ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -71,54 +105,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/src/Dockerfile.template b/src/Dockerfile.template index f1764a5..81f7445 100644 --- a/src/Dockerfile.template +++ b/src/Dockerfile.template @@ -30,6 +30,40 @@ RUN set -eux; \ {{EXTRA_PACKAGES}} ca-certificates \ curl; \ \ + # FB 3.0 only: provide libtommath.so.0 and libncurses5/libtinfo5 BEFORE running the installer. + # The installer sets the SYSDBA password with 'gsec', which cannot start without them. + # See DECISIONS.md D-019 and https://github.com/FirebirdSQL/firebird-docker/issues/47 + if [ "$FIREBIRD_MAJOR" = "3" ]; then \ + # Fix libtommath -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 + MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ + ln -sf /usr/lib/$MULTIARCH/libtommath.so.1 /usr/lib/$MULTIARCH/libtommath.so.0; \ + \ + # libncurses5/libtinfo5 were dropped from apt on Debian Trixie and Ubuntu Noble; pull them from the previous release pool. + # See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 + . /etc/os-release; \ + case "$ID-$VERSION_CODENAME" in \ + debian-bookworm|debian-bullseye|ubuntu-jammy) \ + apt-get install -y --no-install-recommends libtinfo5 libncurses5 \ + ;; \ + debian-trixie) \ + curl -fSL -o /tmp/libtinfo5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + ubuntu-noble) \ + curl -fSL -o /tmp/libtinfo5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.3_amd64.deb; \ + curl -fSL -o /tmp/libncurses5.deb http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.3_amd64.deb; \ + dpkg -i /tmp/libtinfo5.deb /tmp/libncurses5.deb; \ + rm -f /tmp/libtinfo5.deb /tmp/libncurses5.deb \ + ;; \ + *) \ + echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ + exit 1 \ + ;; \ + esac; \ + fi; \ + \ # Download ARCH=$(dpkg --print-architecture); \ case "$ARCH" in \ @@ -67,54 +101,6 @@ RUN set -eux; \ apt-get clean; \ rm -rf /var/lib/apt/lists/* -# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 -RUN set -eux; \ - ARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null || echo "$(uname -m)-linux-gnu"); \ - [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/$ARCH/libtommath.so.1 /usr/lib/$ARCH/libtommath.so.0 || true - -# FB 3.0 needs libncurses5/libtinfo5. On Debian Trixie and Ubuntu Noble those -# packages were dropped from apt; pull them from the previous release pool. -# See DECISIONS.md D-017 and https://github.com/FirebirdSQL/firebird-docker/issues/42 -RUN set -eux; \ - if [ "$FIREBIRD_MAJOR" = "3" ]; then \ - . /etc/os-release; \ - case "$ID-$VERSION_CODENAME" in \ - debian-bookworm|debian-bullseye|ubuntu-jammy) \ - apt-get update; \ - apt-get install -y --no-install-recommends libtinfo5 libncurses5; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - debian-trixie) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libtinfo5_6.4-4_amd64.deb; \ - curl -fSL -O http://deb.debian.org/debian/pool/main/n/ncurses/libncurses5_6.4-4_amd64.deb; \ - dpkg -i libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - rm -f libtinfo5_6.4-4_amd64.deb libncurses5_6.4-4_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - ubuntu-noble) \ - apt-get update; \ - apt-get install -y --no-install-recommends ca-certificates curl; \ - cd /tmp; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.2_amd64.deb; \ - curl -fSL -O http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - dpkg -i libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - rm -f libtinfo5_6.3-2ubuntu0.2_amd64.deb libncurses5_6.3-2ubuntu0.2_amd64.deb; \ - apt-get purge -y --auto-remove curl ca-certificates; \ - apt-get clean; \ - rm -rf /var/lib/apt/lists/* \ - ;; \ - *) \ - echo "FB3: no libncurses5 provisioning path for $ID-$VERSION_CODENAME" >&2; \ - exit 1 \ - ;; \ - esac; \ - fi - # System path ENV PATH=/opt/firebird/bin:$PATH diff --git a/src/image.tests.ps1 b/src/image.tests.ps1 index 3689c07..709a493 100644 --- a/src/image.tests.ps1 +++ b/src/image.tests.ps1 @@ -284,11 +284,42 @@ task FIREBIRD_USER_can_create_user { docker exec $cId test -f /opt/firebird/SYSDBA.password | ExitCodeIs -ExpectedValue 0 -ErrorMessage "Expected SYSDBA.password file to exist when a new user is created." + # SYSDBA password from SYSDBA.password file still works? + $sysdbaPassword = docker exec $cId awk -F= '/^ISC_PASSWORD/{print $2}' /opt/firebird/SYSDBA.password + 'SELECT 1 FROM rdb$database;' | + docker exec -i $cId isql -b -q -u SYSDBA -p $sysdbaPassword inet:///var/lib/firebird/data/test.fdb | + ExitCodeIs -ExpectedValue 0 -ErrorMessage "Expected successful login with SYSDBA password from SYSDBA.password file when a new user is created." + docker logs $cId | Contains -Pattern "Creating user 'alice'" -ErrorMessage "Expected log message indicating creation of user 'alice'." } } +task SYSDBA_password_file_allows_remote_login { + # Stock container, no environment variables: the password generated by the Firebird installer must work. + # https://github.com/FirebirdSQL/firebird-docker/issues/47 + Use-Container -ScriptBlock { + param($cId) + + $sysdbaPassword = docker exec $cId awk -F= '/^ISC_PASSWORD/{print $2}' /opt/firebird/SYSDBA.password + assert $sysdbaPassword "Expected SYSDBA.password file to contain ISC_PASSWORD." + + # Correct password (creates the database through the server, which authenticates the user) + "CREATE DATABASE 'inet:///var/lib/firebird/data/test.fdb' USER 'SYSDBA' PASSWORD '$sysdbaPassword';" | + docker exec -i $cId isql -b -q | + ExitCodeIs -ExpectedValue 0 -ErrorMessage "Expected CREATE DATABASE over the network to succeed with SYSDBA password from SYSDBA.password file." + + 'SELECT 1 FROM rdb$database;' | + docker exec -i $cId isql -b -q -u SYSDBA -p $sysdbaPassword inet:///var/lib/firebird/data/test.fdb | + ExitCodeIs -ExpectedValue 0 -ErrorMessage "Expected successful login with SYSDBA password from SYSDBA.password file." + + # Incorrect password + 'SELECT 1 FROM rdb$database;' | + docker exec -i $cId isql -b -q -u SYSDBA -p tiger inet:///var/lib/firebird/data/test.fdb 2>&1 | + ExitCodeIs -ExpectedValue 1 -ErrorMessage "Expected failed login with incorrect SYSDBA password." + } +} + task FIREBIRD_ROOT_PASSWORD_can_change_sysdba_password { Use-Container -Parameters '-e', 'FIREBIRD_DATABASE=test.fdb', '-e', 'FIREBIRD_ROOT_PASSWORD=passw0rd' { param($cId)