diff mbox series

[bug#45889] Nextcloud Client (v6)

Message ID 7d0357f6-4913-7c4d-1bfb-7af562c4041f@raghavgururajan.name
State Accepted
Headers show
Series [bug#45889] Nextcloud Client (v6) | expand

Checks

Context Check Description
cbaines/submitting builds success
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Raghav Gururajan Jan. 17, 2021, 2:44 p.m. UTC

Comments

david larsson Jan. 24, 2021, 6:45 p.m. UTC | #1
On 2021-01-17 15:44, Raghav Gururajan wrote:
> 

Hi,

Thank you for working on this! I have tried to package this myself but 
haven't much success beyond being able to login and sync things and to 
receive notifications via libnotify. However, this patch also doesn't 
succeeed in a fully functional nextcloud-desktop, yet - though I hope 
you do succeed!

I tried this out, and started it with --log-window (or similar) and it 
complained about qt-graphical-effect, so I suggest you add it to 
propagated-inputs to have that error go away. And as a general tip - 
start nextcloud-desktop with the log-window flag.

I wish you best of luck in completing it!

Best regards,
David
Raghav Gururajan Feb. 1, 2021, 3:07 p.m. UTC | #2
Hi David!

> Thank you for working on this! I have tried to package this myself but 
> haven't much success beyond being able to login and sync things and to 
> receive notifications via libnotify. However, this patch also doesn't 
> succeeed in a fully functional nextcloud-desktop, yet - though I hope 
> you do succeed!

I can confirm that this patch-set is functional. I haven't faced any 
issues. Please let me know which function(s) didn't work for you. I'll 
look into them. :-)

> I tried this out, and started it with --log-window (or similar) and it 
> complained about qt-graphical-effect, so I suggest you add it to 
> propagated-inputs to have that error go away. And as a general tip - 
> start nextcloud-desktop with the log-window flag.

Ah thanks! Yeah, it needed qtgraphicaleffects. Added them in v7. Also, 
the application excepts that the system runs either gnome-keyring or 
kwallet.

Regards,
RG.
diff mbox series

Patch

From 4865aa2f435817a0cbcaddf1c75459894a63bb82 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Thu, 14 Jan 2021 23:32:27 -0500
Subject: [PATCH 14/15] gnu: Add appstream.

* gnu/packages/freedesktop.scm (appstream): New variable.
---
 gnu/packages/freedesktop.scm | 96 ++++++++++++++++++++++++++++++++++++
 1 file changed, 96 insertions(+)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 6dd37005ae..a65cc9bd90 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -58,8 +58,10 @@ 
   #:use-module (gnu packages bash)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cryptsetup)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages disk)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
@@ -75,6 +77,7 @@ 
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages language)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages libunwind)
   #:use-module (gnu packages libusb)
@@ -101,6 +104,99 @@ 
   #:use-module (gnu packages xorg)
   #:use-module (srfi srfi-1))
 
+(define-public appstream
+  (package
+    (name "appstream")
+    (version "0.13.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "https://www.freedesktop.org/software/"
+                       "appstream/releases/"
+                       "AppStream-" version ".tar.xz"))
+       (sha256
+        (base32 "09l6ixz1w29pi0nb0flz14m4r3f2hpqpp1fq8y66v9xa4c9fczds"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-libstemmer
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "meson.build"
+               (("/usr/include")
+                (string-append (assoc-ref inputs "libstemmer")
+                               "/include")))
+             #t))
+         (add-after 'patch-libstemmer 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "docs/api"
+               (substitute* "appstream-docs.xml"
+                 (("http://www.oasis-open.org/docbook/xml/4.3/")
+                  (string-append (assoc-ref inputs "docbook-xml-4.3")
+                                 "/xml/dtd/docbook/"))))
+             (for-each (lambda (file)
+                         (substitute* file
+                           (("http://www.oasis-open.org/docbook/xml/4.5/")
+                            (string-append (assoc-ref inputs "docbook-xml")
+                                           "/xml/dtd/docbook/"))))
+                       (find-files "scripts/desc" "\\.xml$"))
+             #t))
+         (add-after 'patch-docbook-xml 'disable-failing-tests
+           (lambda _
+             (substitute* "tests/test-pool.c"
+               (("	g_test_add_func \\(\"/AppStream/PoolRead\", test_pool_read\\);")
+                "")
+               (("	g_test_add_func \\(\"/AppStream/PoolReadAsync\", test_pool_read_async\\);")
+                "")
+               (("	g_test_add_func \\(\"/AppStream/PoolEmpty\", test_pool_empty\\);")
+                "")
+               (("	g_test_add_func \\(\"/AppStream/Cache\", test_cache\\);")
+                "")
+               (("	g_test_add_func \\(\"/AppStream/Merges\", test_merge_components\\);")
+                ""))
+             #t))
+         (add-after 'disable-failing-tests 'patch-install-dir
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "data/meson.build"
+               (("/etc")
+                (string-append (assoc-ref outputs "out")
+                               "/etc")))
+             #t)))))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("docbook-xml-4.3" ,docbook-xml-4.3)
+       ("docbook-xml" ,docbook-xml)
+       ("docbook-xsl" ,docbook-xsl)
+       ("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("gperf" ,gperf)
+       ("gtk-doc" ,gtk-doc)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)
+       ("xsltproc" ,libxslt)))
+    (inputs
+     `(("libsoup" ,libsoup)
+       ("libstemmer" ,libstemmer)
+       ("libxml2" ,libxml2)
+       ("libyaml" ,libyaml)
+       ("lmdb" ,lmdb)))
+    (propagated-inputs
+     `(("glib" ,glib)))
+    (synopsis "Tools and libraries to work with AppStream metadata")
+    (description "AppStream is a cross-distribution effort for enhancing the way
+we interact with the software repositories provided by distributions by
+standardizing software component metadata.  It provides the foundation to build
+software-center applications, by providing metadata necessary for an
+application-centric view on package repositories.  It additionally provides
+specifications for things like an unified software metadata database, screenshot
+services and various other things needed to create user-friendly
+application-centers for distributions.")
+    (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
+    (license license:gpl2+)))
+
 (define-public farstream
   (package
     (name "farstream")
-- 
2.30.0