From be596a5aab0c485cf56da9956a72e305abe3e954 Mon Sep 17 00:00:00 2001 From: Matt Moriarity Date: Sat, 7 Oct 2023 14:25:11 -0600 Subject: beeper: add update script --- .../instant-messengers/beeper/default.nix | 30 +++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) (limited to 'pkgs/applications/networking/instant-messengers/beeper') diff --git a/pkgs/applications/networking/instant-messengers/beeper/default.nix b/pkgs/applications/networking/instant-messengers/beeper/default.nix index c523b59fb1993..30e78a7652dde 100644 --- a/pkgs/applications/networking/instant-messengers/beeper/default.nix +++ b/pkgs/applications/networking/instant-messengers/beeper/default.nix @@ -1,10 +1,20 @@ -{ lib, fetchurl, mkDerivation, appimageTools, libsecret, makeWrapper }: +{ lib +, fetchurl +, mkDerivation +, appimageTools +, libsecret +, makeWrapper +, writeShellApplication +, curl +, yq +, common-updater-scripts +}: let pname = "beeper"; version = "3.71.16"; name = "${pname}-${version}"; src = fetchurl { - url = "https://download.todesktop.com/2003241lzgn20jd/beeper-${version}.AppImage"; + url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.71.16.AppImage"; hash = "sha256-Ho5zFmhNzkOmzo/btV+qZfP2GGx5XvV/1JncEKlH4vc="; }; appimage = appimageTools.wrapType2 { @@ -16,7 +26,7 @@ let }; in mkDerivation rec { - inherit name pname; + inherit name pname version; src = appimage; @@ -44,6 +54,20 @@ mkDerivation rec { runHook postInstall ''; + passthru = { + updateScript = lib.getExe (writeShellApplication { + name = "update-beeper"; + runtimeInputs = [ curl yq common-updater-scripts ]; + text = '' + set -o errexit + latestLinux="$(curl -s https://download.todesktop.com/2003241lzgn20jd/latest-linux.yml)" + version="$(echo "$latestLinux" | yq -r .version)" + filename="$(echo "$latestLinux" | yq -r '.files[] | .url | select(. | endswith(".AppImage"))')" + update-source-version beeper "$version" "" "https://download.todesktop.com/2003241lzgn20jd/$filename" --source-key=src.src + ''; + }); + }; + meta = with lib; { description = "Universal chat app."; longDescription = '' -- cgit 1.4.1