diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix index 16abab431bd3..36b1b88696ff 100644 --- a/pkgs/applications/networking/owncloud-client/default.nix +++ b/pkgs/applications/networking/owncloud-client/default.nix @@ -1,16 +1,32 @@ -{ lib, fetchurl, mkDerivation, cmake, extra-cmake-modules, pkg-config, qtbase, qtkeychain, sqlite, libsecret }: +{ lib +, fetchFromGitHub +, mkDerivation +, pkg-config +, cmake +, extra-cmake-modules +, callPackage +, qtbase +, qtkeychain +, qttools +, sqlite +, libsecret +}: mkDerivation rec { pname = "owncloud-client"; - version = "2.11.0.8354"; + version = "3.2.1"; - src = fetchurl { - url = "https://download.owncloud.com/desktop/ownCloud/stable/${version}/source/ownCloud-${version}.tar.xz"; - sha256 = "sha256-YraWvGgeF5b1+3i5Jlk+bwvAULr7KFOSX8y0ZoPpljI="; + libregraph = callPackage ./libre-graph-api-cpp-qt-client.nix { }; + + src = fetchFromGitHub { + owner = "owncloud"; + repo = "client"; + rev = "refs/tags/v${version}"; + hash = "sha256-39tpvzlTy3KRxg8DzCQW2VnsaLqJ+dNQRur2TqRZytE="; }; nativeBuildInputs = [ pkg-config cmake extra-cmake-modules ]; - buildInputs = [ qtbase qtkeychain sqlite libsecret ]; + buildInputs = [ qtbase qttools qtkeychain sqlite libsecret libregraph ]; qtWrapperArgs = [ "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libsecret ]}" @@ -19,13 +35,17 @@ mkDerivation rec { cmakeFlags = [ "-UCMAKE_INSTALL_LIBDIR" "-DNO_SHIBBOLETH=1" + # https://github.com/owncloud/client/issues/10537#issuecomment-1447965096 + # NB! From 4.0 it may be turned off by default + "-DWITH_AUTO_UPDATER=OFF" ]; meta = with lib; { description = "Synchronise your ownCloud with your computer using this desktop client"; homepage = "https://owncloud.org"; - maintainers = [ maintainers.qknight ]; + maintainers = with maintainers; [ qknight hellwolf ]; platforms = platforms.unix; license = licenses.gpl2Plus; + changelog = "https://github.com/owncloud/client/releases/tag/v${version}"; }; } diff --git a/pkgs/applications/networking/owncloud-client/libre-graph-api-cpp-qt-client.nix b/pkgs/applications/networking/owncloud-client/libre-graph-api-cpp-qt-client.nix new file mode 100644 index 000000000000..fb089cf09970 --- /dev/null +++ b/pkgs/applications/networking/owncloud-client/libre-graph-api-cpp-qt-client.nix @@ -0,0 +1,34 @@ +{ lib +, fetchFromGitHub +, mkDerivation +, cmake +, qtbase +}: + +mkDerivation rec { + pname = "libre-graph-api-cpp-qt-client"; + version = "0.13.2"; + + src = fetchFromGitHub { + owner = "owncloud"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-gbrA8P+ukQAiF2czC2szw3fJv1qoPJyMQ72t7PqB5/s="; + }; + + sourceRoot = "source/client"; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ qtbase ]; + + cmakeFlags = [ ]; + + meta = with lib; { + description = "C++ Qt API for Libre Graph, a free API for cloud collaboration inspired by the MS Graph API"; + homepage = "https://owncloud.org"; + maintainers = with maintainers; [ qknight hellwolf ]; + platforms = platforms.unix; + license = licenses.asl20; + changelog = "https://github.com/owncloud/libre-graph-api-cpp-qt-client/releases/tag/v${version}"; + }; +}