diff options
-rw-r--r-- | pkgs/applications/office/morgen/default.nix | 9 | ||||
-rwxr-xr-x | pkgs/applications/office/morgen/update.sh | 26 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
3 files changed, 33 insertions, 4 deletions
diff --git a/pkgs/applications/office/morgen/default.nix b/pkgs/applications/office/morgen/default.nix index f2bcd3b6a975a..7bb816a3f48eb 100644 --- a/pkgs/applications/office/morgen/default.nix +++ b/pkgs/applications/office/morgen/default.nix @@ -6,8 +6,8 @@ stdenv.mkDerivation rec { version = "3.0.1"; src = fetchurl { - url = "https://download.todesktop.com/210203cqcj00tw1/morgen-${version}.deb"; - sha256 = "sha256-lj+V5mntZzED2ZS62Uwlt/vTXwSuwzXeuEw8y/bA6og="; + url = "https://dl.todesktop.com/210203cqcj00tw1/versions/${version}/linux/deb"; + hash = "sha256-lj+V5mntZzED2ZS62Uwlt/vTXwSuwzXeuEw8y/bA6og="; }; nativeBuildInputs = [ @@ -46,12 +46,15 @@ stdenv.mkDerivation rec { runHook postInstall ''; + passthru.updateScript = ./update.sh; + meta = with lib; { description = "All-in-one Calendars, Tasks and Scheduler"; homepage = "https://morgen.so/download"; + mainProgram = "morgen"; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; license = licenses.unfree; - maintainers = with maintainers; [ wolfangaukang ]; + maintainers = with maintainers; [ justanotherariel wolfangaukang ]; platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/applications/office/morgen/update.sh b/pkgs/applications/office/morgen/update.sh new file mode 100755 index 0000000000000..e12f86a04bbca --- /dev/null +++ b/pkgs/applications/office/morgen/update.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl jq common-updater-scripts + +set -euo pipefail + +# URL to check for the latest version +latestUrl="https://dl.todesktop.com/210203cqcj00tw1/linux/deb/x64" + +# Fetch the latest version information +latestInfo=$(curl -sI -X GET $latestUrl | grep -oP 'morgen-\K\d+(\.\d+)*(?=[^\d])') + +if [[ -z "$latestInfo" ]]; then + echo "Could not find the latest version number." + exit 1 +fi + +# Extract the version number +latestVersion=$(echo "$latestInfo" | head -n 1) + +echo "Latest version of Morgen is $latestVersion" + +# Update the package definition +update-source-version morgen "$latestVersion" + +# Fetch and update the hash +nix-prefetch-url --unpack "https://dl.todesktop.com/210203cqcj00tw1/versions/${latestVersion}/linux/deb" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8dd214b13296b..4a0684d919431 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10985,7 +10985,7 @@ with pkgs; mole = callPackage ../tools/networking/mole { }; morgen = callPackage ../applications/office/morgen { - electron = electron_25; # blank screen with electron_26 + electron = electron_28; }; mosh = callPackage ../tools/networking/mosh { }; |