ci: switch to debian 13 (#8238)

pull/8247/head
Mitchell Hashimoto 2025-08-15 09:01:44 -07:00 committed by GitHub
commit 30c95f3bbb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 14 additions and 18 deletions

View File

@ -36,7 +36,7 @@ jobs:
- translations - translations
- blueprint-compiler - blueprint-compiler
- test-pkg-linux - test-pkg-linux
- test-debian-12 - test-debian-13
- zig-fmt - zig-fmt
steps: steps:
- id: status - id: status
@ -957,8 +957,8 @@ jobs:
run: | run: |
nix develop -c sh -c "cd pkg/${{ matrix.pkg }} ; zig build test" nix develop -c sh -c "cd pkg/${{ matrix.pkg }} ; zig build test"
test-debian-12: test-debian-13:
name: Test build on Debian 12 name: Test build on Debian 13
runs-on: namespace-profile-ghostty-sm runs-on: namespace-profile-ghostty-sm
needs: [test, build-dist] needs: [test, build-dist]
steps: steps:
@ -984,7 +984,7 @@ jobs:
context: dist context: dist
file: dist/src/build/docker/debian/Dockerfile file: dist/src/build/docker/debian/Dockerfile
build-args: | build-args: |
DISTRO_VERSION=12 DISTRO_VERSION=13
flatpak-check-zig-cache: flatpak-check-zig-cache:
if: github.repository == 'ghostty-org/ghostty' if: github.repository == 'ghostty-org/ghostty'

View File

@ -1,10 +1,11 @@
ARG DISTRO_VERSION="12" ARG DISTRO_VERSION="13"
FROM docker.io/library/debian:${DISTRO_VERSION} FROM docker.io/library/debian:${DISTRO_VERSION}
# Install Dependencies # Install Dependencies
RUN DEBIAN_FRONTEND="noninteractive" apt-get -qq update && \ RUN DEBIAN_FRONTEND="noninteractive" apt-get -qq update && \
apt-get -qq -y --no-install-recommends install \ apt-get -qq -y --no-install-recommends install \
# Build Tools # Build Tools
blueprint-compiler \
build-essential \ build-essential \
curl \ curl \
libbz2-dev \ libbz2-dev \
@ -16,33 +17,28 @@ RUN DEBIAN_FRONTEND="noninteractive" apt-get -qq update && \
pandoc \ pandoc \
# Ghostty Dependencies # Ghostty Dependencies
libadwaita-1-dev \ libadwaita-1-dev \
libgtk-4-dev && \ libgtk-4-dev \
# TODO: Add when this is updated to Debian 13++ libgtk4-layer-shell-dev && \
# gtk4-layer-shell
# Clean up for better caching # Clean up for better caching
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
# work around the fact that Debian 12 doesn't ship a pkg-config file for bzip2 WORKDIR /src
RUN . /etc/os-release; if [ $VERSION_ID -le 12 ]; then ln -s libbz2.so /usr/lib/$(gcc -dumpmachine)/libbzip2.so; fi
COPY ./build.zig /src
# Install zig # Install zig
# https://ziglang.org/download/ # https://ziglang.org/download/
COPY . /src
WORKDIR /src
RUN export ZIG_VERSION=$(sed -n -e 's/^.*requireZig("\(.*\)").*$/\1/p' build.zig) && curl -L -o /tmp/zig.tar.xz "https://ziglang.org/download/$ZIG_VERSION/zig-linux-$(uname -m)-$ZIG_VERSION.tar.xz" && \ RUN export ZIG_VERSION=$(sed -n -e 's/^.*requireZig("\(.*\)").*$/\1/p' build.zig) && curl -L -o /tmp/zig.tar.xz "https://ziglang.org/download/$ZIG_VERSION/zig-linux-$(uname -m)-$ZIG_VERSION.tar.xz" && \
tar -xf /tmp/zig.tar.xz -C /opt && \ tar -xf /tmp/zig.tar.xz -C /opt && \
rm /tmp/zig.tar.xz && \ rm /tmp/zig.tar.xz && \
ln -s "/opt/zig-linux-$(uname -m)-$ZIG_VERSION/zig" /usr/local/bin/zig ln -s "/opt/zig-linux-$(uname -m)-$ZIG_VERSION/zig" /usr/local/bin/zig
# Debian 12 doesn't have gtk4-layer-shell, so we have to manually compile it ourselves COPY . /src
RUN zig build \ RUN zig build \
-Doptimize=Debug \ -Doptimize=Debug \
-Dcpu=baseline \ -Dcpu=baseline
-Dapp-runtime=gtk \
-fno-sys=gtk4-layer-shell
RUN ./zig-out/bin/ghostty +version RUN ./zig-out/bin/ghostty +version