name: Update manual
on:
  push:
    branches:
    - master

jobs:
  update-manual:
    runs-on: macos-13
    steps:
    - name: Checkout repository
      uses: actions/checkout@v4
      with:
        # So that we fetch all branches, since we need to checkout the `gh-pages` branch later.
        fetch-depth: 0

    - name: Install Nix
      uses: cachix/install-nix-action@v30

    - name: Build manual
      run: |
        nix build .#manualHTML

    - name: Push update to manual
      run: |
        git checkout gh-pages
        rm -rf manual
        cp -R result/share/doc/darwin manual
        rm result
        git checkout master -- README.md
        git config user.name github-actions
        git config user.email github-actions@github.com
        git add --all
        git commit -m "Update manual"
        git push