Add Pantheon desktop environment

OpenSubmitted by Ryan Prior.
Details
4 participants
  • Danny Milosavljevic
  • Ludovic Courtès
  • Marius Bakke
  • Ryan Prior
Owner
unassigned
Severity
normal
R
R
Ryan Prior wrote on 15 May 2020 22:21
(name . guix-patches@gnu.org)(address . guix-patches@gnu.org)
87tv0h0x0k.fsf@protonmail.com
This first patch adds the Granite library in gnu/packages/pantheon.scm.
It begins a patch series (to follow, 6 patches in total) that contains
some core pieces of the Pantheon desktop environment and a few
applications, laying the groundwork for further Pantheon packaging.
From fdfe0c404b41b543eff94bcf96056ffb2f26c6f5 Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 14:24:23 -0500
Subject: [PATCH 1/6] gnu: Add granite.

* gnu/packages: (pantheon.scm): New File.
* gnu/local.mk: Add gnu/packages/pantheon.scm.
* gnu/packages/pantheon.scm (granite): New Variable.
---
gnu/local.mk | 1 +
gnu/packages/pantheon.scm | 61 +++++++++++++++++++++++++++++++++++++++
2 files changed, 62 insertions(+)
create mode 100644 gnu/packages/pantheon.scm

Toggle diff (81 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index ab2bac9bc5..5758df27be 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -403,6 +403,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/orpheus.scm			\
   %D%/packages/ots.scm				\
   %D%/packages/package-management.scm		\
+  %D%/packages/pantheon.scm			\
   %D%/packages/parallel.scm			\
   %D%/packages/password-utils.scm		\
   %D%/packages/patchutils.scm			\
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
new file mode 100644
index 0000000000..834ea74f37
--- /dev/null
+++ b/gnu/packages/pantheon.scm
@@ -0,0 +1,61 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages pantheon)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages)
+  #:use-module (guix build-system meson)
+  #:use-module (guix git-download)
+  #:use-module ((guix licenses) :prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix utils))
+
+(define-public granite
+  (package
+    (name "granite")
+    (version "5.4.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/elementary/granite.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0acicv3f9gksb352v88lwap8ailjsxdrfknl2xql7blasbjzl2q0"))))
+    (build-system meson-build-system)
+    (inputs
+     `(("gtk" ,gtk+)
+       ("gtk+-bin" ,gtk+ "bin"))) ; for gtk-update-icon-cache
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib" ,glib)
+       ("gobject-introspection" ,gobject-introspection)
+       ("libgee" ,libgee)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/granite")
+    (synopsis "Library that extends GTK with common widgets and utilities")
+    (description "Granite is a companion library for GTK+ and GLib.  Among other
+things, it provides complex widgets and convenience functions designed for use
+in apps built for the Pantheon desktop.")
+    (license license:lgpl3+)))
-- 
2.17.1
R
R
Ryan Prior wrote on 15 May 2020 22:31
Add Pantheon desktop environment (cont.)
(address . 41293@debbugs.gnu.org)
87r1vl0wk3.fsf@protonmail.com
This patch adds the Sideload application, a graphical handler for
flatpakrefs.
From 855797d1a637f342c43ac663e07c8bdcd642607b Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 14:56:34 -0500
Subject: [PATCH 2/6] gnu: Add sideload.

* gnu/packages/pantheon.scm (sideload): New variable.
---
gnu/packages/pantheon.scm | 57 +++++++++++++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)

Toggle diff (79 lines)
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 834ea74f37..a5ee6fafce 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -17,11 +17,15 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages pantheon)
+  #:use-module (gnu packages cmake)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages package-management)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages)
   #:use-module (guix build-system meson)
   #:use-module (guix git-download)
@@ -59,3 +63,56 @@
 things, it provides complex widgets and convenience functions designed for use
 in apps built for the Pantheon desktop.")
     (license license:lgpl3+)))
+
+(define-public sideload
+  (package
+    (name "sideload")
+    (version "1.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elementary/sideload.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1nnaq4vc0aag6pckxhrma5qv8al7i00rrlg95ac4iqqmivja7i92"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:configure-flags (list (string-append "-Dflatpak="
+                                              (assoc-ref %build-inputs "flatpak")
+                                              "/include"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'install-symlinks
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/io.elementary.sideload"))
+                    (link (string-append out "/bin/sideload")))
+               (symlink bin link)))))))
+    (inputs
+     `(("flatpak" ,flatpak)
+       ("granite" ,granite)
+       ("gtk" ,gtk+)
+       ("libostree" ,libostree)))
+    (propagated-inputs
+     `(("glib-networking" ,glib-networking)))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+       ("gettext" ,gettext-minimal)
+       ("glib" ,glib)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("libgee" ,libgee)
+       ("libxml2" ,libxml2)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/sideload")
+    (synopsis "Graphical application to side-load Flatpaks")
+    (description "Sideload handles flatpakref files, like those you might find
+on Flathub or another third-party website providing a Flatpak app for
+download.")
+    (license license:gpl3)))
-- 
2.17.1
R
R
Ryan Prior wrote on 15 May 2020 22:33
(address . 41293@debbugs.gnu.org)
87o8qp0whn.fsf@protonmail.com
This patch adds Pantheon Calculator for basic arithmetic.
From 9304e1e98a7da3dc876a304923e590a08803faba Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 14:57:34 -0500
Subject: [PATCH 3/6] gnu: Add pantheon-calculator.

* gnu/packages/pantheon.scm (pantheon-calculator): New variable.
---
gnu/packages/pantheon.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index a5ee6fafce..2a15f4316a 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -116,3 +116,36 @@ in apps built for the Pantheon desktop.")
 on Flathub or another third-party website providing a Flatpak app for
 download.")
     (license license:gpl3)))
+
+(define-public pantheon-calculator
+  (package
+    (name "pantheon-calculator")
+    (version "1.5.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elementary/calculator.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1csxsr2c8qvl97xz9ahwn91z095nzgr0i1mbcb1spljll2sr9lkj"))))
+    (build-system meson-build-system)
+    (arguments '(#:glib-or-gtk? #t))
+    (inputs
+     `(("granite" ,granite)
+       ("gtk" ,gtk+)))
+    (native-inputs
+     `(("glib" ,glib)
+       ("cmake" ,cmake)
+       ("libgee" ,libgee)
+       ("glib:bin" ,glib "bin") ; for glib-compile-schemas
+       ("gettext" ,gettext-minimal)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/calculator")
+    (synopsis "Desktop calculator")
+    (description "Calculator is an application for performing simple arithmatic.
+It is the default calculator application in the Pantheon desktop.")
+    (license license:gpl3)))
-- 
2.17.1
R
R
Ryan Prior wrote on 15 May 2020 22:33
(address . 41293@debbugs.gnu.org)
87lflt0wgb.fsf@protonmail.com
This patch adds Appstream to gnu/packages/freedesktop.
From 150a9bb0780ac07717245250a4f85c66bf4c8c51 Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 15:03:51 -0500
Subject: [PATCH 4/6] gnu: Add appstream.

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

Toggle diff (84 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index f00cb1e076..312cc16e0a 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
 ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -55,8 +56,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)
@@ -1874,3 +1877,58 @@ useful with system integration.")
 into the Unity menu bar.  Based on KSNI, it also works in KDE and will
 fallback to generic Systray support if none of those are available.")
     (license license:lgpl2.1+)))
+
+(define-public appstream
+  (package
+    (name "appstream")
+    (version "0.12.10")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/ximion/appstream.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1r4q7xi1xvpjcnyzkzb4pshhvd4agz7cc5nbb3kqb22054zab2qj"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "-Dvapi=true"
+             "-Dstemming=false"
+             "-Dapidocs=false"
+             "-Dinstall-docs=false")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-stemmer-inc-dirs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (substitute* "meson.build"
+                 (("include_directories\\(\\['\\/usr\\/include'\\]\\)")
+                  "''")
+                 (("subdir\\('docs\\/'\\)")
+                  ""))
+               (substitute* "data/meson.build"
+                 (("\\/etc")
+                   (string-append out "/etc")))
+               #t))))))
+    (native-inputs
+     `(("libxml2" ,libxml2)
+       ("gettext" ,gettext-minimal)
+       ("libxslt" ,libxslt)
+       ("glib2" ,glib)
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("pkg-config" ,pkg-config)
+       ("libsoup" ,libsoup)
+       ("gobject-introspection" ,gobject-introspection)
+       ("libyaml" ,libyaml)
+       ("vala" ,vala)
+       ("gperf" ,gperf)
+       ("cmake" ,cmake)
+       ("lmdb" ,lmdb)))
+    (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
+    (synopsis "Provides the foundation to build software-center applications")
+    (description "AppStream is a cross-distribution effort for enhancing the way
+we interact with the software repositories provided by GNU/Linux distributions
+by standardizing software component metadata.")
+    (license license:gpl2)))
-- 
2.17.1
R
R
Ryan Prior wrote on 15 May 2020 22:34
(address . 41293@debbugs.gnu.org)
87imgx0wf0.fsf@protonmail.com
This patch updates GNOME vte to 0.60.2, required for pantheon-terminal
(in next patch.)
From e1d89c623ffa78125952585470a873ddcc4fe3d5 Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 15:07:47 -0500
Subject: [PATCH 5/6] gnu: vte: Update to 0.60.2

