diff --git a/pkgs/by-name/st/stats/package.nix b/pkgs/by-name/st/stats/package.nix index ed71e50f2bae..b907d5b2db81 100644 --- a/pkgs/by-name/st/stats/package.nix +++ b/pkgs/by-name/st/stats/package.nix @@ -2,6 +2,10 @@ , stdenvNoCC , fetchurl , undmg +, writeShellApplication +, curl +, jq +, common-updater-scripts }: stdenvNoCC.mkDerivation (finalAttrs: { @@ -12,6 +16,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg"; hash = "sha256-CdTY5Qv/xF9ItNgHQFqec5nKObnImx/+MuFShTfdrAo="; }; + sourceRoot = "."; nativeBuildInputs = [ undmg ]; @@ -25,12 +30,23 @@ stdenvNoCC.mkDerivation (finalAttrs: { runHook postInstall ''; + passthru.updateScript = lib.getExe (writeShellApplication { + name = "stats-update-script"; + runtimeInputs = [ curl jq common-updater-scripts ]; + text = '' + set -euo pipefail + url="$(curl --silent "https://api.github.com/repos/exelban/stats/tags?per_page=1")" + version="$(echo "$url" | jq -r '.[0].name' | cut -c 2-)" + update-source-version stats "$version" --file=./pkgs/by-name/st/stats/package.nix + ''; + }); + meta = with lib; { description = "macOS system monitor in your menu bar"; homepage = "https://github.com/exelban/stats"; license = licenses.mit; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - maintainers = with maintainers; [ emilytrau Enzime ]; + maintainers = with maintainers; [ emilytrau Enzime donteatoreo ]; platforms = platforms.darwin; }; })