tracexec 0.8.2

Tracer for execve{,at} and pre-exec behavior, launcher for debuggers.
name: Continuous Integration (Nix)

on:
  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:
  push:
    branches:
      - main
      - ci
  pull_request:
  merge_group:

# ensure that the workflow is only triggered once per PR,  subsequent pushes to the PR will cancel
# and restart the workflow. See https://docs.github.com/en/actions/using-jobs/using-concurrency
concurrency:
  group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
  cancel-in-progress: true

jobs:
  nix:
    runs-on: ubuntu-latest
    steps:
      - name: Get more space
        run: |
          sudo rm -rf /usr/share/dotnet
          sudo rm -rf /opt/ghc
          sudo rm -rf "/usr/local/share/boost"
          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
      - uses: actions/checkout@v4
      - run: |
          sudo apt-get update -y
          sudo apt-get install -y qemu-kvm
      - uses: cachix/install-nix-action@v27
        with:
          nix_path: nixpkgs=channel:nixos-unstable
      - uses: DeterminateSystems/magic-nix-cache-action@v2
      # Build and test tracexec
      # Also builds kernels
      - run: nix build
      # Run Userspace<->Kernel CI
      - run: nix run '.#ukci'