* gnu/packages/gnome.scm (vte): Update to 0.60.2.
[arguments]: enables Vala bindings and disables systemd support.
---
gnu/packages/gnome.scm | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

Toggle diff (37 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index e4bb056e4c..13c7ff2933 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -50,6 +50,7 @@
 ;;; Copyright © 2020 raingloom <raingloom@riseup.net>
 ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3228,7 +3229,7 @@ libraries written in C.")
 (define-public vte
   (package
     (name "vte")
-    (version "0.58.3")
+    (version "0.60.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/vte/"
@@ -3236,8 +3237,12 @@ libraries written in C.")
                                   "vte-" version ".tar.xz"))
               (sha256
                (base32
-                "0xa9ipwic4jnhhbzlnqbhssz10xkzv61cpkl1ammc6mdq95bbp12"))))
+                "19ccbw0yca78h5qcnm8claj4fg1pj68nj1fsjqqfpzhj7w72i81m"))))
     (build-system meson-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "-Dvapi=true"
+             "-D_systemd=false")))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("intltool" ,intltool)
-- 
2.17.1
R
R
Ryan Prior wrote on 15 May 2020 22:35
(address . 41293@debbugs.gnu.org)
87ftc10wdj.fsf@protonmail.com
This patch adds pantheon-terminal, a terminal emulator with tabs and
some nice friendly features.
From 5628c0849670beaec087c60b71f31eaba83343d8 Mon Sep 17 00:00:00 2001
From: Ryan Prior <rprior@protonmail.com>
Date: Fri, 15 May 2020 15:12:16 -0500
Subject: [PATCH 6/6] gnu: Add pantheon-terminal.

