summary refs log tree commit diff
path: root/pkgs/os-specific/darwin/karabiner-elements
diff options
context:
space:
mode:
authorVarun Madiath <git@madiathv.com>2023-03-28 07:12:56 -0400
committerVarun Madiath <git@madiathv.com>2023-03-28 07:12:56 -0400
commitdbf278b976e3f2a8a3d100fa4ec897f537d65563 (patch)
treec12396a5727830b5fad36eb61d0888e0be16b9ce /pkgs/os-specific/darwin/karabiner-elements
parentac01c345adf8d336603a6d420657ad4024b0c4fe (diff)
downloadnixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar.gz
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar.bz2
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar.lz
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar.xz
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.tar.zst
nixpkgs-dbf278b976e3f2a8a3d100fa4ec897f537d65563.zip
karabiner-elements: Add updateScript
Diffstat (limited to 'pkgs/os-specific/darwin/karabiner-elements')
-rw-r--r--pkgs/os-specific/darwin/karabiner-elements/default.nix2
-rwxr-xr-xpkgs/os-specific/darwin/karabiner-elements/updater.sh13
2 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/os-specific/darwin/karabiner-elements/default.nix b/pkgs/os-specific/darwin/karabiner-elements/default.nix
index 6444c7f0e0f..2156d7b8682 100644
--- a/pkgs/os-specific/darwin/karabiner-elements/default.nix
+++ b/pkgs/os-specific/darwin/karabiner-elements/default.nix
@@ -40,6 +40,8 @@ stdenv.mkDerivation rec {
     cp "$out/Library/Application Support/org.pqrs/Karabiner-Elements/package-version" "$out/Library/Application Support/org.pqrs/Karabiner-Elements/version"
   '';
 
+  passthru.updateScript = ./updater.sh;
+
   meta = with lib; {
     description = "Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later.";
     homepage = "https://karabiner-elements.pqrs.org/";
diff --git a/pkgs/os-specific/darwin/karabiner-elements/updater.sh b/pkgs/os-specific/darwin/karabiner-elements/updater.sh
new file mode 100755
index 00000000000..eb0dd7b9ce5
--- /dev/null
+++ b/pkgs/os-specific/darwin/karabiner-elements/updater.sh
@@ -0,0 +1,13 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -I nixpkgs=./. -i bash -p curl jq common-updater-scripts
+set -eo pipefail
+
+new_version="$(curl -s  "https://api.github.com/repos/pqrs-org/Karabiner-Elements/releases/latest" | jq -r '.tag_name | ltrimstr("v")')"
+old_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./default.nix)"
+
+if [[ "$new_version" == "$old_version" ]]; then
+  echo "Already up to date!"
+  exit 0
+fi
+
+update-source-version karabiner-elements "${new_version}"