summary refs log tree commit diff
path: root/pkgs/os-specific/darwin/karabiner-elements
diff options
context:
space:
mode:
authorIlan Joselevich <personal@ilanjoselevich.com>2023-04-01 02:06:55 +0300
committerGitHub <noreply@github.com>2023-04-01 02:06:55 +0300
commit4a7fce0a52ed0365deeb40e0209c577ebfe04403 (patch)
tree19857c646ed35ee3fc519927124382478650c410 /pkgs/os-specific/darwin/karabiner-elements
parent5003b7f4535c4fdb4e320ebd144b971ffa7b863c (diff)
parentdbf278b976e3f2a8a3d100fa4ec897f537d65563 (diff)
downloadnixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar.gz
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar.bz2
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar.lz
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar.xz
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.tar.zst
nixpkgs-4a7fce0a52ed0365deeb40e0209c577ebfe04403.zip
Merge pull request #223558 from vamega/karabiner-elements-update-script
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 e0852690543..03a9938bb20 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}"