* gnu/packages/pantheon.scm (pantheon-terminal): New variable.
---
gnu/packages/pantheon.scm | 45 +++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 2a15f4316a..0ef2431bf8 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -149,3 +149,48 @@ download.")
     (description "Calculator is an application for performing simple arithmatic.
 It is the default calculator application in the Pantheon desktop.")
     (license license:gpl3)))
+
+(define-public pantheon-terminal
+  (package
+    (name "pantheon-terminal")
+    (version "5.5.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/elementary/terminal.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "119iwmzbpkj4nmxinqfsh73lx23g8gbl6ha6wc4mc4fq9hpnc9c2"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'install-symlinks
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/io.elementary.terminal"))
+                    (link (string-append out "/bin/pantheon-terminal")))
+               (symlink bin link)))))))
+    (inputs
+     `(("granite" ,granite)
+       ("gtk" ,gtk+)
+       ("vte" ,vte)))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib" ,glib)
+       ("appstream" ,appstream)
+       ("libgee" ,libgee)
+       ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("pkg-config" ,pkg-config)
+       ("gobject-introspection" ,gobject-introspection)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/terminal")
+    (synopsis "Graphical terminal with opinionated design and thoughtful touches")
+    (description "A lightweight, beautiful, and simple terminal application.
+Comes with sane defaults, browser-like tabs, sudo paste protection, smart
+copy/paste, and little to no configuration.")
+    (license license:lgpl3)))
-- 
2.17.1
D
D
Danny Milosavljevic wrote on 19 May 2020 11:49
Re: [bug#41293] Add Pantheon desktop environment
(name . Ryan Prior via Guix-patches via)(address . guix-patches@gnu.org)
20200519114933.00995b67@scratchpost.org
Hi,

thanks for the patch!

Added this one patch to guix master as commit 9f59a9b4bc93b3ef6cd3bd1c9eed04c30ba2d2d4
after removing gtk-update-icon-cache reference.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7Dq60ACgkQ5xo1VCww
uqWxnggAmmdjB2bW+Iq41xY0Tq+gcLPlpheJzLEkoVTxafWUwnTFM9GbHDLiV3Px
+JB1fJCtVOU3j6q0KDOaxZ0WXZROfrCgYi9hVKIdNtqVNitG9o9i6TgQDbKZHNgd
sso7ei9W50h3MmhlKMm0G6vnM3wLIAzuoAWsP4+AEIayOugq4zA+GXkCr7VlXCcW
LWF+DSEpNxYPR37nNImqnPcWI7sudBiY9jcCEcEg3Wfn40LOmwjHMUz6bZtr63QY
8LbZUgYKNf5YuCZp/VFUQZ/6m/0NDqh6DuxlKOtZdbOcqkaVay+fk0gL4Z7dQJpU
cS9Q1dRegGWvlmkqi3pRSv2H6VK5vw==
=x3dq
-----END PGP SIGNATURE-----


D
D
Danny Milosavljevic wrote on 19 May 2020 12:15
Re: [bug#41293] Add Pantheon desktop environment (cont.)
(name . Ryan Prior via Guix-patches via)(address . guix-patches@gnu.org)
20200519121556.322534fb@scratchpost.org
Hi,

please do not invoke programs like

glib-compile-schemas
update-desktop-database
update-icon-cache

in individual packages.

The reason is that we are trying to keep packages modular.

If you add an icon cache with some fixed name that will cache just the icons
of that package in two packages, installing those into the same profile will
create a profile merge conflict.

We have profile hooks that will do glib-compile-schemas,
update-desktop-database and update-icon-cache anyway (in guix/profiles.scm),
so all that is required to do is to disable the invocation of these
programs in your package.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7Dsd0ACgkQ5xo1VCww
uqVx9Qf7BDq24NmEcvm4MSyuxZ9mXWIA8frHtlh7GFs1eF3acBYjdc05JocZbtM8
2tC7DhOBTQWcHWH39QLDpBOJXhmg0nZfCmFk+CPWYaz6MO7plqH+BfVG/wZcjXC+
zJfne0HbUjrPF5oYmnwA1ao8aWiPhzd546ee61K8ehf9K4DiIY8NxMYYr3fU8mgc
9zFH7OmJXvrrfWGXKfddZkULX1SzQh+7uwvkRp3Wzg/KI9Iig/0rES3iA2LllFIK
2zts6Pa+41QzpLw6v/JT4JbddhgVgAdgwX6PrhSOemIv823To2sqjgEn0GUAtXrH
udAmo8oHZS2qH29ruKB/EmYDMGhWXg==
=gBup
-----END PGP SIGNATURE-----


D
D
Danny Milosavljevic wrote on 19 May 2020 12:49
vte
(name . Ryan Prior via Guix-patches via)(address . guix-patches@gnu.org)
20200519124947.6e21b81d@scratchpost.org
Thanks for that patch!

Pushed to guix master as commits 663def11dfa560066a910ebf290df82bcd72bfbc
and 11491e1b1bdac1255f1f529f13b8eecabdb7cc66.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7DucsACgkQ5xo1VCww
uqUY6gf+MylLxCznnXb/gQwxn56bF5QeANXLlFbfQBaS+LmWsfR4qhLTan1CjoJg
NPrz8hxsXRZul+DXHXiALV3rglyWSOXHqLZJxapiMMJZCKk4F8BmFx1W+wyj1af4
HkoKFsYDZ8oyzO8bf0S014+ooV9RmGzeal8/dsTI1Ms8cTVL2iVPc3jJqTUYSoLz
/i7n1Qlm1GO/ZauZ5fV03/NiZDrQu4mqFWH4Ny1UPqQRS0w3SH4thhRkWEwML3U8
TwHQGrsbMmZC8vZokOf2mJzPFunTTuZ8nAnbGqq/ntKQOt/dtKvn4jp5epmo4zIt
rdlvxdoiS4wo6ZGS/C20sN+NYEIgCA==
=6vp+
-----END PGP SIGNATURE-----


D
D
Danny Milosavljevic wrote on 19 May 2020 13:00
Add pantheon-calculator
(name . Ryan Prior via Guix-patches via)(address . guix-patches@gnu.org)
20200519130020.65d2c8b9@scratchpost.org
Hi,

pushed that patch to guix master as commit 969811ad0e51adcbf503e38d9c9265814e3c2e27.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7DvEQACgkQ5xo1VCww
uqUTxwf/eksLiI/nZoY5KIAFadQCq4b1pCC1jUKoz5c+ZYNiWE9KCFB3IqBXHmBf
DZOaKcAPN+uDPyKTln2CAK7+X68aeaKHsCAFm1ILqwPRa9Taydqa2jc4utEYn0GJ
pQXSEKvvWo/dU556FWm01ZC0MoUz4siMiCfh4vVhJdfEtMv/z+3s0mAea3No7kzd
2EozP/A7dWqywZeRKS3ThHSdCb9fAzFul9s5Bvc7fFqNbWJ8aeQvVHlK5yAqZyDn
jxKP/4tHRhWZX3bQtdkyXopfWTKr2X5DMXtOXTnhHDky8UyjmFlCjK11wEcMGv5M
nM848Es7emfWNxMVrFqD3Y92mqhz7g==
=R7II
-----END PGP SIGNATURE-----


D
D
Danny Milosavljevic wrote on 19 May 2020 13:00
Re: [bug#41293] Add Pantheon desktop environment (cont.)
(address . 41293@debbugs.gnu.org)(address . rprior@protonmail.com)
20200519130048.502fde4f@scratchpost.org
Toggle quote (2 lines)
> glib-compile-schemas

Ok, maybe that one isn't so bad. Ok for that one.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7DvGAACgkQ5xo1VCww
uqXnFwf/b40dk+53KmRetFvfDcTQNXMHmoP9LGw31ftMIvkadDa0ZEGqqxEKlF+t
7t39YP+iIlbtCjI85TkWukvBWLuxhn+uHRy2z8bnEHftEF03ByN+FXBoiYm2UkWr
fxRoo1MKRnCCkObbwKbDhckD6/AEK5kniPEELF8rVsXQIs0Fz52GRV8k7VeH+lV+
uyUjBEA5pmCO3Gwq+125ZnBj1KU6zXlMJ1Y1Z7cTci6PeZ8qKQeuslsi6DMSeUdY
pTjhmFjNV6DzVZqop8mSoVCUVtcSCdIZiim/TO4h9hzLVBC1cTnGqoNcIzz0GkIu
1jnSiXklf0QgdWEvGNAklX1chw7vBA==
=VTd3
-----END PGP SIGNATURE-----


D
D
Danny Milosavljevic wrote on 19 May 2020 13:08
(name . Ryan Prior via Guix-patches via)(address . guix-patches@gnu.org)
20200519130856.58187950@scratchpost.org
Why are there only native-inputs ? That doesn't look right.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAl7DvkgACgkQ5xo1VCww
uqVlGAgAiNGG4YWpGnCAMylGnfYe4kJkZV2xn7hR/Iq/FbFAyUopWMqHX5yvF/by
JZfhvLvbVYwu0Aw71UNlU63eM8SGj3YbPSD8vC816cT8tbHkh4vrx2r/f/xdvx4P
zQpJaS1eNoCj84ssvqwieogCnlQfOrShvfGBfY/epSOQ3g8wMnqaziIzWGowqIxA
q0VjVfgcPRv9+ZZTkim3K2YGq9y/Xj+es4pO/P3/FxCZfxtQoONaWvBQf3/nlXrN
vjJ2zet91ygeLiSX0VreYaBEMMmNfnGQz8TpU+WHdqLHhUOS02vSzaXj9Ae4+Oqu
+qZdxSdRm5HmY+HEMSV6/Wvf/tXlpQ==
=1J5h
-----END PGP SIGNATURE-----


R
R
Ryan Prior wrote on 19 May 2020 19:36
[PATCH 0/1] New Appstream patch
(address . 41293@debbugs.gnu.org)
20200519173617.29250-1-rprior@protonmail.com
Sorry about the all-native-inputs appstream package, I stopped paying
attention to it at some point. Here's a new appstream patch that bumps the
version and uses actual inputs.

Ryan

Ryan Prior (1):
gnu: Add appstream.

gnu/packages/freedesktop.scm | 59 ++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

--
2.26.2
R
R
Ryan Prior wrote on 19 May 2020 19:36
[PATCH 1/1] gnu: Add appstream.
(address . 41293@debbugs.gnu.org)
20200519173617.29250-2-rprior@protonmail.com
* gnu/packages/freedesktop.scm (appstream): New variable.
---
gnu/packages/freedesktop.scm | 59 ++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (85 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index f00cb1e076..2373cc733c 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
 ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -55,8 +56,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)
@@ -1874,3 +1877,59 @@ useful with system integration.")
 into the Unity menu bar.  Based on KSNI, it also works in KDE and will
 fallback to generic Systray support if none of those are available.")
     (license license:lgpl2.1+)))
+
+(define-public appstream
+  (package
+    (name "appstream")
+    (version "0.12.11")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/ximion/appstream.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0ma1nldpc01rr2x14q1ymv2fvf7qcs3wp8fdqsnd17qx0hrz483c"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "-Dvapi=true"
+             "-Dstemming=false"
+             "-Dapidocs=false"
+             "-Dinstall-docs=false")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-stemmer-inc-dirs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (substitute* "meson.build"
+                 (("include_directories\\(\\['\\/usr\\/include'\\]\\)")
+                  "''")
+                 (("subdir\\('docs\\/'\\)")
+                  ""))
+               (substitute* "data/meson.build"
+                 (("\\/etc")
+                   (string-append out "/etc")))
+               #t))))))
+    (inputs
+     `(("glib" ,glib)
+       ("gperf" ,gperf)
+       ("libsoup" ,libsoup)
+       ("libxml2" ,libxml2)
+       ("libxslt" ,libxslt)
+       ("libyaml" ,libyaml)
+       ("lmdb" ,lmdb)))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("gobject-introspection" ,gobject-introspection)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
+    (synopsis "Provides the foundation to build software-center applications")
+    (description "AppStream is a cross-distribution effort for enhancing the way
+we interact with the software repositories provided by GNU/Linux distributions
+by standardizing software component metadata.")
+    (license license:gpl2)))
-- 
2.26.2
R
R
Ryan Prior wrote on 2 Jun 2020 03:27
[PATCH 0/3] Updated Pantheon packages
(address . 41293@debbugs.gnu.org)
20200602012736.4292-1-rprior@protonmail.com
Here are updated patches for Sideload, Appstream, and Pantheon Terminal.

