diff --git a/.github/workflows/build-machines-and-homes.yml b/.github/workflows/build-machines-and-homes.yml index 2bf0350..1272cc1 100644 --- a/.github/workflows/build-machines-and-homes.yml +++ b/.github/workflows/build-machines-and-homes.yml @@ -70,20 +70,12 @@ jobs: nix build -L "$package" - name: cache - # https://stackoverflow.com/a/58859404 - if: '!cancelled()' + if: always() run: | package=".#nixosConfigurations."${{ matrix.machine }}".config.system.build.toplevel" - derivations=() - while IFS=$'\n' read derivation; do - derivations+=("$derivation") - done < <(nix path-info --derivation "$package") - - for derivation in "${derivations[@]}"; do - nix copy -j8 \ - --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ - $(nix-store --query --requisites --include-outputs "$derivation") - done + nix copy -j8 \ + --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ + $(nix path-info --recursive --derivation "$package" |sed 's/\.drv$/.drv^*/') build-homes: strategy: @@ -137,17 +129,9 @@ jobs: nix build -L "$package" - name: cache - # https://stackoverflow.com/a/58859404 - if: '!cancelled()' + if: always() run: | package=".#homeConfigurations."${{ matrix.home }}".activationPackage" - derivations=() - while IFS=$'\n' read derivation; do - derivations+=("$derivation") - done < <(nix path-info --derivation "$package") - - for derivation in "${derivations[@]}"; do - nix copy -j8 \ - --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ - $(nix-store --query --requisites --include-outputs "$derivation") - done + nix copy -j8 \ + --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ + $(nix path-info --recursive --derivation "$package" |sed 's/\.drv$/.drv^*/') diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index cd3c273..637afbf 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -59,19 +59,11 @@ jobs: - run: nix build -L ${{ matrix.package }} - name: cache result - # https://stackoverflow.com/a/58859404 - if: '!cancelled()' + if: always() run: | - derivations=() - while IFS=$'\n' read derivation; do - derivations+=("$derivation") - done < <(nix path-info --derivation "${{ matrix.package }}") - - for derivation in "${derivations[@]}"; do - nix copy -j8 \ - --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ - $(nix-store --query --requisites --include-outputs "$derivation") - done + nix copy -j8 \ + --to 's3://nixcache?endpoint=s3.cy7.sh&secret-key=/home/runner/cache-priv-key.pem' \ + $(nix path-info --recursive --derivation "${{ matrix.package }}" |sed 's/\.drv$/.drv^*/') - name: prepare tarball to upload run: nix run github:nixos/nixpkgs#gnutar hcvf result.tar result diff --git a/flake.lock b/flake.lock index ebf3a62..fb7918a 100644 --- a/flake.lock +++ b/flake.lock @@ -455,11 +455,11 @@ ] }, "locked": { - "lastModified": 1743267068, - "narHash": "sha256-G7866vbO5jgqMcYJzgbxej40O6mBGQMGt6gM0himjoA=", + "lastModified": 1743136572, + "narHash": "sha256-uwaVrKgi6g1TUq56247j6QvvFtYHloCkjCrEpGBvV54=", "owner": "nix-community", "repo": "home-manager", - "rev": "b431496538b0e294fbe44a1441b24ae8195c63f0", + "rev": "1efd2503172016a6742c87b47b43ca2c8145607d", "type": "github" }, "original": { @@ -828,11 +828,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1743256265, - "narHash": "sha256-1GJtabBAEwSkwKgSBe+osLCYwcRr5zx5H7ipuoVkO/4=", + "lastModified": 1743169207, + "narHash": "sha256-JVBHFruzE0/uCMbp8c6f/0mtMLO05Gs5kOo8RYsJss0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5dab1e63b3efccf767a54b0b978b41fe7410aff0", + "rev": "360e0a6013f94d32ea86050d3646e3ccba1c2667", "type": "github" }, "original": { @@ -997,11 +997,11 @@ ] }, "locked": { - "lastModified": 1743215516, - "narHash": "sha256-52qbrkG65U1hyrQWltgHTgH4nm0SJL+9TWv2UDCEPNI=", + "lastModified": 1743129211, + "narHash": "sha256-gE8t+U9miTwm2NYWS9dFY8H1/QB4ifaFDq1KdV9KEqo=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "524463199fdee49338006b049bc376b965a2cfed", + "rev": "f93da1d26ba9963f34f94a6872b67a7939699543", "type": "github" }, "original": { @@ -1090,11 +1090,11 @@ ] }, "locked": { - "lastModified": 1743213162, - "narHash": "sha256-9UU0x2fZORsX6PEpzkIAD/7+bwm+javJtZA/411ZmLg=", + "lastModified": 1743126894, + "narHash": "sha256-FUsh0AWH3ndHvZsGkAf0Ng/wn8z9JydhhkICYoU4aEk=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "1b2a53e3478225bc35d14ae75ea9e7b749c16d5b", + "rev": "2473e00df450ad863f552f2cc8da78e6a942118d", "type": "github" }, "original": {