name: pre-release on: push: jobs: pre-release: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - system: aarch64-macos target: aarch64-apple-darwin os: macos-latest # - system: aarch64-linux # target: aarch64-unknown-linux-musl # os: ubuntu-latest # - system: armv6l-linux # target: armv6l-unknown-linux-musleabihf # os: ubuntu-latest # - system: armv7l-linux # target: armv7l-unknown-linux-musleabihf # os: ubuntu-latest # - system: i686-linux # target: i686-unknown-linux-musl # os: ubuntu-latest # - system: i686-windows # target: i686-w64-mingw32 # os: ubuntu-latest - system: x86_64-macos target: x86_64-apple-darwin os: macos-latest # - system: x86_64-linux # target: x86_64-unknown-linux-musl # os: ubuntu-latest # - system: x86_64-windows # target: x86_64-w64-mingw32 # os: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Install Nix uses: cachix/install-nix-action@v27 with: nix_path: nixpkgs=channel:nixos-24.05 enable_kvm: true - name: Cache Nix store uses: cachix/cachix-action@v15 with: name: soywod authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' extraPullNames: nix-community - name: Build release run: | nix-build --argstr target ${{ matrix.target }} - name: Upload release artifacts uses: actions/upload-artifact@v4 with: name: "himalaya-${{ matrix.system }}" path: | result/bin/himalaya* result/bin/share