The sideload package is updated to the latest release. (1.1.1)

Sideload & pantheon-terminal packages are modified to disable compiling
schemas and updating desktop database as part of the install process.

These should all apply cleanly on master now. Let me know if there's still
further concerns!

Ryan Prior (3):
gnu: Add sideload.
gnu: Add appstream.
gnu: Add pantheon-terminal.

gnu/packages/freedesktop.scm | 59 +++++++++++++++++++
gnu/packages/pantheon.scm | 110 +++++++++++++++++++++++++++++++++++
2 files changed, 169 insertions(+)

--
2.26.2
R
R
Ryan Prior wrote on 2 Jun 2020 03:27
[PATCH 1/3] gnu: Add sideload.
(address . 41293@debbugs.gnu.org)
20200602012736.4292-2-rprior@protonmail.com
* gnu/packages/pantheon.scm (sideload): New variable.
---
gnu/packages/pantheon.scm | 60 +++++++++++++++++++++++++++++++++++++++
1 file changed, 60 insertions(+)

Toggle diff (82 lines)
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 72910e5470..6709cd2d8a 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -18,11 +18,14 @@
 
 (define-module (gnu packages pantheon)
   #:use-module (gnu packages cmake)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages package-management)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages)
   #:use-module (guix build-system meson)
   #:use-module (guix git-download)
@@ -107,3 +110,60 @@ in apps built for the Pantheon desktop.")
 arithmetic.  It is the default calculator application in the Pantheon
 desktop.")
     (license license:gpl3)))
