Files
chatmail-core/.github/workflows/nix.yml
link2xt bffaeacd0a build(nix): make it possible to build powerpc64le-linux and riscv64-linux builds
I have checked locally with "nix repl nixpkgs",
these are the targets currently supported:
 - legacyPackages.aarch64-darwin
 - legacyPackages.aarch64-linux
 - legacyPackages.armv6l-linux
 - legacyPackages.armv7l-linux
 - legacyPackages.i686-linux
 - legacyPackages.powerpc64le-linux
 - legacyPackages.riscv64-linux
 - legacyPackages.x86_64-darwin
 - legacyPackages.x86_64-freebsd
 - legacyPackages.x86_64-linux

Now we have all supported targets in the flake except for x86_64-freebsd

I tested locally that the builds work, but have not tested if it is possible to run them.

After running "nix build .#deltachat-rpc-server-powerpc64le-linux"
"file result/bin/deltachat-rpc-server" prints:
result/bin/deltachat-rpc-server: ELF 64-bit LSB executable, 64-bit PowerPC or cisco 7500, OpenPOWER ELF V2 ABI, version 1 (SYSV), statically linked, stripped

After running "nix build .#deltachat-rpc-server-riscv64-linux"
"file result/bin/deltachat-rpc-server" prints:
result/bin/deltachat-rpc-server: ELF 64-bit LSB pie executable, UCB RISC-V, RVC, double-float ABI, version 1 (SYSV), dynamically linked, interpreter /nix/store/ba1gsm7zvwl7id5njwzdx1igbdqydhm3-musl-riscv64-unknown-linux-musl-1.2.5/lib/ld-musl-riscv64.so.1, stripped
2026-09-04 20:10:33 +00:00

115 lines
3.5 KiB
YAML

name: Test Nix flake
on:
pull_request:
paths:
- flake.nix
- flake.lock
- nix/**
- .github/workflows/nix.yml
push:
paths:
- flake.nix
- flake.lock
- nix/**
- .github/workflows/nix.yml
branches:
- main
permissions: {}
jobs:
format:
name: check flake formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
show-progress: false
persist-credentials: false
- uses: cachix/install-nix-action@630ae543ea3a38a9a4166f03376c02c50f408342 # v31.11.0
- run: nix fmt flake.nix nix/ -- --check
build:
name: nix build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
installable:
# Ensure `nix develop` will work.
- devShells.x86_64-linux.default
- deltachat-python
- deltachat-repl
- deltachat-repl-aarch64-linux
- deltachat-repl-arm64-v8a-android
- deltachat-repl-armeabi-v7a-android
- deltachat-repl-armv6l-linux
- deltachat-repl-armv7l-linux
- deltachat-repl-i686-linux
- deltachat-repl-powerpc64le-linux
- deltachat-repl-riscv64-linux
- deltachat-repl-win32
- deltachat-repl-win64
- deltachat-repl-x86_64-linux
- deltachat-rpc-client
- deltachat-rpc-server
- deltachat-rpc-server-aarch64-linux
- deltachat-rpc-server-aarch64-linux-wheel
- deltachat-rpc-server-arm64-v8a-android
- deltachat-rpc-server-arm64-v8a-android-wheel
- deltachat-rpc-server-armeabi-v7a-android
- deltachat-rpc-server-armeabi-v7a-android-wheel
- deltachat-rpc-server-armv6l-linux
- deltachat-rpc-server-armv6l-linux-wheel
- deltachat-rpc-server-armv7l-linux
- deltachat-rpc-server-armv7l-linux-wheel
- deltachat-rpc-server-i686-linux
- deltachat-rpc-server-i686-linux-wheel
- deltachat-rpc-server-powerpc64le-linux
- deltachat-rpc-server-riscv64-linux
- deltachat-rpc-server-win32
- deltachat-rpc-server-win32-wheel
- deltachat-rpc-server-win64
- deltachat-rpc-server-win64-wheel
- deltachat-rpc-server-x86_64-linux
- deltachat-rpc-server-x86_64-linux-wheel
- docs
- libdeltachat
- python-docs
# Fails to build
#- deltachat-repl-x86_64-android
#- deltachat-repl-x86-android
#- deltachat-rpc-server-x86_64-android
#- deltachat-rpc-server-x86-android
steps:
- uses: actions/checkout@v7
with:
show-progress: false
persist-credentials: false
- uses: cachix/install-nix-action@630ae543ea3a38a9a4166f03376c02c50f408342 # v31.11.0
- run: nix build .#${{ matrix.installable }}
build-macos:
name: nix build on macOS
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
installable:
- deltachat-rpc-server
- deltachat-rpc-server-x86_64-darwin
# Fails to build
# because of <https://github.com/NixOS/nixpkgs/issues/413910>.
# - deltachat-rpc-server-aarch64-darwin
steps:
- uses: actions/checkout@v7
with:
show-progress: false
persist-credentials: false
- uses: cachix/install-nix-action@630ae543ea3a38a9a4166f03376c02c50f408342 # v31.11.0
- run: nix build .#${{ matrix.installable }}