# SPDX-FileCopyrightText: 2024 Christina Sørensen # # SPDX-License-Identifier: EUPL-1.2 on: workflow_dispatch: pull_request: branches: [main] paths: - '.github/workflows/flake.yml' - 'src/**' - 'Cargo.*' - "*.toml" - "flake.*" - "*.nix" - "*.rs" push: branches: [main] paths: - '.github/workflows/flake.yml' - 'src/**' - 'Cargo.*' - "*.toml" - "flake.*" - "*.nix" - "*.rs" concurrency: group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} cancel-in-progress: true jobs: flake-checker: name: Flake Checker runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Check Nix flake inputs uses: DeterminateSystems/flake-checker-action@v8 check: name: Check Nix Flake runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Install Nix uses: DeterminateSystems/nix-installer-action@v13 - name: Setup Nix cache uses: DeterminateSystems/magic-nix-cache-action@main - name: Nix Flake Check run: nix flake check --all-systems build: name: Build Nix package # if cross compilation is desired add 'aarch64-linux', 'x86_64-darwin' and 'aarch64-darwin' and fix the flake to support cross compilation. strategy: matrix: target: [x86_64-linux] runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Install Nix uses: DeterminateSystems/nix-installer-action@v13 - name: Setup Nix cache uses: DeterminateSystems/magic-nix-cache-action@main - name: Nix Build run: nix build .#packages.${{ matrix.target }}.default