on:
  workflow_call:
    secrets:
      CACHIX_AUTH_TOKEN:
        required: false

jobs:
  build:
    strategy:
      matrix:
        package:
          - hyprland
          - xdg-desktop-portal-hyprland

    runs-on: ubuntu-latest
    steps:
      - name: Clone repository
        uses: actions/checkout@v4
        with:
          ref: ${{ github.ref }}
          submodules: recursive

      - uses: cachix/install-nix-action@v27
      - uses: DeterminateSystems/magic-nix-cache-action@main
      - uses: cachix/cachix-action@v15
        with:
          name: hyprland
          authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'

      - run: nix build '.?submodules=1#${{ matrix.package }}' -L --extra-substituters "https://hyprland.cachix.org"
