unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#38679] [PATCH] gnu: add geary.
@ 2019-12-19 21:15 Kasperi Keränen
  2019-12-21  4:53 ` Brett Gilio
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Kasperi Keränen @ 2019-12-19 21:15 UTC (permalink / raw)
  To: 38679

[-- Attachment #1: Type: text/plain, Size: 4 bytes --]




[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-add-geary.patch --]
[-- Type: text/x-patch; name="0001-gnu-add-geary.patch", Size: 3686 bytes --]

From 3d3ff29798e203f6cf7861a3ecfbb3fd5834c10b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kasperi=20Ker=C3=A4nen?= <kasperi.keranen@outlook.com>
Date: Thu, 19 Dec 2019 19:17:38 +0100
Subject: [PATCH] gnu: add geary.

* gnu/packages/gnome.scm (geary): New variable.
---
 gnu/packages/gnome.scm | 63 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 0a9087eaff..7b3c337d60 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -168,6 +168,7 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xorg)
+  #:use-module (gnu packages libunwind)
   #:use-module (gnu artwork)
   #:use-module (guix build-system cargo)
   #:use-module (guix build-system cmake)
@@ -8684,6 +8685,68 @@ functionality.")
                    license:openldap2.8 ; addressbook/gui/component/openldap-extract.h
                    license:lgpl2.1+))))  ; smime/lib/*
 
+(define-public geary
+  (package
+    (name "geary")
+    (version "3.32.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/geary/"
+                                  (version-major+minor version) "/"
+                                  "geary-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0sg53zq81v28hdqiy5d048skwfgsa8ck0z7ywsagdh7iaqin68gq"))))
+    (build-system meson-build-system)
+    (arguments `(#:tests? #f ;; Client tests require a wayland/X11 display.
+                 #:glib-or-gtk? #t
+                 #:phases (modify-phases %standard-phases
+                            (add-after 'unpack 'skip-gtk-update-icon-cache
+                              (lambda _
+                                (substitute* "build-aux/post_install.py"
+                                  (("gtk-update-icon-cache") "true"))
+                                #t)))))
+    (native-inputs
+     `(("glib:bin" ,glib "bin")
+       ("gettext" ,gettext-minimal)
+       ("itstool" ,itstool)
+       ("pkg-config" ,pkg-config)
+       ("cmake" ,cmake)))
+    (inputs
+     `(("vala" ,vala)
+       ("sqlite" ,sqlite)
+       ("webkitgtk" ,webkitgtk)
+       ("gtk+" ,gtk+)
+       ("glib" ,glib)
+       ("gmime" ,gmime-2.6)
+       ("appstream-glib" ,appstream-glib)
+       ("libarchive" ,libarchive)
+       ("folks" ,folks)
+       ("libgee" ,libgee)
+       ("enchant" ,enchant)
+       ("gcr" ,gcr)
+       ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
+       ("gspell" ,gspell)
+       ("iso-codes" ,iso-codes)
+       ("json-glib" ,json-glib)
+       ;; ("libpeas" ,libpeas) ;; Required by a newer version of geary
+       ("libnotify" ,libnotify)
+       ("libsecret" ,libsecret)
+       ("libunwind" ,libunwind)
+       ("libcanberra" ,libcanberra)
+       ("glib-networking" ,glib-networking)
+       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
+    (home-page "https://gitlab.gnome.org/GNOME/geary")
+    (synopsis "An email application built around conversations")
+    (description "Geary is an email application built around conversations, for the
+GNOME 3 desktop.  It allows you to read, find and send email with a
+straightforward, modern interface.")
+    (license (list license:lgpl2.1
+                   license:cc-by3.0      ;;
+                   license:cc-by-sa3.0   ;; icons
+                   license:public-domain ;;
+                   license:bsd-2))))     ;; snowball
+
 (define-public gthumb
   (package
     (name "gthumb")
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#38679] [PATCH] gnu: add geary.
  2019-12-19 21:15 [bug#38679] [PATCH] gnu: add geary Kasperi Keränen
@ 2019-12-21  4:53 ` Brett Gilio
  2020-01-12  6:43   ` Tobias Geerinckx-Rice via Guix-patches via
  2020-01-10 18:52 ` Kasperi Keränen
  2020-05-29 21:26 ` Arun Isaac
  2 siblings, 1 reply; 6+ messages in thread
From: Brett Gilio @ 2019-12-21  4:53 UTC (permalink / raw)
  To: Kasperi Keränen; +Cc: 38679

Hi Kasperi,

I have a few helpful criticisms of your patch, if you do not mind! :)

Kasperi Keränen <kasperi.keranen@outlook.com> writes:

> From 3d3ff29798e203f6cf7861a3ecfbb3fd5834c10b Mon Sep 17 00:00:00 2001
> From: =?UTF-8?q?Kasperi=20Ker=C3=A4nen?= <kasperi.keranen@outlook.com>
> Date: Thu, 19 Dec 2019 19:17:38 +0100
> Subject: [PATCH] gnu: add geary.

Usually, when using the GNU Emacs yasnippet form from /guix/etc/snippets
the "add" is capitalized like so, "gnu: Add geary."

>
> * gnu/packages/gnome.scm (geary): New variable.
> ---
>  gnu/packages/gnome.scm | 63 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 63 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 0a9087eaff..7b3c337d60 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -168,6 +168,7 @@
>    #:use-module (gnu packages xml)
>    #:use-module (gnu packages xorg)
>    #:use-module (gnu packages xorg)
> +  #:use-module (gnu packages libunwind)

Would you mind adding this in its alphabetical order?

>    #:use-module (gnu artwork)
>    #:use-module (guix build-system cargo)
>    #:use-module (guix build-system cmake)
> @@ -8684,6 +8685,68 @@ functionality.")
>                     license:openldap2.8 ; addressbook/gui/component/openldap-extract.h
>                     license:lgpl2.1+))))  ; smime/lib/*
>  
> +(define-public geary
> +  (package
> +    (name "geary")
> +    (version "3.32.2")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "mirror://gnome/sources/geary/"
> +                                  (version-major+minor version) "/"
> +                                  "geary-" version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "0sg53zq81v28hdqiy5d048skwfgsa8ck0z7ywsagdh7iaqin68gq"))))
> +    (build-system meson-build-system)
> +    (arguments `(#:tests? #f ;; Client tests require a wayland/X11
> display.

A single ; comment will suffice here since it exists on the same line. I
also wonder if it is possible to spoof that display variable in the
tests or just remove that singular test? I might look into this if I
have some time. Maybe mark this as a TODO:?

> +                 #:glib-or-gtk? #t
> +                 #:phases (modify-phases %standard-phases
> +                            (add-after 'unpack 'skip-gtk-update-icon-cache
> +                              (lambda _
> +                                (substitute* "build-aux/post_install.py"
> +                                  (("gtk-update-icon-cache") "true"))
> +                                #t)))))
> +    (native-inputs
> +     `(("glib:bin" ,glib "bin")
> +       ("gettext" ,gettext-minimal)
> +       ("itstool" ,itstool)
> +       ("pkg-config" ,pkg-config)
> +       ("cmake" ,cmake)))
> +    (inputs
> +     `(("vala" ,vala)
> +       ("sqlite" ,sqlite)
> +       ("webkitgtk" ,webkitgtk)
> +       ("gtk+" ,gtk+)
> +       ("glib" ,glib)
> +       ("gmime" ,gmime-2.6)
> +       ("appstream-glib" ,appstream-glib)
> +       ("libarchive" ,libarchive)
> +       ("folks" ,folks)
> +       ("libgee" ,libgee)
> +       ("enchant" ,enchant)
> +       ("gcr" ,gcr)
> +       ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
> +       ("gspell" ,gspell)
> +       ("iso-codes" ,iso-codes)
> +       ("json-glib" ,json-glib)
> +       ;; ("libpeas" ,libpeas) ;; Required by a newer version of geary
> +       ("libnotify" ,libnotify)
> +       ("libsecret" ,libsecret)
> +       ("libunwind" ,libunwind)
> +       ("libcanberra" ,libcanberra)
> +       ("glib-networking" ,glib-networking)
> +       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
> +    (home-page "https://gitlab.gnome.org/GNOME/geary")
> +    (synopsis "An email application built around conversations")
> +    (description "Geary is an email application built around conversations, for the
> +GNOME 3 desktop.  It allows you to read, find and send email with a
> +straightforward, modern interface.")
> +    (license (list license:lgpl2.1
> +                   license:cc-by3.0      ;;
> +                   license:cc-by-sa3.0   ;; icons
> +                   license:public-domain ;;
> +                   license:bsd-2))))     ;; snowball
> +
>  (define-public gthumb
>    (package
>      (name "gthumb")

Some of my other comments apply to other sections, name about the single
; for same-line comments. I will give this a build and test when I get a
moment. In the mean time, I would also look over some of the inputs some
more, because I wonder if things like "vala" should be native-inputs
instead? Just a thought, I could be wrong.

If you can reroll your patch for a V2 and send it to this tracker issue,
I would appreciate it :).

-- 
Brett M. Gilio
GNU Guix, Contributor | GNU Project, Webmaster
[DFC0 C7F7 9EE6 0CA7 AE55 5E19 6722 43C4 A03F 0EEE]
<brettg@gnu.org> <brettg@posteo.net>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#38679] [PATCH] gnu: add geary.
  2019-12-19 21:15 [bug#38679] [PATCH] gnu: add geary Kasperi Keränen
  2019-12-21  4:53 ` Brett Gilio
@ 2020-01-10 18:52 ` Kasperi Keränen
  2020-05-29 21:26 ` Arun Isaac
  2 siblings, 0 replies; 6+ messages in thread
From: Kasperi Keränen @ 2020-01-10 18:52 UTC (permalink / raw)
  To: 38679@debbugs.gnu.org

[-- Attachment #1: Type: text/plain, Size: 273 bytes --]

I've enabled the tests and made them pass.

There's still a small problem with icons not loading when entering the 
online accounts section of GNOME settings from geary, but given that 
the same happens with all applications I don't think anyone has a fix 
for it.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-geary.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-geary.patch", Size: 4841 bytes --]

From c7aada574a734437747fa81c82e3df3487b71222 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kasperi=20Ker=C3=A4nen?= <kasperi.keranen@outlook.com>
Date: Thu, 19 Dec 2019 19:17:38 +0100
Subject: [PATCH] gnu: Add geary.

* gnu/packages/gnome.scm (geary): New variable.
---
 gnu/packages/gnome.scm | 83 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 83 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 0e18c2ec06..403b5e0a89 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -117,6 +117,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)
@@ -8942,6 +8943,88 @@ functionality.")
                    license:openldap2.8 ; addressbook/gui/component/openldap-extract.h
                    license:lgpl2.1+))))  ; smime/lib/*
 
+(define-public geary
+  (package
+    (name "geary")
+    (version "3.32.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/geary/"
+                                  (version-major+minor version) "/"
+                                  "geary-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0sg53zq81v28hdqiy5d048skwfgsa8ck0z7ywsagdh7iaqin68gq"))))
+    (build-system meson-build-system)
+    (arguments `(#:tests? #t
+                 #:glib-or-gtk? #t
+                 #:phases
+                 (modify-phases %standard-phases
+                   (add-after 'unpack 'skip-gtk-update-icon-cache
+                     (lambda _
+                       (substitute* "build-aux/post_install.py"
+                         (("gtk-update-icon-cache") "true"))
+                       #t))
+                   (add-after 'unpack 'change-webkit-process-model
+                     ;; Since webkitgtk 2.26 programs no longer have a choise in
+                     ;; this but using the depreciated value will fail the test
+                     ;; suite. Hope this is temporary and can be removed as soon
+                     ;; as GNOME updates.
+                     (lambda _
+                       (substitute* "src/client/components/client-web-view.vala"
+                         (("SHARED_SECONDARY_PROCESS")
+                          "MULTIPLE_SECONDARY_PROCESSES"))))
+                   (add-before 'check 'start-xserver
+                     ;; Client tests require a Wayland/X11 display.
+                     (lambda* (#:key inputs #:allow-other-keys)
+                       (let ((xorg-server (assoc-ref inputs "xorg-server"))
+                             (display ":99"))
+                         (setenv "HOME" (getcwd))
+                         (setenv "DISPLAY" display)
+                         (zero? (system (format #f "~a/bin/Xvfb ~a &"
+                                                xorg-server display)))))))))
+    (native-inputs
+     `(("glib:bin" ,glib "bin")
+       ("gettext" ,gettext-minimal)
+       ("itstool" ,itstool)
+       ("pkg-config" ,pkg-config)
+       ("cmake" ,cmake)
+       ("vala" ,vala)
+       ("xorg-server" ,xorg-server-for-tests)))
+    (inputs
+     `(("sqlite" ,sqlite)
+       ("webkitgtk" ,webkitgtk)
+       ("gtk+" ,gtk+)
+       ("glib" ,glib)
+       ("gmime" ,gmime-2.6)
+       ("appstream-glib" ,appstream-glib)
+       ("libarchive" ,libarchive)
+       ("folks" ,folks)
+       ("libgee" ,libgee)
+       ("enchant" ,enchant)
+       ("gcr" ,gcr)
+       ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
+       ("gspell" ,gspell)
+       ("iso-codes" ,iso-codes)
+       ("json-glib" ,json-glib)
+       ;; ("libpeas" ,libpeas) ; Required by a newer version of geary
+       ("libnotify" ,libnotify)
+       ("libsecret" ,libsecret)
+       ("libunwind" ,libunwind)
+       ("libcanberra" ,libcanberra)
+       ("glib-networking" ,glib-networking)
+       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
+    (home-page "https://gitlab.gnome.org/GNOME/geary")
+    (synopsis "An email application built around conversations")
+    (description "Geary is an email application built around conversations, for
+the GNOME 3 desktop.  It allows you to read, find and send email with a
+straightforward, modern interface.")
+    (license (list license:lgpl2.1
+                   license:cc-by3.0      ;
+                   license:cc-by-sa3.0   ; icons
+                   license:public-domain ;
+                   license:bsd-2))))     ; snowball
+
 (define-public gthumb
   (package
     (name "gthumb")
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#38679] [PATCH] gnu: add geary.
  2019-12-21  4:53 ` Brett Gilio
@ 2020-01-12  6:43   ` Tobias Geerinckx-Rice via Guix-patches via
  0 siblings, 0 replies; 6+ messages in thread
From: Tobias Geerinckx-Rice via Guix-patches via @ 2020-01-12  6:43 UTC (permalink / raw)
  To: Kasperi Keränen, 38679

[-- Attachment #1: Type: text/plain, Size: 1416 bytes --]

Kasperi,

Thank you for packaging Geary!  Unfortunately I can't test it 
right now, but here are two general points to help you apply 
Brett's suggestions.

Brett Gilio 写道:
>> +    (arguments `(#:tests? #f ;; Client tests require a 
>> wayland/X11
>> display.
>
> A single ; comment will suffice here since it exists on the same 
> line. I
> also wonder if it is possible to spoof that display variable in 
> the
> tests or just remove that singular test? I might look into this 
> if I
> have some time. Maybe mark this as a TODO:?

You can start a ‘virtual frame buffer’ (Xvfb) X server in the 
build environment:

  (add-before 'check 'start-xserver
   (lambda* (#:key inputs #:allow-other-keys)
      (let ((xorg-server (assoc-ref inputs "xorg-server"))
           (display ":1"))
        (setenv "DISPLAY" display)
        (system (format #f "~a/bin/Xvfb ~a &" xorg-server 
        display))
        #t)))

You'll find many other examples with ‘grep Xvfb 
gnu/packages/*scm’.

> In the mean time, I would also look over some of the inputs some
> more, because I wonder if things like "vala" should be 
> native-inputs
> instead? Just a thought, I could be wrong.

A rule of thumb is that inputs missing from

  $ guix gc --references $(guix build geary)

should probably be native.  It's likely that vala will be so 
missing.

Kind regards,

T G-R

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#38679] [PATCH] gnu: add geary.
  2019-12-19 21:15 [bug#38679] [PATCH] gnu: add geary Kasperi Keränen
  2019-12-21  4:53 ` Brett Gilio
  2020-01-10 18:52 ` Kasperi Keränen
@ 2020-05-29 21:26 ` Arun Isaac
  2020-11-19  9:28   ` bug#38679: " Christopher Baines
  2 siblings, 1 reply; 6+ messages in thread
From: Arun Isaac @ 2020-05-29 21:26 UTC (permalink / raw)
  To: Kasperi Keränen, 38679; +Cc: Tobias Geerinckx-Rice, Brett Gilio

[-- Attachment #1: Type: text/plain, Size: 105 bytes --]


Hi,

It looks like geary has already been packaged. Sorry for the duplicated
effort! :-(

Regards,
Arun

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#38679: [PATCH] gnu: add geary.
  2020-05-29 21:26 ` Arun Isaac
@ 2020-11-19  9:28   ` Christopher Baines
  0 siblings, 0 replies; 6+ messages in thread
From: Christopher Baines @ 2020-11-19  9:28 UTC (permalink / raw)
  To: 38679-done

[-- Attachment #1: Type: text/plain, Size: 183 bytes --]


Arun Isaac <arunisaac@systemreboot.net> writes:

> It looks like geary has already been packaged. Sorry for the duplicated
> effort! :-(

As Geary is packaged, I'm closing this bug.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 987 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-11-19  9:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-19 21:15 [bug#38679] [PATCH] gnu: add geary Kasperi Keränen
2019-12-21  4:53 ` Brett Gilio
2020-01-12  6:43   ` Tobias Geerinckx-Rice via Guix-patches via
2020-01-10 18:52 ` Kasperi Keränen
2020-05-29 21:26 ` Arun Isaac
2020-11-19  9:28   ` bug#38679: " Christopher Baines

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).