+
+(define-public sideload
+  (package
+    (name "sideload")
+    (version "1.1.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elementary/sideload.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0mlc3nm2navzxm8k1rwpbw4w6mv30lmhqybm8jqxd4v8x7my73vq"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:configure-flags (list (string-append "-Dflatpak="
+                                              (assoc-ref %build-inputs "flatpak")
+                                              "/include"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'install 'set-environment-variables
+           (lambda _
+             ;; Disable compiling schemas and updating desktop databases
+             (setenv "DESTDIR" "/")
+             #t))
+         (add-after 'install 'install-symlinks
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/io.elementary.sideload"))
+                    (link (string-append out "/bin/sideload")))
+               (symlink bin link)))))))
+    (inputs
+     `(("flatpak" ,flatpak)
+       ("granite" ,granite)
+       ("gtk" ,gtk+)
+       ("libostree" ,libostree)))
+    (propagated-inputs
+     `(("glib-networking" ,glib-networking)))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("gettext" ,gettext-minimal)
+       ("glib" ,glib)
+       ("glib:bin" ,glib "bin")
+       ("gobject-introspection" ,gobject-introspection)
+       ("libgee" ,libgee)
+       ("libxml2" ,libxml2)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/sideload")
+    (synopsis "Graphical application to side-load Flatpaks")
+    (description "Sideload handles flatpakref files, like those you might find
+on Flathub or another third-party website providing a Flatpak app for
+download.")
+    (license license:gpl3)))
-- 
2.26.2
R
R
Ryan Prior wrote on 2 Jun 2020 03:28
[PATCH 2/3] gnu: Add appstream.
(address . 41293@debbugs.gnu.org)
20200602012736.4292-3-rprior@protonmail.com
* gnu/packages/freedesktop.scm (appstream): New variable.
---
gnu/packages/freedesktop.scm | 59 ++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (85 lines)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 90154cbba9..db1b18e4ee 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
 ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -55,8 +56,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)
@@ -1870,3 +1873,59 @@ useful with system integration.")
 into the Unity menu bar.  Based on KSNI, it also works in KDE and will
 fallback to generic Systray support if none of those are available.")
     (license license:lgpl2.1+)))
