about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--pkgs/applications/networking/owncloud-client/default.nix34
-rw-r--r--pkgs/applications/networking/owncloud-client/libre-graph-api-cpp-qt-client.nix34
3 files changed, 67 insertions, 7 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 201ba0545980e..0260f3627b54c 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -6118,6 +6118,12 @@
     githubId = 2405974;
     name = "Sébastian Méric de Bellefon";
   };
+  hellwolf = {
+    email = "zhicheng.miao@gmail.com";
+    github = "hellwolf";
+    githubId = 186660;
+    name = "Miao, ZhiCheng";
+  };
   henkery = {
     email = "jim@reupload.nl";
     github = "henkery";
diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix
index 16abab431bd39..36b1b88696ff1 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 0000000000000..fb089cf099700
--- /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}";
+  };
+}