summary refs log tree commit diff
diff options
context:
space:
mode:
authorRaghav Gururajan <raghavgururajan@disroot.org>2020-07-19 06:54:46 -0400
committerDanny Milosavljevic <dannym@scratchpost.org>2020-08-18 23:10:57 +0200
commit8fd769ddc93215ab16712669e39214510eed8364 (patch)
tree3d5545e27304480aa19dd77da9c02183edb07a6d
parentc15ff23724b2a0804856fbb743179bd4c01c8041 (diff)
downloadguix-8fd769ddc93215ab16712669e39214510eed8364.tar.gz
gnu: Add dee.
* gnu/packages/gnome.scm (dee): New variable.
* gnu/packages/patches/dee-vapi.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gnome.scm82
-rw-r--r--gnu/packages/patches/dee-vapi.patch15
3 files changed, 98 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index f7dcc8ab40..221a49e985 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -891,6 +891,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/dconf-meson-0.52.patch			\
   %D%/packages/patches/debops-constants-for-external-program-names.patch \
   %D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
+  %D%/packages/patches/dee-vapi.patch			\
   %D%/packages/patches/desmume-gcc6-fixes.patch			\
   %D%/packages/patches/desmume-gcc7-fixes.patch			\
   %D%/packages/patches/dfu-programmer-fix-libusb.patch		\
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index bcc9c937e7..bca042266d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -296,6 +296,88 @@ of writing test cases for asynchronous interactions.")
     (home-page "https://launchpad.net/gtx")
     (license license:lgpl2.1+)))
 
+(define-public dee
+  (package
+    (name "dee")
+    (version "1.2.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append "https://launchpad.net/dee/1.0/"
+                       version "/+download/dee-" version ".tar.gz"))
+       (sha256
+        (base32 "12mzffk0lyd566y46x57jlvb9af152b4dqpasr40zal4wrn37w0v"))
+       (patches
+        (search-patches "dee-vapi.patch"))))
+    (build-system glib-or-gtk-build-system)
+    (outputs '("out" "doc"))
+    (arguments
+     `(#:configure-flags
+       (list
+        "--disable-maintainer-flags"
+        (string-append "--with-pygi-overrides-dir="
+                       (assoc-ref %outputs "out")
+                       "/lib/python"
+                       ,(version-major+minor
+                         (package-version python))
+                       "/site-packages/gi/overrides")
+        (string-append "--with-html-dir="
+                       (assoc-ref %outputs "doc")
+                       "/share/gtk-doc/html"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-docbook-xml
+           (lambda* (#:key inputs #:allow-other-keys)
+             (with-directory-excursion "doc/reference/dee-1.0"
+               (substitute* "dee-1.0-docs.sgml"
+                 (("http://www.oasis-open.org/docbook/xml/4.3/")
+                  (string-append (assoc-ref inputs "docbook-xml")
+                                 "/xml/dtd/docbook/"))))
+             #t))
+         (add-after 'patch-docbook-xml 'disable-failing-tests
+           (lambda _
+             (substitute* "tests/test-icu.c"
+               (("g_test_add \\(DOMAIN\"/Default/AsciiFolder\", Fixture, 0,")
+                "")
+               (("setup, test_ascii_folder, teardown\\);")
+                ""))
+             #t))
+         (add-before 'check 'pre-check
+           (lambda _
+             ;; Tests require a running dbus-daemon.
+             (system "dbus-daemon &")
+             ;; For missing '/etc/machine-id'.
+             (setenv "DBUS_FATAL_WARNINGS" "0")
+             #t)))))
+    (native-inputs
+     `(("dbus" ,dbus)
+       ("dbus-test-runner" ,dbus-test-runner)
+       ("docbook-xml" ,docbook-xml-4.3)
+       ("gobject-introspection" ,gobject-introspection)
+       ("gtk-doc" ,gtk-doc)
+       ;; Would only be required by configure flag "--enable-extended-tests".
+       ;("gtx" ,gtx)
+       ("pkg-config" ,pkg-config)
+       ("pygobject" ,python-pygobject)
+       ("python" ,python-wrapper)
+       ("vala" ,vala)))
+    (inputs
+     `(("icu" ,icu4c)))
+    (propagated-inputs
+     `(("glib" ,glib)))
+    (synopsis "Model to synchronize multiple instances over DBus")
+    (description "Dee is a library that uses DBus to provide objects allowing
+you to create Model-View-Controller type programs across DBus.  It also consists
+of utility objects which extend DBus allowing for peer-to-peer discoverability
+of known objects without needing a central registrar.")
+    (home-page "https://launchpad.net/dee")
+    (license
+     ;; Dual-licensed
+     (list
+      license:lgpl3+
+      license:gpl3+))))
+
 (define-public libcloudproviders
   (package
     (name "libcloudproviders")
diff --git a/gnu/packages/patches/dee-vapi.patch b/gnu/packages/patches/dee-vapi.patch
new file mode 100644
index 0000000000..3a9353a521
--- /dev/null
+++ b/gnu/packages/patches/dee-vapi.patch
@@ -0,0 +1,15 @@
+Index: dee-1.2.7+17.10.20170616/vapi/Dee-1.0.metadata
+===================================================================
+--- dee-1.2.7+17.10.20170616.orig/vapi/Dee-1.0.metadata
++++ dee-1.2.7+17.10.20170616/vapi/Dee-1.0.metadata
+@@ -2,7 +2,9 @@ GListResultSet skip
+ GListResultSetClass skip
+ 
+ FilterModel
+-	.filter unowned
++        .filter skip // unsupported type for construct property
++Index
++        .reader skip // unsupported type for construct property
+ Model
+ 	.append skip=false
+ 	.build_named_row skip