+
+(define-public appstream
+  (package
+    (name "appstream")
+    (version "0.12.11")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/ximion/appstream.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0ma1nldpc01rr2x14q1ymv2fvf7qcs3wp8fdqsnd17qx0hrz483c"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "-Dvapi=true"
+             "-Dstemming=false"
+             "-Dapidocs=false"
+             "-Dinstall-docs=false")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-stemmer-inc-dirs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (substitute* "meson.build"
+                 (("include_directories\\(\\['\\/usr\\/include'\\]\\)")
+                  "''")
+                 (("subdir\\('docs\\/'\\)")
+                  ""))
+               (substitute* "data/meson.build"
+                 (("\\/etc")
+                   (string-append out "/etc")))
+               #t))))))
+    (inputs
+     `(("glib" ,glib)
+       ("gperf" ,gperf)
+       ("libsoup" ,libsoup)
+       ("libxml2" ,libxml2)
+       ("libxslt" ,libxslt)
+       ("libyaml" ,libyaml)
+       ("lmdb" ,lmdb)))
+    (native-inputs
+     `(("cmake" ,cmake)
+       ("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("gobject-introspection" ,gobject-introspection)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)))
+    (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
+    (synopsis "Provides the foundation to build software-center applications")
+    (description "AppStream is a cross-distribution effort for enhancing the way
+we interact with the software repositories provided by GNU/Linux distributions
+by standardizing software component metadata.")
+    (license license:gpl2)))
-- 
2.26.2
R
R
Ryan Prior wrote on 2 Jun 2020 03:28
[PATCH 3/3] gnu: Add pantheon-terminal.
(address . 41293@debbugs.gnu.org)
20200602012736.4292-4-rprior@protonmail.com
* gnu/packages/pantheon.scm (pantheon-terminal): New variable.
---
gnu/packages/pantheon.scm | 50 +++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (60 lines)
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 6709cd2d8a..250e8e3b2d 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -167,3 +167,53 @@ desktop.")
 on Flathub or another third-party website providing a Flatpak app for
 download.")
     (license license:gpl3)))
+
+(define-public pantheon-terminal
+  (package
+    (name "pantheon-terminal")
+    (version "5.5.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/elementary/terminal.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "119iwmzbpkj4nmxinqfsh73lx23g8gbl6ha6wc4mc4fq9hpnc9c2"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'install 'set-environment-variables
+           (lambda _
+             ;; Disable compiling schemas and updating desktop databases
+             (setenv "DESTDIR" "/")
+             #t))
+         (add-after 'install 'install-symlinks
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin/io.elementary.terminal"))
+                    (link (string-append out "/bin/pantheon-terminal")))
+               (symlink bin link)))))))
+    (inputs
+     `(("granite" ,granite)
+       ("gtk" ,gtk+)
+       ("vte" ,vte)))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib" ,glib)
+       ("appstream" ,appstream)
+       ("libgee" ,libgee)
+       ("desktop-file-utils" ,desktop-file-utils) ; required for tests
+       ("glib:bin" ,glib "bin") ; for glib-compile-resources
+       ("pkg-config" ,pkg-config)
+       ("gobject-introspection" ,gobject-introspection)
+       ("vala" ,vala)))
+    (home-page "https://github.com/elementary/terminal")
+    (synopsis "Graphical terminal with opinionated design and thoughtful touches")
+    (description "A lightweight, beautiful, and simple terminal application.
+Comes with sane defaults, browser-like tabs, sudo paste protection, smart
+copy/paste, and little to no configuration.")
+    (license license:lgpl3)))
-- 
2.26.2
R
R
Ryan Prior wrote on 19 Jun 2020 00:30
Pantheon packages
(name . 41293@debbugs.gnu.org)(address . 41293@debbugs.gnu.org)
U2fpqyuuTOZuT1AcqBeFFlNV5gvz1AdkpbDOOeEsTyCzNp51AI2cY3RoOJCMsK6UwJQF-A2x6bHYAZbOZEDXkKM3bmR9mKTSS8RBWIjVr8M=@protonmail.com
Hey folks, just bumping this patch set!

Ryan
Attachment: file
M
M
Marius Bakke wrote on 22 Jun 2020 21:16
Re: [bug#41293] [PATCH 1/3] gnu: Add sideload.
87d05qdi6x.fsf@gnu.org
Hello!

Sorry for the slooow response...

Ryan Prior via Guix-patches via <guix-patches@gnu.org> writes:

Toggle quote (2 lines)
> * gnu/packages/pantheon.scm (sideload): New variable.

[...]

Toggle quote (7 lines)
> + (modify-phases %standard-phases
> + (add-before 'install 'set-environment-variables
> + (lambda _
> + ;; Disable compiling schemas and updating desktop databases
> + (setenv "DESTDIR" "/")
> + #t))

That's an unorthodox workaround :-) does the build system ignore it when
DESTDIR is set, or do they just end up in a different location?

Is the "glib:bin" input still needed?

Toggle quote (8 lines)
> + (inputs
> + `(("flatpak" ,flatpak)
> + ("granite" ,granite)
> + ("gtk" ,gtk+)
> + ("libostree" ,libostree)))
> + (propagated-inputs
> + `(("glib-networking" ,glib-networking)))

Can you add a comment about why this needs to be propagated?

Toggle quote (3 lines)
> + (native-inputs
> + `(("cmake" ,cmake)

Use 'cmake-minimal' if CMake is required (is it?).

Toggle quote (15 lines)
> + ("gettext" ,gettext-minimal)
> + ("glib" ,glib)
> + ("glib:bin" ,glib "bin")
> + ("gobject-introspection" ,gobject-introspection)
> + ("libgee" ,libgee)
> + ("libxml2" ,libxml2)
> + ("pkg-config" ,pkg-config)
> + ("vala" ,vala)))
> + (home-page "https://github.com/elementary/sideload")
> + (synopsis "Graphical application to side-load Flatpaks")
> + (description "Sideload handles flatpakref files, like those you might find
> +on Flathub or another third-party website providing a Flatpak app for
> +download.")
> + (license license:gpl3)))

