From 6daa866beb4d1e26a8b2579a596e669831f7a94f Mon Sep 17 00:00:00 2001 From: Mihai Fufezan Date: Thu, 2 Jun 2022 00:08:03 +0300 Subject: [PATCH] nix/updater: only update wlroots on rev change --- nix/update-inputs.sh | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/nix/update-inputs.sh b/nix/update-inputs.sh index fd3c248b..d0418d65 100755 --- a/nix/update-inputs.sh +++ b/nix/update-inputs.sh @@ -1,13 +1,19 @@ -#!/usr/bin/env -S nix shell nixpkgs#gawk nixpkgs#git nixpkgs#moreutils -c bash - -# get wlroots revision from submodule -rev=$(git submodule status | awk '{ print substr($1,2)}') +#!/usr/bin/env -S nix shell nixpkgs#gawk nixpkgs#git nixpkgs#moreutils nixpkgs#jq -c bash # update nixpkgs to latest version nix flake lock --update-input nixpkgs -# update wlroots to submodule revision -nix flake lock --override-input wlroots "gitlab:wlroots/wlroots/$rev?host=gitlab.freedesktop.org" +# get wlroots revision from submodule +SUB_REV=$(git submodule status | awk '{ print substr($1,2)}') +# and from lockfile +CRT_REV=$(jq < flake.lock '.nodes.wlroots.locked.rev' -r) -# remove "dirty" mark from lockfile -jq < flake.lock 'del(.nodes.wlroots.original.rev)' | sponge flake.lock +if [ $SUB_REV != $CRT_REV ]; then + # update wlroots to submodule revision + nix flake lock --override-input wlroots "gitlab:wlroots/wlroots/$SUB_REV?host=gitlab.freedesktop.org" + + # remove "dirty" mark from lockfile + jq < flake.lock 'del(.nodes.wlroots.original.rev)' | sponge flake.lock +else + echo "wlroots is up to date!" +fi