From 4a52315a51e878329b6d17ac5304c2d4e98921db Mon Sep 17 00:00:00 2001 From: Moritz Böhme Date: Thu, 9 Jun 2022 19:30:40 +0200 Subject: synology-drive-client: multiple changes --- .../networking/synology-drive-client/default.nix | 31 +++++++++++++++------- 1 file changed, 21 insertions(+), 10 deletions(-) (limited to 'pkgs/applications/networking/synology-drive-client') diff --git a/pkgs/applications/networking/synology-drive-client/default.nix b/pkgs/applications/networking/synology-drive-client/default.nix index 3184c192b127f..3158c3dc22ed0 100644 --- a/pkgs/applications/networking/synology-drive-client/default.nix +++ b/pkgs/applications/networking/synology-drive-client/default.nix @@ -1,9 +1,9 @@ -{ stdenv, lib, qt5, fetchurl, autoPatchelfHook, dpkg, glibc, cpio, xar, undmg, gtk3, pango }: +{ stdenv, lib, writeScript, qt5, fetchurl, autoPatchelfHook, dpkg, glibc, cpio, xar, undmg, gtk3, pango, libxcb }: let pname = "synology-drive-client"; baseUrl = "https://global.download.synology.com/download/Utility/SynologyDriveClient"; - buildNumber = "12920"; - version = "3.1.0"; + version = "3.1.0-12923"; + buildNumber = with lib; last (splitString "-" version); meta = with lib; { description = "Desktop application to synchronize files and folders between the computer and the Synology Drive server."; homepage = "https://www.synology.com/en-global/dsm/feature/drive"; @@ -11,18 +11,29 @@ let maintainers = with maintainers; [ jcouyang MoritzBoehme ]; platforms = [ "x86_64-linux" "x86_64-darwin" ]; }; + passthru.updateScript = writeScript "update-synology-drive-client" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl common-updater-scripts + + set -eu -o pipefail + + version="$(curl -s https://www.synology.com/en-uk/releaseNote/SynologyDriveClient \ + | grep -oP '(?<=data-version=")(\d.){2}\d-\d{5}' \ + | head -1)" + update-source-version synology-drive-client "$version" + ''; linux = qt5.mkDerivation { - inherit pname version meta; + inherit pname version meta passthru; src = fetchurl { - url = "${baseUrl}/${version}-${buildNumber}/Ubuntu/Installer/x86_64/synology-drive-client-${buildNumber}.x86_64.deb"; - sha256 = "sha256-UAO/LwqPchIMhjdQP4METjVorMJsbvIDRkp4JxtZgOs="; + url = "${baseUrl}/${version}/Ubuntu/Installer/x86_64/synology-drive-client-${buildNumber}.x86_64.deb"; + sha256 = "sha256-gL08uJbA2S+SuP1afMBmcJMIcu7QRzdiXgIMxSZQl/I="; }; nativeBuildInputs = [ autoPatchelfHook dpkg ]; - buildInputs = [ glibc gtk3 pango ]; + buildInputs = [ glibc gtk3 pango libxcb ]; unpackPhase = '' mkdir -p $out @@ -43,11 +54,11 @@ let }; darwin = stdenv.mkDerivation { - inherit pname version meta; + inherit pname version meta passthru; src = fetchurl { - url = "${baseUrl}/${version}-${buildNumber}/Mac/Installer/synology-drive-client-${buildNumber}.dmg"; - sha256 = "15wici8ycil1mfh5cf89rfan4kb93wfkdsd4kmpvzjj4bnddwlxa"; + url = "${baseUrl}/${version}/Mac/Installer/synology-drive-client-${buildNumber}.dmg"; + sha256 = "0pwm2xi1b9p9zmhy4dhix3aas49i183wxslyidfwvlaphic9qkxm"; }; nativeBuildInputs = [ cpio xar undmg ]; -- cgit 1.4.1