name: "Build system and deploy to cache" on: push: branches: - master paths: - 'flake.lock' workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - name: Maximize build space uses: easimon/maximize-build-space@master with: remove-dotnet: 'true' remove-android: 'true' remove-haskell: 'true' remove-docker-images: 'true' - name: Checkout uses: actions/checkout@v3 - name: Install nix uses: cachix/install-nix-action@v21 with: nix_path: 'nixpkgs=channel:nixos-unstable' extra_nix_config: | access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} substituters = https://cache.nixos.org https://nix-community.cachix.org https://hyprland.cachix.org https://ataraxiadev-foss.cachix.org https://cache.ataraxiadev.com/ataraxiadev trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs= hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc= ataraxiadev-foss.cachix.org-1:ws/jmPRUF5R8TkirnV1b525lP9F/uTBsz2KraV61058= ataraxiadev:/V5bNjSzHVGx6r2XA2fjkgUYgqoz9VnrAHq45+2FJAs= netrc-file = /home/runner/.config/nix/netrc - name: Setup attic cache run: | mkdir -p /home/runner/.config/nix echo "machine cache.ataraxiadev.com" > /home/runner/.config/nix/netrc echo "password ${{ secrets.ATTIC_TOKEN }}" >> /home/runner/.config/nix/netrc nix run github:AtaraxiaSjel/attic#attic -- login dev https://cache.ataraxiadev.com/ ${{ secrets.ATTIC_TOKEN }} - name: Build system run: | export TMPDIR=$(pwd)/build/tmp mkdir -p $TMPDIR echo 'Build host-vps' nix build --out-link result-vps --store $(pwd)/build .#host-vps echo 'Build host-hypervisor' nix build --out-link result-hypervisor --store $(pwd)/build .#host-hypervisor - name: Push to cache run: nix develop .#ci -c attic push ataraxiadev ./result*