From 433417ade2527851945754c13075dfe4c407fdfb Mon Sep 17 00:00:00 2001 From: Agahnim <43116178+naguiagahnim@users.noreply.github.com> Date: Tue, 5 May 2026 10:29:10 +0200 Subject: [PATCH 1/3] automate npm dependencies hash fetch --- default.nix | 5 +---- update-npm-hash.sh | 4 ++++ 2 files changed, 5 insertions(+), 4 deletions(-) create mode 100755 update-npm-hash.sh diff --git a/default.nix b/default.nix index a6e2c7d..6d1e106 100644 --- a/default.nix +++ b/default.nix @@ -1,7 +1,4 @@ { - pkgs ? - import - (fetchTarball "https://github.com/NixOS/nixpkgs/archive/c6d65881c5624c9cae5ea6cedef24699b0c0a4c0.tar.gz") - { }, + pkgs ? import { }, }: pkgs.callPackage ./package.nix { } diff --git a/update-npm-hash.sh b/update-npm-hash.sh new file mode 100755 index 0000000..8044cf8 --- /dev/null +++ b/update-npm-hash.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +hash=$(nix-shell -p prefetch-npm-deps --run "prefetch-npm-deps package-lock.json" 2>/dev/null) +echo "New hash: $hash" +sed -i "s|hash = \"[^\"]*\"|hash = \"$hash\"|" package.nix \ No newline at end of file From e50f885ba2523bd9a7985fa76a15c1768daa57ed Mon Sep 17 00:00:00 2001 From: Agahnim <43116178+naguiagahnim@users.noreply.github.com> Date: Tue, 5 May 2026 10:36:57 +0200 Subject: [PATCH 2/3] add CI/CD to automate npm hash updating --- .github/workflows/update-npm-hash.yml | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/update-npm-hash.yml diff --git a/.github/workflows/update-npm-hash.yml b/.github/workflows/update-npm-hash.yml new file mode 100644 index 0000000..9651a57 --- /dev/null +++ b/.github/workflows/update-npm-hash.yml @@ -0,0 +1,31 @@ +name: Update npm deps hash + +on: + push: + paths: + - "package-lock.json" + +jobs: + update-hash: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + + - uses: DeterminateSystems/nix-installer-action@main + + - name: Update hash + run: ./update-npm-hash.sh + + - name: Commit changes + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add package.nix + if [[ $(git status -s) ]]; then + git commit -m "chore: update npm deps hash" + git push + else + echo "Hash wasn't changed" + fi From 9144e52db10a8f64002e4a1fc1cd64b54b546b43 Mon Sep 17 00:00:00 2001 From: Agahnim <43116178+naguiagahnim@users.noreply.github.com> Date: Tue, 5 May 2026 16:59:22 +0200 Subject: [PATCH 3/3] remove shell script Will be integrated directly into CI/CD --- update-npm-hash.sh | 4 ---- 1 file changed, 4 deletions(-) delete mode 100755 update-npm-hash.sh diff --git a/update-npm-hash.sh b/update-npm-hash.sh deleted file mode 100755 index 8044cf8..0000000 --- a/update-npm-hash.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -hash=$(nix-shell -p prefetch-npm-deps --run "prefetch-npm-deps package-lock.json" 2>/dev/null) -echo "New hash: $hash" -sed -i "s|hash = \"[^\"]*\"|hash = \"$hash\"|" package.nix \ No newline at end of file