This should be 'gpl3+' because no source files say "GPL 3 only" (in fact
they explicitly mention GPL 3 or any later version).
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7xA6YACgkQoqBt8qM6
VPrhWQf/UsAxZQXcowqSxjaRSrPlnwnUUnWymTp2+aC0mih13Rsg41LLwHbSho7g
9+HUDbz79GJdDoi+1WOH16cOz2gsrqKZi1Hh/J0Y9xvpw8VRjp36mFSAeW840U3Z
u8jMpJkxsiysnB49ZKqav4iLD8jTZvW8rDz4jaeJBt0VQ5Vs0UI0HrT9eUubBY69
FlmNrFh4d2SCsriLr9kEHu2rxlfjWaFq0banTmXXQtljBv1CkfzDPHI+E3cjpaPp
J0C2BFoIhjkNLa1vmcDolor/bvwFbRzysEZMLLGBFOYtsCCtvFGSv0nf/xizx2vD
GAetdnss5VXwfHolk/kIrqLz7aBMoA==
=84iI
-----END PGP SIGNATURE-----

M
M
Marius Bakke wrote on 22 Jun 2020 21:23
Re: [bug#41293] [PATCH 2/3] gnu: Add appstream.
87a70udhwl.fsf@gnu.org
Ryan Prior via Guix-patches via <guix-patches@gnu.org> writes:

Toggle quote (2 lines)
> * gnu/packages/freedesktop.scm (appstream): New variable.

[...]

Toggle quote (11 lines)
> + (inputs
> + `(("glib" ,glib)
> + ("gperf" ,gperf)
> + ("libsoup" ,libsoup)
> + ("libxml2" ,libxml2)
> + ("libxslt" ,libxslt)
> + ("libyaml" ,libyaml)
> + ("lmdb" ,lmdb)))
> + (native-inputs
> + `(("cmake" ,cmake)

'cmake-minimal' here too.

Toggle quote (8 lines)
> + ("gettext" ,gettext-minimal)
> + ("glib:bin" ,glib "bin") ; for glib-compile-resources
> + ("gobject-introspection" ,gobject-introspection)
> + ("pkg-config" ,pkg-config)
> + ("vala" ,vala)))
> + (home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
> + (synopsis "Provides the foundation to build software-center applications")

I think the GitHub tagline is better: "Tools and libraries to work with
AppStream metadata".

Toggle quote (4 lines)
> + (description "AppStream is a cross-distribution effort for enhancing the way
> +we interact with the software repositories provided by GNU/Linux distributions
> +by standardizing software component metadata.")

Who is 'we' in this context? Maybe we can use the README description:

"AppStream is a collaborative effort for making machine-readable
software metadata available to programs that need it."

Do you know if Guix is supported? :-)

Toggle quote (2 lines)
> + (license license:gpl2)))

The library portions of this package seems to be 'lgpl2.1+', and the
tools are 'gpl2' (only). Can you add a comment about it and list both
licenses?
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7xBRoACgkQoqBt8qM6
VPow7wf/W5q3fkv0OGsxgenmxupck4wFpQNbgirGIdfi6cBszTOwBke/elrTeFmG
uF1JdXWdS009tQJQNvP1Dz7YAGpzT2UwIIOaxiYCtzyadfJk7lPFNh2izgbSVLuV
mB6VmexPVtwG6Mp0/A6mcQGihuRuSINNNuLVV8mMIsS7PhWfppGkFV6JdQFA2yEL
KBlyTNDrp72Nl/RgRf8cu1UOldKoRkTCKA44gRP4cDyafnl0Dnqk1OsYtYl586U7
2ArW3hNWKREnGnrX2ABQSNhUoU6gfsTjpF7F3GPMtvqfpkinsHHHN0HJ5SjIk4+9
8/NvyH/aucTfx8jhtXMvT/K19wUGag==
=XAtu
-----END PGP SIGNATURE-----

