diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index e23fd54..b83aac9 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -132,6 +132,8 @@ jobs: - alpine-appimage - alpine-static - debian + - debian-pi-cross-armhf + - debian-pi-cross-arm64 - fedora - flatpak-builder - ubuntu-lts diff --git a/docker-compose.yml b/docker-compose.yml index 4ea41f3..9a15202 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -57,6 +57,12 @@ services: debian: image: ghcr.io/toktok/qtox:debian <<: *shared_params + debian-pi-cross-armhf: + image: ghcr.io/toktok/qtox:debian-pi-cross-armhf + <<: *shared_params + debian-pi-cross-arm64: + image: ghcr.io/toktok/qtox:debian-pi-cross-arm64 + <<: *shared_params fedora: image: ghcr.io/toktok/qtox:fedora <<: *shared_params diff --git a/qtox/docker/Dockerfile.debian-pi-cross-arm64 b/qtox/docker/Dockerfile.debian-pi-cross-arm64 new file mode 100644 index 0000000..ecc44c6 --- /dev/null +++ b/qtox/docker/Dockerfile.debian-pi-cross-arm64 @@ -0,0 +1,54 @@ +# Dockerfile.debian-pi-cross-arm64 +# Cross-compilation environment for Raspberry Pi (ARM64) based on Debian Bookworm + +FROM debian:bookworm + +ENV DEBIAN_FRONTEND=noninteractive + +RUN dpkg --add-architecture arm64 && \ + apt-get update + +# Install native amd64 build tools +RUN apt-get install -y --no-install-recommends \ + build-essential \ + crossbuild-essential-arm64 \ + cmake \ + git \ + pkg-config \ + ninja-build \ + dpkg-dev \ + debhelper \ + qt6-base-dev \ + qt6-tools-dev \ + qt6-tools-dev-tools \ + ca-certificates + +# Install target dependencies for arm64 +RUN apt-get install -y --no-install-recommends \ + pkg-config:arm64 \ + qt6-base-dev:arm64 \ + libqt6svg6-dev:arm64 \ + qt6-tools-dev:arm64 \ + libavcodec-dev:arm64 \ + libavdevice-dev:arm64 \ + libavformat-dev:arm64 \ + libavutil-dev:arm64 \ + libswscale-dev:arm64 \ + libexif-dev:arm64 \ + libqrencode-dev:arm64 \ + libsqlcipher-dev:arm64 \ + libssl-dev:arm64 \ + libtoxcore-dev:arm64 \ + libsodium-dev:arm64 \ + libopus-dev:arm64 \ + libvpx-dev:arm64 \ + libopenal-dev:arm64 \ + libv4l-dev:arm64 \ + libx11-dev:arm64 \ + libxss-dev:arm64 \ + libunwind-dev:arm64 \ + && rm -rf /var/lib/apt/lists/* + +WORKDIR /workspace + +CMD ["/bin/bash"] diff --git a/qtox/docker/Dockerfile.debian-pi-cross-armhf b/qtox/docker/Dockerfile.debian-pi-cross-armhf new file mode 100644 index 0000000..13ff966 --- /dev/null +++ b/qtox/docker/Dockerfile.debian-pi-cross-armhf @@ -0,0 +1,54 @@ +# Dockerfile.debian-pi-cross-armhf +# Cross-compilation environment for Raspberry Pi (ARMHF) based on Debian Bookworm + +FROM debian:bookworm + +ENV DEBIAN_FRONTEND=noninteractive + +RUN dpkg --add-architecture armhf && \ + apt-get update + +# Install native amd64 build tools +RUN apt-get install -y --no-install-recommends \ + build-essential \ + crossbuild-essential-armhf \ + cmake \ + git \ + pkg-config \ + ninja-build \ + dpkg-dev \ + debhelper \ + qt6-base-dev \ + qt6-tools-dev \ + qt6-tools-dev-tools \ + ca-certificates + +# Install target dependencies for armhf +RUN apt-get install -y --no-install-recommends \ + pkg-config:armhf \ + qt6-base-dev:armhf \ + libqt6svg6-dev:armhf \ + qt6-tools-dev:armhf \ + libavcodec-dev:armhf \ + libavdevice-dev:armhf \ + libavformat-dev:armhf \ + libavutil-dev:armhf \ + libswscale-dev:armhf \ + libexif-dev:armhf \ + libqrencode-dev:armhf \ + libsqlcipher-dev:armhf \ + libssl-dev:armhf \ + libtoxcore-dev:armhf \ + libsodium-dev:armhf \ + libopus-dev:armhf \ + libvpx-dev:armhf \ + libopenal-dev:armhf \ + libv4l-dev:armhf \ + libx11-dev:armhf \ + libxss-dev:armhf \ + libunwind-dev:armhf \ + && rm -rf /var/lib/apt/lists/* + +WORKDIR /workspace + +CMD ["/bin/bash"]