Subject: [bug#39626] [PATCH] Geary with Gspell fix

From: [email-masked]
Date: Sun, 16 Feb 2020 00:12:26 +0100

Here is that Geary package I said I'd send yesterday and a patch for 
Gspell that turns on the necessary --enable-vala flag, since Geary 
depends on its VAPI.

I'm sending this patch from it, so I hope it's formatting it as it 
should...

>From ae635776361622f37aa02975b0f4e4698015ef84 Mon Sep 17 00:00:00 2001
From: raingloom <[email-masked]>
Date: Sun, 9 Feb 2020 04:18:04 +0100
Subject: [PATCH 2/2] gnu: geary: new package (version 3.34.1)

---
 gnu/packages/gnome.scm | 98 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 98 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 9fb5db4f87..e6d328401c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -46,6 +46,7 @@
 ;;; Copyright © 2019 Jonathan Brielmaier <[email-masked]>
 ;;; Copyright © 2019 Leo Prikler <[email-masked]>
 ;;; Copyright © 2020 Oleg Pykhalov <[email-masked]>
+;;; Copyright © 2020 raingloom <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -117,6 +118,7 @@
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libunistring)
+  #:use-module (gnu packages libunwind)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lirc)
@@ -187,6 +189,7 @@
   #:use-module (guix monads)
   #:use-module (guix store)
   #:use-module (ice-9 match)
+  #:use-module (ice-9 regex)
   #:use-module (srfi srfi-1))
 
 (define-public brasero
@@ -9834,3 +9837,98 @@ index files needed for Adwaita to be used outside of GNOME.")
 integrate seamlessly with the GNOME desktop.")
     (home-page "https://wiki.gnome.org/Apps/Polari")
     (license license:gpl2+)))
+
+(define-public geary
+  (package
+    (name "geary")
+    (version "3.34.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.gnome.org/GNOME/geary")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "01cc921kyh3zxz07biqbdzkjgmdcc36kwjyajm4y382a75cl5zg7"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'disable-failing-tests
+                    (lambda _
+                      (substitute* "test/meson.build"
+                        ((,(regexp-quote
+                            (string-append
+                             "test('client-tests', "
+                             "geary_test_client_bin)"))) ""))))
+                  (add-after 'unpack 'disable-postinstall-script
+                    (lambda _
+                      (substitute* "meson.build"
+                        ((,(regexp-quote
+                            (string-append
+                             "meson.add_install_script("
+                             "join_paths('build-aux', "
+                             "'post_install.py'))"))) ""))))
+                  (add-before 'check 'setup-xvfb
+                      (lambda _
+                        (system "Xvfb :1 &")
+                        (setenv "DISPLAY" ":1")
+                        #t)))))
+    (inputs
+     `(("enchant" ,enchant)
+       ("folks" ,folks)
+       ("gcr" ,gcr)
+       ("glib" ,glib)
+       ("gmime" ,gmime-2.6)
+       ("gnome-online-accounts:lib"
+        ,gnome-online-accounts "lib")
+       ("gspell" ,gspell)
+       ("gtk+" ,gtk+)
+       ("iso-codes" ,iso-codes)
+       ("json-glib" ,json-glib)
+       ("libcanberra" ,libcanberra)
+       ("libgee" ,libgee)
+       ("libhandy" ,libhandy)
+       ("libpeas" ,libpeas)
+       ("libsecret" ,libsecret)
+       ("libunwind" ,libunwind)
+       ("sqlite" ,sqlite)
+       ("webkitgtk" ,webkitgtk)
+       ("ytnef" ,ytnef)))
+    (native-inputs
+     `(("appstream-glib" ,appstream-glib)
+       ("cmake-minimal" ,cmake-minimal)
+       ("desktop-file-utils" ,desktop-file-utils)
+       ("gettext" ,gnu-gettext)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("itstool" ,itstool)
+       ("libarchive" ,libarchive)
+       ("libxml2" ,libxml2)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)
+       ("xvfb" ,xorg-server-for-tests)))
+    (synopsis
+     "Email application built around conversations, for the GNOME 3 desktop")
+    (description
+     "Geary collects related messages together into conversations,
+making it easy to find and follow your discussions.
+full-text and keyword search makes it easy to find
+the email you are looking for.
+Geary's full-featured composer lets you send rich, styled text
+with images, links, and lists, but also send light-weight,
+easy to read text messages.
+Geary automatically picks up your existing GNOME Online Accounts,
+and adding more is easy.
+Geary has a clean, fast, modern interface that works like you want it to.")
+    (home-page "https://wiki.gnome.org/Apps/Geary")
+    (license (list
+              ;; geary
+              license:lgpl2.1+
+              ;; icons
+              license:cc-by3.0
+              license:cc-by-sa3.0
+              license:public-domain
+              ;; snowball
+              license:bsd-2))))
-- 
2.25.0

>From c2749f9c10d3b424b3470be5d9ea680886fac0b2 Mon Sep 17 00:00:00 2001
From: raingloom <[email-masked]>
Date: Sun, 16 Feb 2020 00:00:35 +0100
Subject: [PATCH 1/2] gnu: gspell: --enable-vala for VAPI (for geary)

---
 gnu/packages/gnome.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 014b68f54f..9fb5db4f87 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8879,7 +8879,8 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).")
               (patches (search-patches "gspell-dash-test.patch"))))
     (build-system glib-or-gtk-build-system)
     (arguments
-     '(#:phases
+     '(#:configure-flags (list "--enable-vala")
+       #:phases
        (modify-phases %standard-phases
          (add-before 'check 'pre-check
            (lambda* (#:key inputs #:allow-other-keys)
@@ -8904,6 +8905,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).")
      `(("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
        ("pkg-config" ,pkg-config)
+       ("vala" ,vala) ;;for VAPI
        ("xmllint" ,libxml2)
 
        ;; For tests.
-- 
2.25.0