M
M
Marius Bakke wrote on 22 Jun 2020 21:30
Re: [bug#41293] [PATCH 3/3] gnu: Add pantheon-terminal.
877dvydhjt.fsf@gnu.org
Ryan Prior via Guix-patches via <guix-patches@gnu.org> writes:

Toggle quote (2 lines)
> * gnu/packages/pantheon.scm (pantheon-terminal): New variable.

[...]

Toggle quote (10 lines)
> + (arguments
> + `(#:glib-or-gtk? #t
> + #:phases
> + (modify-phases %standard-phases
> + (add-before 'install 'set-environment-variables
> + (lambda _
> + ;; Disable compiling schemas and updating desktop databases
> + (setenv "DESTDIR" "/")
> + #t))

Same comment as patch 1/3.

Toggle quote (2 lines)
> + (synopsis "Graphical terminal with opinionated design and thoughtful touches")

This synopsis borders on "marketing language" (see the section about
Synopses and Descriptions in the manual), but maybe it's OK.

Toggle quote (2 lines)
> + (description "A lightweight, beautiful, and simple terminal application.

Can you turn this into a full sentence? I.e. "pantheon-terminal is a ...".

Toggle quote (3 lines)
> +Comes with sane defaults, browser-like tabs, sudo paste protection, smart
> +copy/paste, and little to no configuration.")

Also here, "It comes with a ...".

Toggle quote (2 lines)
> + (license license:lgpl3)))

Indeed LGPL3 only! Odd choice. :-)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7xBuYACgkQoqBt8qM6
VPrkugf/ZBdpUm9X2xxsT3e0xP6CHqTKs6crWSBpkJGdUEowsA/YpY/mZXbtTg5K
F7ZAQBnrxX4FMZq23WnKA9LhKfhi4ZVDLO6jKscyuWeTJPLPXR7DtiQVL1xClwVw
/l/Y3vImk2+OckjbLRkmodyfJHsOc9/Y0AI+yQHqdfyZqslAjnc2pGPyKfqikkSX
54+FFE76pZ1AfX5zvWqgbeFmbJZ7MH1Q4LkkfUj+UuXHcsY2hvBrRkwdZ6JVZh/x
RLD6Wwzs8v9SDj1E4ayhN6cBTF0ZeZacBm+PQEpZI64C9jYoNiOa2pCFyZc5O2V/
RFf3VxPSlNLAsUqud97PXapykqV3ag==
=sR89
-----END PGP SIGNATURE-----

M
M
Marius Bakke wrote on 24 Jun 2020 21:39
Re: [bug#41293] [PATCH 1/3] gnu: Add sideload.
(name . Ryan Prior)(address . rprior@protonmail.com)(address . 41293@debbugs.gnu.org)
87r1u46yor.fsf@gnu.org
Hi Ryan,

(+ debbugs, please keep it in CC)

Ryan Prior <rprior@protonmail.com> writes:

Toggle quote (9 lines)
> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On Monday, June 22, 2020 7:16 PM, Marius Bakke <marius@gnu.org> wrote:
>
>
>> That's an unorthodox workaround :-) does the build system ignore it when
>> DESTDIR is set, or do they just end up in a different location?
>
> This is a common pattern in build systems for Pantheon software, one you'll see come up again and again as I add more Pantheon packages. The post-install script runs extra steps unless the DESTDIR env variable is set. For example: https://github.com/elementary/sideload/blob/master/meson/post_install.py#L9

OK. Weird, but works. :-)

Toggle quote (4 lines)
>> Is the "glib:bin" input still needed?
>
> Yes, for glib-compile-resources, which is invoked here as it is with many other GNOME packages in Guix.

Right.

Toggle quote (9 lines)
>> > - (propagated-inputs
>> > - `(("glib-networking" ,glib-networking)))
>> >
>> >
>>
>> Can you add a comment about why this needs to be propagated?
>
> I didn't take good notes, it was basically "it didn't work without this." And now that I try it again, it seems what I really need to propagate is gpgme and not glib-networking. I will add a note. (I want to get good at patching packages to remove the need for propagation but I don't know where to begin with this one.)

At least for GnuPG, substituting all references to 'gpg' with
(string-append gnupg "/bin/gpg") should work. I guess something similar
will work for GPGME.

Toggle quote (10 lines)
>>
>> > - (native-inputs
>> > - `(("cmake" ,cmake)
>> >
>> >
>>
>> Use 'cmake-minimal' if CMake is required (is it?).
>
> Nope was never needed, removed. (I think I was adding cmake to a lot of Meson packages for a while because they complain about not having it in their build output, but it's really just a warning.)

Yes, learning to ignore useless warnings is an important packaging
skill. :-)

Toggle quote (7 lines)
>> > - (license license:gpl3)))
>>
>> This should be 'gpl3+' because no source files say "GPL 3 only" (in fact
>> they explicitly mention GPL 3 or any later version).
>
> Fixed & updated patch follows.

Applied! I moved 'glib', 'libgee', and 'libxml2' to inputs because they
were referenced by the io.elementary.sideload binary. Let me know if
you think this was wrong.

Will you submit updated patches for the other two in this series too?

Thanks!
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7zq+QACgkQoqBt8qM6
VPqCXQgAngCbZexrCdw/RR1FvSI3gnH7LBNcq68SGqhtuj1WRzOIxTTns6TsRbNU
C4YafZEhAplaoHTUwzmCIKGdH8RXwUChVnp2aN4ynYE30IwoIXQZNdyGxK2r6pRX
KeOOb4uzGfizTTNkXG/xULcyB+83FWNl/klMnxISeaT1YAbuEP6PEB0NVD4E0XTK
+kbsVMAwLCPOOiUnRnrW0zIXlKm6SOQZtqdW9qvQFMvlJ19siqFWvlijvgvXProU
Jj7O8qx1nTvSkm0NJwjv7tz8pyStWUXbqHarh0RUjqVUPR+2koVij6Tn3lp8IQ6n
A1AL7KAnY7grFDIL3mE99mUKkAGo9Q==
=h8VR
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 9 Sep 2020 22:57
Re: [bug#41293] Pantheon packages
(name . Ryan Prior)(address . rprior@protonmail.com)(name . 41293@debbugs.gnu.org)(address . 41293@debbugs.gnu.org)
87o8mellcg.fsf@gnu.org
Hello Ryan,

Did you have a chance to look at the comments Marius made back in June?


It would be nice to unlock this patch series! :-)

Ludo’.
?