From: Raghav Gururajan <raghavgururajan@disroot.org>
To: Danny Milosavljevic <dannym@scratchpost.org>
Cc: guix-devel@gnu.org
Subject: Re: [OUTREACHY]: Integration of desktop environments into GNU Guix
Date: Tue, 11 Aug 2020 06:38:14 -0400 [thread overview]
Message-ID: <0e4a4b55-f76e-18f5-a0b5-a76f90e06ab4@disroot.org> (raw)
In-Reply-To: <20200810002822.089483da@scratchpost.org>
[-- Attachment #1.1.1: Type: text/plain, Size: 12342 bytes --]
@Danny
Please find the attached patches.
I will send you the patch for gnome-shell shortly.
NOTE: I am not done with some of these packages yet. Have to fix
run-time issues.
@Others
Please find the following git-log.
*** START ***
commit 17b9cce3c19b092225759e6a1b51e7bcf330a4ce
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Tue Aug 11 04:36:54 2020 -0400
gnu: gdm: Update package definition.
* gnu/packages/gnome.scm (gdm) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[patches]<search-patches>[gdm-default-session.patch]: Remove patch.
[outputs]: New output "help".
[arguments]<#:configure-flags>[--disable-static]: New flag.
[--enable-gdm-xsession]: New flag.
[--enable-ipv6]: New flag.
[--with-help-dir]: New flag.
[--with-systemdsystemunitdir]: New flag.
[--with-default-path]: Modify flag.
[--with-xevie]: New flag.
[--without-plymouth]: Remove flag.
[--localstatedir]: Remove flag.
[--sbindir]: Remove flag.
<#:phases>['pre-configure]: Modify phase.
['install-placeholder-desktop-entry]: Remove phase.
['link-autostart-files]: Remove phase.
[native-inputs]: Add check.
[inputs]: Add glib, audit, keyutils, libice, libselinux, plymouth,
tcp-wrappers, libx11, libxau, libxcb, libxdmcp, libext and libxinerama.
Remove check.
[synopsis]: Modify.
[description]: Modify.
* gnu/packages/patches/gdm-default-session.patch: Remove file.
* gnu/local.mk (gdm-default-session.patch): Remove reference.
commit ae30bf6af1397b1b3f7b43ab6435f637fe6d42a7
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Mon Aug 10 02:07:39 2020 -0400
gnu: mutter: Update package definition.
* gnu/packages/gnome.scm (mutter) [version]: Update to 3.36.4.
[source]<origin>[sha256]: Modify base32.
[arguments]<#:configure-flags>[-Dgles2_libname]: New flag.
[-Degl_device]: New flag.
[-Dwayland_eglstream]: New flag.
[-Dinstalled_tests]: New flag.
[-Dxwayland_grab_default_access_rules]: New flag.
[-Dxwayland_initfd]: New flag.
[-Dc_link_args]: Modify flag.
<#:phases>['fix-build-with-mesa-20]: Remove phase.
[native-inputs]: Add adwaita-icon-theme, python-wrapper and ruby.
Remove autoconf, automake and libtool.
[propagated-inputs]: Add graphene, wayland and libxi. Remove xinput.
Move gdk-pixbuf+svg, libinput, eudev, libxcomposite, libxdamage,
libxext,
libxkbcommon and libxrandr to ...
[inputs]: ... here. Add dbus, freetype, fribidi, libdrm, sysprof,
egl-wayland,
wayland-protocols, libxau, libxcb, libxcursor, libxinerama and
libxrender.
Remove zenity.
[synopsis]: Modify.
[description]: Modify.
[home-page]: Modify.
commit 004c8bbf589b502dfbb36c7d33ddfc76a440ab20
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Tue Aug 11 06:21:31 2020 -0400
gnu: gjs: Update package definition.
* gnu/packages/gnome.scm (gjs) [version]: Update to 1.64.4.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from glib-or-gtk to meson.
[arguments]<#:glib-or-gtk?>: New argument.
<#:phases>['pre-check]: Modify phase.
[propagated-inputs]: Replace mozjs-60 with mozjs-68.
commit ae436932c96b4f9f5308580de8999cca4a56b32b
Author: Kei Kebreau <kei@openmailbox.org>
Date: Tue Apr 21 11:10:24 2020 -0400
gnu: Add mozjs-68.
* gnu/packages/gnuzilla.scm (mozjs-68): New variable.
commit c45f292b09227203a37545a7d653852a3f1150bf
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Mon Aug 10 00:05:11 2020 -0400
gnu: Add egl-wayland.
* gnu/packages/graphics.scm (egl-wayland): New variable.
commit 4a9eb027bf23e24063dd23bffa1edc3b5da6e637
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun Aug 9 23:55:18 2020 -0400
gnu: Add eglexternalplatform.
* gnu/packages/graphics.scm (eglexternalplatform): New variable.
commit 032db56f8ab3587d4527c56bd3f8c0901ca1f595
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun Aug 9 07:32:10 2020 -0400
gnu: wayland-protocols: Update package definition.
* gnu/packages/freedesktop.scm (wayland-protocols) [version]: Update
to 1.20.
[source]<origin>[sha256]: Modify base32.
[description]: Modify.
commit ea024bd3e36c5b164c665f8836d05ccb696274f8
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun Aug 9 07:16:35 2020 -0400
gnu: wayland: Update package definition.
* gnu/packages/freedesktop.scm (wayland) [version]: Update to 1.18.0.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from gnu to meson.
[outputs]: New output "doc".
[arguments]<#:parallel-tests?>: Remove argument.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Move here docbook-xml and docbook-xsl from ...
[inputs]: ... here. Move libffi to ...
[propagated-inputs]: ... here.
[synopsis]: Modify.
[description]: Modify.
[license]: Change from x11 to expat.
commit 0d43e161b7631272f0ac0bed695f18d196451eb9
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun Aug 9 02:18:24 2020 -0400
gnu: totem: Update package definition.
* gnu/packages/gnome.scm (totem): Update package definition.
[outputs]: New outputs "help" and "doc".
[arguments]<#:configure-flags>[-Dwith-plugins]: New flag.
[-Denable-gtk-doc]: New flag.
<#:phases>['patch-docbook-xml]: New phase.
['pre-check]: Modify phase.
['move-doc]: New phase.
['move-help]: New phase.
['wrap-totem]: Modify phase.
['disable-cache-generation]: Remove phase.
[native-inputs]: Add docbook-xml and gtk-doc. Move vala from ...
[inputs]: ... here. Remove adwaita-icon-theme, atk, dbus-glib, librsvg,
libsoup, libxrandr, libxtst, libxml2, libxxf86vm, lirc and xorgproto.
Replace gdk-pixbuf with gdk-pixbuf+svg. Move gtk+ and
totem-pl-parser to ...
[propagated-inputs]: ... here. Add glib. Remove dconf.
[synopsis]: Modify.
[description]: Modify.
commit 18c4692b5cbc5db8c7e8968dcf54c3b7d0d603c4
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 23:32:47 2020 -0400
gnu: sushi: Update package definition.
* gnu/packages/gnome.scm (sushi) [version]: Update to 3.34.0.
[source]<origin>[sha256]: Modify base32.
[arguments]<#:phases>['wrap-typelib]: Modify phase.
[inputs]: Add glib and gtk+. Replace gdk-pixbuf with gdk-pixbuf+svg.
Remove clutter, clutter-gst, clutter-gtk, libxml2 and neon.
[synopsis]: Modify.
commit 9716f05d24a29be16fe04994606a0e419f90c880
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 22:28:04 2020 -0400
gnu: libmusicbrainz: Propagate inputs.
* gnu/packages/music.scm (libmusicbrainz) [inputs]: Change field to
propagated-inputs.
commit 73ff96465270910b93fa2f4d6be84799e1f6fee0
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 19:07:31 2020 -0400
gnu: simple-scan: Update package definition.
* gnu/packages/gnome.scm (simple-scan) [version]: Update to 3.36.4.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "help".
[arguments]<#:phases>['move-help]: New phase.
[inputs]: Add glib, libwebp and packagekit. Change gdk-pixbuf to
gdk-pixbuf+svg.
[synopsis]: Modify.
[description]: Modify.
commit f954f2cb3d59e53ed72943cb82fe0d68c8a901e8
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 18:25:19 2020 -0400
gnu: rygel: Update package definition.
* gnu/packages/gnome.scm (rygel) [version]: Update to 0.38.4.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from gnu to meson.
[outputs]: New output "doc".
[arguments]<#:glib-or-gtk?>: New argument.
<#:configure-flags>[-Dapi-docs]: New flag.
[-Dsystemd-user-units-dir]: New flag.
<#:phases>['patch-docbook]: New phase.
['move-doc]: New phase.
[native-inputs]: Add docbook-xml, docbook-xsl, glib:bin, python-wrapper.
[inputs]: Change gdk-pixbuf to gdk-pixbuf+svg. Add gst-libav,
gst-plugins-bad, gst-plugins-good, gst-plugins-ugly, libxml2,
shared-mime-info and sqlite. Move libgee, gstreamer and gupnp-av to ...
[propagated-inputs]: ... here. Add glib and glib-networking.
[synopsis]: Modify.
[description]: Modify.
commit 1e7b17a569017bd57236c62b2682d32493aa3414
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 17:54:31 2020 -0400
gnu: gst-editing-services: Update package definition.
* gnu/packages/gstreamer.scm (gst-editing-services): Update package
definition.
[outputs]: New output "doc".
[arguments]<#:glib-or-gtk?>: New argument.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Add docbook-xml, gobject-introspection and gtk-doc.
Remove gst-plugins-good. Change python to python-wrapper. Move
gst-plugins-bad
to ...
[inputs]: ... here. Add glib, gstreamer and gtk+.
[synopsis]: Modify.
[description]: Modify.
[license]: Modify.
commit bc48bf8cefc9ac9de327e978e8e50765dafcf772
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 02:46:28 2020 -0400
gnu: orca: Update package definition.
* gnu/packages/gnome.scm (orca) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "help".
[arguments]<#:configure-flags>[--with-help-dir]: New flag.
<#:phases>['qualify-xkbcomp]: Remove phase.
['wrap-orca]: Modify phase.
[inputs]: Add atk, at-spi2-core, brltty, liblouis and
python-setproctitle.
Remove gsettings-desktop-schemas, gst-plugins-base, gst-plugins-good and
xkbcomp.
[synopsis]: Modify.
[description]: Modify.
commit 9b802392fb407a39a84066fdef85b50848e3060f
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat Aug 8 01:58:33 2020 -0400
gnu: Add brltty.
* gnu/packages/accessibility.scm (brltty): New variable.
commit 9db1331a0819dcc291c4af6278d4bd9eac1d6c9b
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri Aug 7 23:07:23 2020 -0400
gnu: Add libbraille.
* gnu/packages/accessibility.scm (libbraille): New variable.
commit 85bf43ebf72446b765982b00224d7f4610a00482
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri Aug 7 22:44:20 2020 -0400
gnu: Add latex2html.
* gnu/packages/documentation.scm (latex2html): New variable.
commit 0ae235ac5cf46367d60d91692f8a789efd945d47
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri Aug 7 17:08:33 2020 -0400
gnu: Add liblouisutdml.
* gnu/packages/language.scm (liblouisutdml): New variable.
* gnu/packages/patches/liblouisutdml-fix-tests.patch: New file.
* gnu/local.mk (liblouisutdml-fix-tests.patch): New reference.
commit add14ec0945de8967dc8f736a5561bf05bf3dcfa
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri Aug 7 15:44:33 2020 -0400
gnu: Add liblouis.
* gnu/packages/languages.scm (liblouis): New variable.
commit 63106f16d167624d83820da97e59317b52ca3343
Author: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri Aug 7 14:00:20 2020 -0400
gnu: nautilus: Update package definition.
* gnu/packages/gnome.scm (nautilus) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "doc".
[arguments]<#:configure-flags>[-Ddocs]: New flag.
[-Dselinux]: New flag.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Add desktop-file-utils, docbook-xml,
gsettings-desktop-schemas,
gtk-doc and python-wrapper.
[inputs]: Add appstream-glib, gstreamer and libx11. Remove
dconf, exempi, gvfs, libexif and libseccomp. Move gtk+ to ...
[propagated-inputs]: ... here. Add glib.
[synopsis]: Modify.
[description]: Modify.
[license]: Modify.
*** END ***
Regards,
RG.
[-- Attachment #1.1.2: 0045-gnu-nautilus-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 5970 bytes --]
From 63106f16d167624d83820da97e59317b52ca3343 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri, 7 Aug 2020 14:00:20 -0400
Subject: [PATCH 45/65] gnu: nautilus: Update package definition.
* gnu/packages/gnome.scm (nautilus) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "doc".
[arguments]<#:configure-flags>[-Ddocs]: New flag.
[-Dselinux]: New flag.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Add desktop-file-utils, docbook-xml, gsettings-desktop-schemas,
gtk-doc and python-wrapper.
[inputs]: Add appstream-glib, gstreamer and libx11. Remove
dconf, exempi, gvfs, libexif and libseccomp. Move gtk+ to ...
[propagated-inputs]: ... here. Add glib.
[synopsis]: Modify.
[description]: Modify.
[license]: Modify.
---
gnu/packages/gnome.scm | 95 +++++++++++++++++++++++++-----------------
1 file changed, 56 insertions(+), 39 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 0598ffc373..eb447503b0 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -10329,62 +10329,79 @@ filetypes.")
(define-public nautilus
(package
(name "nautilus")
- (version "3.34.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "19zqwq4qyyncc5wq3xls0f7rsavnw741k336p2h7kx35p4kf41mv"))))
+ (version "3.36.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "1y0fsd7j48v4qkc051cg41mz7jycgw4vd4g37lw682p7n5xgrjmn"))))
(build-system meson-build-system)
+ (outputs '("out" "doc"))
(arguments
- '(#:glib-or-gtk? #t
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags
+ (list
+ "-Ddocs=true"
+ "-Dselinux=true")
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'skip-gtk-update-icon-cache
- ;; Don't create 'icon-theme.cache'.
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "docs/reference/libnautilus-extension"
+ (substitute* "libnautilus-extension-docs.xml"
+ (("http://www.oasis-open.org/docbook/xml/4.1.2/")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/"))))
+ #t))
+ (add-before 'configure 'skip-gtk-update-icon-cache
(lambda _
(substitute* "build-aux/meson/postinstall.py"
- (("gtk-update-icon-cache") "true"))
- #t)))
- ;; XXX: FAIL: check-nautilus
- ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
- #:tests? #f))
+ (("gtk-update-icon-cache")
+ "true"))
+ #t))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/gtk-doc")
+ (string-append doc "/share/gtk-doc"))
+ #t))))))
(native-inputs
- `(("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
- ("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("docbook-xml" ,docbook-xml-4.1.2)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)))
(inputs
- `(("dconf" ,dconf)
+ `(("appstream-util" ,appstream-glib)
("gexiv2" ,gexiv2)
- ("gvfs" ,gvfs)
- ("exempi" ,exempi)
- ("gnome-desktop" ,gnome-desktop)
("gnome-autoar" ,gnome-autoar)
+ ("gnome-desktop" ,gnome-desktop)
+ ("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
- ("libseccomp" ,libseccomp)
("libselinux" ,libselinux)
+ ("libxml2" ,libxml2)
("tracker" ,tracker)
("tracker-miners" ,tracker-miners)
- ;; XXX: gtk+ is required by libnautilus-extension.pc
- ;;
- ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
- ;; package. See:
- ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
- ("gtk+" ,gtk+)
- ("libexif" ,libexif)
- ("libxml2" ,libxml2)))
- (synopsis "File manager for GNOME")
+ ("x11" ,libx11)))
+ (propagated-inputs
+ `(("glib" ,glib)
+ ("gtk+" ,gtk+)))
+ (synopsis "Simple file manager for GNOME")
+ (description "Nautilus provides the user with a simple way to navigate and
+manage files.")
(home-page "https://wiki.gnome.org/Apps/Nautilus")
- (description
- "Nautilus (Files) is a file manager designed to fit the GNOME desktop
-design and behaviour, giving the user a simple way to navigate and manage its
-files.")
- (license license:gpl2+)))
+ (license license:gpl3+)))
(define-public baobab
(package
--
2.28.0
[-- Attachment #1.1.3: 0046-gnu-Add-liblouis.patch --]
[-- Type: text/x-patch, Size: 3870 bytes --]
From add14ec0945de8967dc8f736a5561bf05bf3dcfa Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri, 7 Aug 2020 15:44:33 -0400
Subject: [PATCH 46/65] gnu: Add liblouis.
* gnu/packages/languages.scm (liblouis): New variable.
---
gnu/packages/language.scm | 64 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 63 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index 8afa9663b4..175f6480fb 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -22,14 +22,18 @@
(define-module (gnu packages language)
#:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages llvm)
+ #:use-module (gnu packages man)
#:use-module (gnu packages ocr)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages swig)
+ #:use-module (gnu packages texinfo)
#:use-module (gnu packages web)
#:use-module (gnu packages xorg)
#:use-module (guix packages)
@@ -38,11 +42,69 @@
#:use-module (guix build-system python)
#:use-module ((guix licenses)
#:select
- (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 perl-license zpl2.1))
+ (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ perl-license zpl2.1))
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils))
+(define-public liblouis
+ (package
+ (name "liblouis")
+ (version "3.14.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/liblouis/liblouis.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0v6w8b9r994mkkbm2gqgd7k5yfmdhgbabh0j1gmn375nyvhy4qqh"))))
+ (build-system gnu-build-system)
+ (outputs '("out" "bin" "doc" "louis"))
+ (arguments
+ `(#:configure-flags
+ (list
+ "--disable-static"
+ "--enable-ucs4")
+ #:phases
+ (modify-phases %standard-phases
+ ;; To install the sub-package "louis".
+ (add-after 'install 'install-python-extension
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion "python"
+ (invoke "python" "setup.py" "install"
+ (string-append "--prefix="
+ (assoc-ref outputs "louis"))
+ "--root=/")))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("clang-format" ,clang)
+ ("help2man" ,help2man)
+ ("libtool" ,libtool)
+ ("libyaml" ,libyaml)
+ ("makeinfo" ,texinfo)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)))
+ (synopsis "Braille translator and back-translator")
+ (description "Liblouis is a braille translator and back-translator named in
+honor of Louis Braille. It features support for computer and literary braille,
+supports contracted and uncontracted translation for many languages and has
+support for hyphenation. New languages can easily be added through tables that
+support a rule- or dictionary based approach. Tools for testing and debugging
+tables are also included. Liblouis also supports math braille, Nemeth and
+Marburg.")
+ (home-page "http://liblouis.org/")
+ (license
+ (list
+ ;; Library
+ lgpl2.1+
+ ;; Tools
+ gpl3+))))
+
(define-public libstemmer
(package
(name "libstemmer")
--
2.28.0
[-- Attachment #1.1.4: 0047-gnu-Add-liblouisutdml.patch --]
[-- Type: text/x-patch, Size: 5517 bytes --]
From 0ae235ac5cf46367d60d91692f8a789efd945d47 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri, 7 Aug 2020 17:08:33 -0400
Subject: [PATCH 47/65] gnu: Add liblouisutdml.
* gnu/packages/language.scm (liblouisutdml): New variable.
* gnu/packages/patches/liblouisutdml-fix-tests.patch: New file.
* gnu/local.mk (liblouisutdml-fix-tests.patch): New reference.
---
gnu/local.mk | 1 +
gnu/packages/language.scm | 52 ++++++++++++++++++-
.../patches/liblouisutdml-fix-tests.patch | 33 ++++++++++++
3 files changed, 85 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/liblouisutdml-fix-tests.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 6d8c9a3676..9ff617a1ac 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1188,6 +1188,7 @@ dist_patch_DATA = \
%D%/packages/patches/libgnomeui-utf8.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
+ %D%/packages/patches/liblouisutdml-fix-tests.patch \
%D%/packages/patches/libofa-ftbfs-1.diff \
%D%/packages/patches/libofa-curl.diff \
%D%/packages/patches/libofa-ftbfs-2.diff \
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index 175f6480fb..8a1e1602a0 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -25,6 +25,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages java)
#:use-module (gnu packages llvm)
#:use-module (gnu packages man)
#:use-module (gnu packages ocr)
@@ -35,6 +36,7 @@
#:use-module (gnu packages swig)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages web)
+ #:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
@@ -42,7 +44,7 @@
#:use-module (guix build-system python)
#:use-module ((guix licenses)
#:select
- (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ perl-license zpl2.1))
+ (bsd-3 gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ perl-license zpl2.1))
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils))
@@ -105,6 +107,54 @@ Marburg.")
;; Tools
gpl3+))))
+(define-public liblouisutdml
+ (package
+ (name "liblouisutdml")
+ (version "2.8.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/liblouis/liblouisutdml.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "11xxky3crjm8bidfljzpqaz1m1i1m1yskmdpavf9b4jpf87nzjj2"))
+ (patches
+ (search-patches "liblouisutdml-fix-tests.patch"))))
+ (build-system gnu-build-system)
+ (outputs '("out" "bin" "doc"))
+ (arguments
+ `(#:configure-flags
+ (list
+ "--disable-static")))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("help2man" ,help2man)
+ ("jdk" ,icedtea "jdk")
+ ("libtool" ,libtool)
+ ("makeinfo" ,texinfo)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libxml2" ,libxml2)))
+ (propagated-inputs
+ `(("liblouis" ,liblouis)
+ ("liblouis:bin" ,liblouis "bin")))
+ (synopsis "Braille transcription services")
+ (description "Liblouisutdml is a library providing complete braille
+transcription services for xml, html and text documents. It translates into
+appropriate braille codes and formats according to its style sheet and the
+specifications in the document.")
+ (home-page "http://liblouis.org/")
+ (license
+ (list
+ ;; Library
+ lgpl3+
+ ;; Tools
+ gpl3+))))
+
(define-public libstemmer
(package
(name "libstemmer")
diff --git a/gnu/packages/patches/liblouisutdml-fix-tests.patch b/gnu/packages/patches/liblouisutdml-fix-tests.patch
new file mode 100644
index 0000000000..08d3db2c21
--- /dev/null
+++ b/gnu/packages/patches/liblouisutdml-fix-tests.patch
@@ -0,0 +1,33 @@
+From 52d44cdbc307d4e2ffc3ebe674745eb9d43ec337 Mon Sep 17 00:00:00 2001
+From: Christian Egli <christian.egli@sbs.ch>
+Date: Mon, 10 Aug 2020 16:08:17 +0200
+Subject: [PATCH] Some math over and under tests now actually pass
+
+with the newest liblouis
+---
+ tests/Makefile.am | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 157b005..932a5d0 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -321,10 +321,6 @@ XFAIL_TESTS += \
+ mathml_nemeth/mover_06.test \
+ mathml_nemeth/mover_07.test \
+ mathml_nemeth/mover_08.test \
+- mathml_nemeth/mover_09.test \
+- mathml_nemeth/mover_10.test \
+- mathml_nemeth/mover_11.test \
+- mathml_nemeth/mover_12.test \
+ mathml_nemeth/mover_13.test \
+ mathml_nemeth/mover_14.test \
+ mathml_nemeth/mover_15.test \
+@@ -332,7 +328,6 @@ XFAIL_TESTS += \
+ mathml_nemeth/munder_01.test \
+ mathml_nemeth/munder_02.test \
+ mathml_nemeth/munder_03.test \
+- mathml_nemeth/munder_04.test \
+ mathml_nemeth/munder_05.test \
+ mathml_nemeth/munder_06.test \
+ mathml_nemeth/munder_07.test \
--
2.28.0
[-- Attachment #1.1.5: 0048-gnu-Add-latex2html.patch --]
[-- Type: text/x-patch, Size: 2263 bytes --]
From 85bf43ebf72446b765982b00224d7f4610a00482 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri, 7 Aug 2020 22:44:20 -0400
Subject: [PATCH 48/65] gnu: Add latex2html.
* gnu/packages/documentation.scm (latex2html): New variable.
---
gnu/packages/documentation.scm | 44 ++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm
index a3a07f56db..18e3ce60f1 100644
--- a/gnu/packages/documentation.scm
+++ b/gnu/packages/documentation.scm
@@ -46,6 +46,50 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages xml))
+(define-public latex2html
+ (package
+ (name "latex2html")
+ (version "2020.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/latex2html/latex2html.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1icyl6kl60wh7cavprgbd8q6lpjwr7wn24m34kpiif7ahknhcbcm"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "configure"
+ (("/usr/local")
+ (assoc-ref outputs "out"))
+ (("\\$\\{CONFIG_SHELL-/bin/sh\\}")
+ (which "bash")))
+ #t))
+ (replace 'configure
+ (lambda _
+ (invoke "./configure")
+ #t))
+ (add-after 'configure 'patch-cfgcache
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "cfgcache.pm"
+ (("/usr/local")
+ (assoc-ref outputs "out")))
+ #t)))))
+ (inputs
+ `(("perl" ,perl)))
+ (synopsis "LaTeX documents to HTML")
+ (description "LaTeX2HTML is a utility that converts LaTeX documents to web
+pages in HTML.")
+ (home-page "https://www.latex2html.org/")
+ (license gpl2+)))
+
(define-public asciidoc
(package
(name "asciidoc")
--
2.28.0
[-- Attachment #1.1.6: 0049-gnu-Add-libbraille.patch --]
[-- Type: text/x-patch, Size: 2646 bytes --]
From 9db1331a0819dcc291c4af6278d4bd9eac1d6c9b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Fri, 7 Aug 2020 23:07:23 -0400
Subject: [PATCH 49/65] gnu: Add libbraille.
* gnu/packages/accessibility.scm (libbraille): New variable.
---
gnu/packages/accessibility.scm | 42 ++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index 8d421a092a..a329cbdf95 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -21,12 +21,19 @@
(define-module (gnu packages accessibility)
#:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages swig)
+ #:use-module (gnu packages libusb)
+ #:use-module (gnu packages java)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
@@ -37,6 +44,41 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages libusb))
+(define-public libbraille
+ (package
+ (name "libbraille")
+ (version "0.19.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://sourceforge.net/projects/" name "/files/" name "/"
+ name "-" version "/" name "-" version ".tar.gz"))
+ (sha256
+ (base32 "05g8r0ypazqn10i7k48iibs8bzc3scdfcnhcykab8j16lhzd27d0"))))
+ (build-system glib-or-gtk-build-system)
+ (outputs '("out" "bin"))
+ (arguments
+ `(#:tests? #f ; Tests require drivers
+ #:configure-flags
+ (list
+ "--disable-static"
+ "--enable-fake")))
+ (native-inputs
+ `(("latex2html" ,latex2html)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)
+ ("swig" ,swig)))
+ (inputs
+ `(("glib" ,glib)
+ ("gtk+" ,gtk+-2)
+ ("libusb" ,libusb-compat)))
+ (synopsis "Portable Braille Library")
+ (description "Libbraille is a library to easily access Braille displays and
+terminals.")
+ (home-page "https://libbraille.org")
+ (license license:lgpl2.1+)))
+
(define-public florence
(package
(name "florence")
--
2.28.0
[-- Attachment #1.1.7: 0050-gnu-Add-brltty.patch --]
[-- Type: text/x-patch, Size: 5930 bytes --]
From 9b802392fb407a39a84066fdef85b50848e3060f Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 01:58:33 -0400
Subject: [PATCH 50/65] gnu: Add brltty.
* gnu/packages/accessibility.scm (brltty): New variable.
---
gnu/packages/accessibility.scm | 125 +++++++++++++++++++++++++++++++++
1 file changed, 125 insertions(+)
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index a329cbdf95..14ce805aef 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -28,11 +28,23 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
+ #:use-module (gnu packages lisp)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages ocaml)
+ #:use-module (gnu packages pcre)
+ #:use-module (gnu packages polkit)
+ #:use-module (gnu packages ncurses)
+ #:use-module (gnu packages music)
+ #:use-module (gnu packages language)
+ #:use-module (gnu packages icu4c)
+ #:use-module (gnu packages speech)
+ #:use-module (gnu packages linux)
#:use-module (gnu packages documentation)
#:use-module (gnu packages swig)
#:use-module (gnu packages libusb)
#:use-module (gnu packages java)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages tcl)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnome)
@@ -79,6 +91,119 @@ terminals.")
(home-page "https://libbraille.org")
(license license:lgpl2.1+)))
+(define-public brltty
+ (package
+ (name "brltty")
+ (version "6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://brltty.app/archive/"
+ name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0nk54chr7z2w579vyiak9xk2avhnvrx7x2l5sk8nyw2zplchkx9q"))))
+ (build-system glib-or-gtk-build-system)
+ (arguments
+ `(#:tests? #f ; No target
+ #:configure-flags
+ (list
+ (string-append "--with-tcl-config="
+ (assoc-ref %build-inputs "tcl")
+ "/lib/tclConfig.sh")
+ (string-append "--with-libbraille="
+ (assoc-ref %build-inputs "libbraille"))
+ (string-append "--with-espeak_ng="
+ (assoc-ref %build-inputs "espeak-ng"))
+ (string-append "--with-espeak="
+ (assoc-ref %build-inputs "espeak"))
+ (string-append "--with-flite="
+ (assoc-ref %build-inputs "flite"))
+ ;; Required for RUNPATH validation.
+ (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:make-flags
+ (list
+ (string-append "JAVA_JAR_DIR="
+ (assoc-ref %outputs "out"))
+ (string-append "JAVA_JNI_DIR="
+ (assoc-ref %outputs "out"))
+ (string-append "OCAML_DESTDIR="
+ (assoc-ref %outputs "out")
+ "/lib")
+ (string-append "PYTHON_PREFIX="
+ (assoc-ref %outputs "out"))
+ "PYTHON_ROOT=/"
+ (string-append "TCL_DIR="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-errors
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "configure"
+ (("/sbin/ldconfig")
+ (which "true")))
+ ;; Make Python bindings use rpath.
+ (substitute* "Bindings/Python/setup.py.in"
+ (("extra_compile_args =")
+ (string-append "extra_link_args = ['-Wl,-rpath="
+ (assoc-ref outputs "out")
+ "/lib'], "
+ "extra_compile_args = ")))
+ #t)))))
+ (native-inputs
+ `(("clisp" ,clisp)
+ ("cython" ,python-cython)
+ ("doxygen" ,doxygen)
+ ("gettext" ,gettext-minimal)
+ ("java" ,icedtea "jdk")
+ ;; ("linuxdoc" ,linuxdoc-tools)
+ ("ocaml" ,ocaml)
+ ("ocamlfind" ,ocaml-findlib)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)
+ ("tcl" ,tcl)))
+ (inputs
+ `(("alsa" ,alsa-lib)
+ ("atspi2" ,at-spi2-core)
+ ("bluez" ,bluez)
+ ("dbus" ,dbus)
+ ("espeak" ,espeak)
+ ("espeak-ng" ,espeak-ng)
+ ("expat" ,expat)
+ ("festival" ,festival)
+ ("flite" ,flite)
+ ("glib" ,glib)
+ ("gpm" ,gpm)
+ ("iconv" ,libiconv)
+ ("icu" ,icu4c)
+ ("libbraille" ,libbraille)
+ ("libpcre2" ,pcre2)
+ ("linux-headers" ,linux-libre-headers)
+ ("louis" ,liblouis)
+ ("ncurses" ,ncurses)
+ ("polkit" ,polkit)
+ ("speech-dispatcher" ,speech-dispatcher)
+ ("util-linux" ,util-linux)
+ ("util-linux:lib" ,util-linux "lib")
+ ("x11" ,libx11)
+ ("xaw" ,libxaw)
+ ("xaw3d" ,libxaw3d)
+ ("xext" ,libxext)
+ ("xfixes" ,libxfixes)
+ ("xt" ,libxt)
+ ("xtst" ,libxtst)))
+ (synopsis "Braille TTY")
+ (description "BRLTTY is a background process (daemon) which provides access
+to the Linux/Unix console (when in text mode) for a blind person using a
+refreshable braille display. It drives the braille display, and provides
+complete screen review functionality. Some speech capability has also been
+incorporated.")
+ (home-page "https://brltty.app/")
+ (license license:lgpl2.1+)))
+
(define-public florence
(package
(name "florence")
--
2.28.0
[-- Attachment #1.1.8: 0051-gnu-orca-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 5110 bytes --]
From bc48bf8cefc9ac9de327e978e8e50765dafcf772 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 02:46:28 -0400
Subject: [PATCH 51/65] gnu: orca: Update package definition.
* gnu/packages/gnome.scm (orca) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "help".
[arguments]<#:configure-flags>[--with-help-dir]: New flag.
<#:phases>['qualify-xkbcomp]: Remove phase.
['wrap-orca]: Modify phase.
[inputs]: Add atk, at-spi2-core, brltty, liblouis and python-setproctitle.
Remove gsettings-desktop-schemas, gst-plugins-base, gst-plugins-good and
xkbcomp.
[synopsis]: Modify.
[description]: Modify.
---
gnu/packages/gnome.scm | 65 +++++++++++++++++++++---------------------
1 file changed, 32 insertions(+), 33 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index eb447503b0..abf1f36b53 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -72,6 +72,7 @@
(define-module (gnu packages gnome)
#:use-module (gnu packages)
+ #:use-module (gnu packages accessibility)
#:use-module (gnu packages admin)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
@@ -11879,27 +11880,27 @@ accessibility infrastructure.")
(define-public orca
(package
(name "orca")
- (version "3.34.1")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "1q38n7hyshkiszmn361skxjynxr31lcms7a1iny6d0zlpmh1vnk4"))))
+ (version "3.36.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "1x0xrcyxlvcjlqp6wcsx5d951i500079wqs04scssjzwqggy330n"))))
(build-system glib-or-gtk-build-system)
+ (outputs '("out" "help"))
(arguments
- '(#:phases
+ `(#:configure-flags
+ (list
+ (string-append "--with-help-dir="
+ (assoc-ref %outputs "help")
+ "/share/help"))
+ #:phases
(modify-phases %standard-phases
- (add-before 'configure 'qualify-xkbcomp
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((xkbcomp (string-append
- (assoc-ref inputs "xkbcomp") "/bin/xkbcomp")))
- (substitute* "src/orca/orca.py"
- (("'xkbcomp'") (format #f "'~a'" xkbcomp))))
- #t))
(add-after 'install 'wrap-orca
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -11907,35 +11908,33 @@ accessibility infrastructure.")
(wrap-program prog
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH")))
- `("GST_PLUGIN_SYSTEM_PATH" ":" prefix
- (,(getenv "GST_PLUGIN_SYSTEM_PATH")))
`("PYTHONPATH" ":" prefix
(,(getenv "PYTHONPATH")))))
#t)))))
(native-inputs
- `(("intltool" ,intltool)
+ `( ;; ("docbook-utils" ,docbook-utils)
+ ("intltool" ,intltool)
("itstool" ,itstool)
("pkg-config" ,pkg-config)
("xmllint" ,libxml2)))
(inputs
- `(("at-spi2-atk" ,at-spi2-atk)
- ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ `(("atk" ,atk)
+ ("at-spi2-atk" ,at-spi2-atk)
+ ("at-spi2-core" ,at-spi2-core)
("gstreamer" ,gstreamer)
- ("gst-plugins-base" ,gst-plugins-base)
- ("gst-plugins-good" ,gst-plugins-good)
("gtk+" ,gtk+)
+ ("liblouis" ,liblouis)
("python" ,python)
+ ("python-brlapi" ,brltty)
+ ("python-louis" ,liblouis "louis")
("python-pygobject" ,python-pygobject)
("python-pyatspi" ,python-pyatspi)
- ("python-speechd" ,speech-dispatcher)
- ("xkbcomp" ,xkbcomp)))
- (synopsis
- "Screen reader for individuals who are blind or visually impaired")
+ ("python-setproctitle" ,python-setproctitle)
+ ("python-speechd" ,speech-dispatcher)))
+ (synopsis "Screen reader for GNOME")
+ (description "Orca is a flexible and extensible screen reader that provides
+access to the graphical desktop via speech and refreshable braille.")
(home-page "https://wiki.gnome.org/Projects/Orca")
- (description
- "Orca is a screen reader that provides access to the graphical desktop
-via speech and refreshable braille. Orca works with applications and toolkits
-that support the Assistive Technology Service Provider Interface (AT-SPI).")
(license license:lgpl2.1+)))
(define-public gspell
--
2.28.0
[-- Attachment #1.1.9: 0052-gnu-gst-editing-services-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 4712 bytes --]
From 1e7b17a569017bd57236c62b2682d32493aa3414 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 17:54:31 -0400
Subject: [PATCH 52/65] gnu: gst-editing-services: Update package definition.
* gnu/packages/gstreamer.scm (gst-editing-services): Update package
definition.
[outputs]: New output "doc".
[arguments]<#:glib-or-gtk?>: New argument.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Add docbook-xml, gobject-introspection and gtk-doc.
Remove gst-plugins-good. Change python to python-wrapper. Move gst-plugins-bad
to ...
[inputs]: ... here. Add glib, gstreamer and gtk+.
[synopsis]: Modify.
[description]: Modify.
[license]: Modify.
---
gnu/packages/gstreamer.scm | 75 ++++++++++++++++++++++++++------------
1 file changed, 51 insertions(+), 24 deletions(-)
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index b39113bea2..6c4b04fe89 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -994,36 +994,63 @@ decoders, muxers, and demuxers provided by FFmpeg.")
(package
(name "gst-editing-services")
(version "1.16.2")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://gstreamer.freedesktop.org/src/" name "/"
- "gstreamer-editing-services-" version ".tar.xz"))
- (sha256
- (base32
- "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc1hf"))))
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://gstreamer.freedesktop.org/src/" name "/"
+ "gstreamer-editing-services-" version ".tar.xz"))
+ (sha256
+ (base32 "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc1hf"))))
(build-system meson-build-system)
+ (outputs '("out" "doc"))
(arguments
- ;; FIXME: 16/22 failing tests.
- `(#:tests? #f
- #:phases (modify-phases %standard-phases
- ,@%common-gstreamer-phases)))
- (inputs
- `(("gst-plugins-base" ,gst-plugins-base)
- ("libxml2" ,libxml2)))
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:tests? #f ; FIXME
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "docs/libs"
+ (substitute* '("architecture.xml" "ges-docs.sgml")
+ (("http://www.oasis-open.org/docbook/xml/4.3/")
+ (string-append (assoc-ref inputs "docbook-xml-4.3")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4.1.2/")
+ (string-append (assoc-ref inputs "docbook-xml-4.1.2")
+ "/xml/dtd/docbook/"))))
+ #t))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/gtk-doc")
+ (string-append doc "/share/gtk-doc"))
+ #t))))))
(native-inputs
- `(("flex" ,flex)
- ("gst-plugins-bad" ,gst-plugins-bad)
- ("gst-plugins-good" ,gst-plugins-good)
+ `(("docbook-xml-4.1.2" ,docbook-xml-4.1.2)
+ ("docbook-xml-4.3" ,docbook-xml-4.3)
+ ("flex" ,flex)
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk-doc" ,gtk-doc)
("perl" ,perl)
("pkg-config" ,pkg-config)
- ("python" ,python)))
+ ("python" ,python-wrapper)))
+ (inputs
+ `(("glib" ,glib)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gst-plugins-base" ,gst-plugins-base)
+ ("gtk+" ,gtk+)
+ ("libxml2" ,libxml2)))
+ (synopsis "GStreamer Editing Services Library")
+ (description "Gst-Editing-services is a high-level library for facilitating
+the creation of audio/video non-linear editors.")
(home-page "https://gstreamer.freedesktop.org/")
- (synopsis "GStreamer library for non-linear editors")
- (description
- "This is a high-level library for facilitating the creation of audio/video
-non-linear editors.")
- (license license:gpl2+)))
+ (license license:lgpl2.0+)))
(define-public python-gst
(package
--
2.28.0
[-- Attachment #1.1.10: 0053-gnu-rygel-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 8044 bytes --]
From f954f2cb3d59e53ed72943cb82fe0d68c8a901e8 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 18:25:19 -0400
Subject: [PATCH 53/65] gnu: rygel: Update package definition.
* gnu/packages/gnome.scm (rygel) [version]: Update to 0.38.4.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from gnu to meson.
[outputs]: New output "doc".
[arguments]<#:glib-or-gtk?>: New argument.
<#:configure-flags>[-Dapi-docs]: New flag.
[-Dsystemd-user-units-dir]: New flag.
<#:phases>['patch-docbook]: New phase.
['move-doc]: New phase.
[native-inputs]: Add docbook-xml, docbook-xsl, glib:bin, python-wrapper.
[inputs]: Change gdk-pixbuf to gdk-pixbuf+svg. Add gst-libav,
gst-plugins-bad, gst-plugins-good, gst-plugins-ugly, libxml2,
shared-mime-info and sqlite. Move libgee, gstreamer and gupnp-av to ...
[propagated-inputs]: ... here. Add glib and glib-networking.
[synopsis]: Modify.
[description]: Modify.
---
gnu/packages/gnome.scm | 130 ++++++++++++++++++++++++++++++-----------
1 file changed, 97 insertions(+), 33 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index abf1f36b53..384541db7e 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1798,52 +1798,116 @@ preview files on the GNOME desktop.")
(define-public rygel
(package
(name "rygel")
- (version "0.38.3")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "003xficqb08r1dgid20i7cn889lbfwrglpx78rjd5nkvgxbimhh8"))))
- (build-system gnu-build-system)
+ (version "0.38.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "0rm1m1z8rcvyj9873wqcz5i3qdg8j6gv6k1p01xifk0y9phg7rzc"))))
+ (build-system meson-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags
+ (list
+ "-Dapi-docs=true"
+ (string-append "-Dsystemd-user-units-dir="
+ (getcwd)))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "doc/reference"
+ (substitute* '("../man/meson.build"
+ "../man/rygel.conf.xml" "../man/rygel.xml"
+ "librygel-core/gtkdoc/librygel-core-docs.xml"
+ "librygel-core/gtkdoc/overview.xml"
+ "librygel-db/gtkdoc/librygel-db-docs.xml"
+ "librygel-db/gtkdoc/overview.xml"
+ "librygel-renderer-gst/gtkdoc/implementing-renderers-gst.xml"
+ "librygel-renderer-gst/gtkdoc/librygel-renderer-gst-docs.xml"
+ "librygel-renderer-gst/gtkdoc/overview.xml"
+ "librygel-renderer/gtkdoc/implementing-renderer-plugins.xml"
+ "librygel-renderer/gtkdoc/implementing-renderers.xml"
+ "librygel-renderer/gtkdoc/librygel-renderer-docs.xml"
+ "librygel-renderer/gtkdoc/overview.xml"
+ "librygel-server/gtkdoc/implementing-media-engines.xml"
+ "librygel-server/gtkdoc/implementing-server-plugins.xml"
+ "librygel-server/gtkdoc/implementing-servers.xml"
+ "librygel-server/gtkdoc/librygel-server-docs.xml"
+ "librygel-server/gtkdoc/overview.xml")
+ (("http://docbook.sourceforge.net/release/xsl/current")
+ (string-append (assoc-ref inputs "docbook-xsl")
+ "/xml/xsl/docbook-xsl-"
+ ,(package-version docbook-xsl)))
+ (("http://www.oasis-open.org/docbook/xml/4.3/")
+ (string-append (assoc-ref inputs "docbook-xml-4.3")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4.5/")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/"))))
+ #t))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/gtk-doc")
+ (string-append doc "/share/gtk-doc"))
+ #t))))))
(native-inputs
- `(("gettext" ,gettext-minimal)
+ `(("docbook-xml" ,docbook-xml)
+ ("docbook-xml-4.3" ,docbook-xml-4.3)
+ ("docbook-xsl" ,docbook-xsl)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk-doc" ,gtk-doc)
("pkg-config" ,pkg-config)
- ("vala" ,vala)))
+ ("python" ,python-wrapper)
+ ("vala" ,vala)
+ ("xsltproc" ,libxslt)))
(inputs
- `(("gdk-pixbuf" ,gdk-pixbuf)
+ `(("gdk-pixbuf" ,gdk-pixbuf+svg)
("gssdp" ,gssdp)
- ("gstreamer" ,gstreamer)
+ ("gst-libav" ,gst-libav)
+ ("gst-plugins-bad" ,gst-plugins-bad)
("gst-plugins-base" ,gst-plugins-base)
+ ("gst-plugins-good" ,gst-plugins-good)
+ ("gst-plugins-ugly" ,gst-plugins-ugly)
("gtk+" ,gtk+)
("gupnp" ,gupnp)
- ("gupnp-av" ,gupnp-av)
("gupnp-dlna" ,gupnp-dlna)
- ("libgee" ,libgee)
("libmediaart" ,libmediaart)
("libsoup" ,libsoup)
- ("libxslt" ,libxslt)
- ("libunistring" ,libunistring)
- ("tracker" ,tracker)))
- (synopsis "Share audio, video, and pictures with other devices")
- (description
- "Rygel is a home media solution (@dfn{UPnP AV MediaServer and
-MediaRenderer}) for GNOME that allows you to easily share audio, video, and
-pictures, and to control a media player on your home network.
-
-Rygel achieves interoperability with other devices by trying to conform to the
-strict requirements of DLNA and by converting media on-the-fly to formats that
-client devices can handle.")
+ ("libxml2" ,libxml2)
+ ("shared-mime-info" ,shared-mime-info)
+ ("sqlite" ,sqlite)
+ ("tracker" ,tracker)
+ ("unistring" ,libunistring)))
+ (propagated-inputs
+ `(("gee" ,libgee)
+ ("glib" ,glib)
+ ("glib-networking" ,glib-networking)
+ ("gstreamer" ,gstreamer)
+ ("gupnp-av" ,gupnp-av)))
+ (synopsis "Home media solution")
+ (description "Rygel is a UPnP AV MediaServer that allows you to easily share
+audio, video and pictures to other devices. Additionally, media player software
+may use Rygel to become a MediaRenderer that may be controlled remotely by a
+UPnP or DLNA Controller.")
(home-page "https://wiki.gnome.org/Projects/Rygel")
- (license (list
- ;; For logo (data/icons/*).
- license:cc-by-sa3.0
- ;; For all others.
- license:lgpl2.1+))))
+ (license
+ (list
+ ;; Logo
+ license:cc-by-sa3.0
+ ;; Others
+ license:lgpl2.1+))))
(define-public libnma
(package
--
2.28.0
[-- Attachment #1.1.11: 0054-gnu-simple-scan-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 3920 bytes --]
From 73ff96465270910b93fa2f4d6be84799e1f6fee0 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 19:07:31 -0400
Subject: [PATCH 54/65] gnu: simple-scan: Update package definition.
* gnu/packages/gnome.scm (simple-scan) [version]: Update to 3.36.4.
[source]<origin>[sha256]: Modify base32.
[outputs]: New output "help".
[arguments]<#:phases>['move-help]: New phase.
[inputs]: Add glib, libwebp and packagekit. Change gdk-pixbuf to
gdk-pixbuf+svg.
[synopsis]: Modify.
[description]: Modify.
---
gnu/packages/gnome.scm | 57 ++++++++++++++++++++++++++----------------
1 file changed, 35 insertions(+), 22 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 384541db7e..a58eff03ad 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7675,41 +7675,54 @@ USB transfers with your high-level application or system daemon.")
(define-public simple-scan
(package
(name "simple-scan")
- (version "3.36.3")
+ (version "3.36.4")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/simple-scan/"
- (version-major+minor version) "/"
- "simple-scan-" version ".tar.xz"))
+ (uri
+ (string-append "mirror://gnome/sources/simple-scan/"
+ (version-major+minor version) "/"
+ "simple-scan-" version ".tar.xz"))
(sha256
- (base32 "0gsz7jqk0fdj0mama3cnss9i1adw18cpdnlcjcjh4r5qijmvx0vh"))))
+ (base32 "09gmzrlljdqkj3w6wa1c27wypy6j8z9dw3jzv9izfqvp38liibsn"))))
(build-system meson-build-system)
- ;; TODO: Fix icons in home screen, About dialogue, and scan menu.
+ (outputs '("out" "help"))
(arguments
- '(#:glib-or-gtk? #t))
- (inputs
- `(("gtk" ,gtk+)
- ("zlib" ,zlib)
- ("cairo" ,cairo)
- ("colord" ,colord)
- ("gdk-pixbuf" ,gdk-pixbuf)
- ("gusb" ,gusb)
- ("libsane" ,sane-backends)))
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'move-help
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (help (assoc-ref outputs "help")))
+ (mkdir-p (string-append help "/share"))
+ (rename-file
+ (string-append out "/share/help")
+ (string-append help "/share/help"))
+ #t))))))
(native-inputs
`(("gettext" ,gettext-minimal)
+ ("glib" ,glib "bin")
("itstool" ,itstool)
- ("glib" ,glib "bin") ; glib-compile-schemas, etc.
("pkg-config" ,pkg-config)
("vala" ,vala)
("xmllint" ,libxml2)))
+ (inputs
+ `(("cairo" ,cairo)
+ ("colord" ,colord)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
+ ("glib" ,glib)
+ ("gtk" ,gtk+)
+ ("gusb" ,gusb)
+ ("libwebp" ,libwebp)
+ ("packagekit-glib" ,packagekit)
+ ("sane-backends" ,sane-backends)
+ ("zlib" ,zlib)))
+ (synopsis "Document scanner")
+ (description "Simple-Scan is a document scanning application for GNOME. It
+allows you to capture images using image scanners that have suitable SANE
+drivers installed.")
(home-page "https://gitlab.gnome.org/GNOME/simple-scan")
- (synopsis "Document and image scanner")
- (description
- "Document Scanner is an easy-to-use application that lets you connect your
-scanner and quickly capture images and documents in an appropriate format. It
-supports any scanner for which a suitable SANE driver is available, which is
-almost all of them.")
(license license:gpl3+)))
(define-public eolie
--
2.28.0
[-- Attachment #1.1.12: 0055-gnu-libmusicbrainz-Propagate-inputs.patch --]
[-- Type: text/x-patch, Size: 976 bytes --]
From 9716f05d24a29be16fe04994606a0e419f90c880 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 22:28:04 -0400
Subject: [PATCH 55/65] gnu: libmusicbrainz: Propagate inputs.
* gnu/packages/music.scm (libmusicbrainz) [inputs]: Change field to
propagated-inputs.
---
gnu/packages/music.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 639cf6d5f2..31bd553397 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -4447,7 +4447,7 @@ Recording Code} (ISRC) can be extracted.}")
;; (invoke "tests/mbtest")
(invoke "tests/ctest")
#t)))))
- (inputs `(("neon" ,neon)
+ (propagated-inputs `(("neon" ,neon)
("libxml2" ,libxml2)))
(native-inputs `(("pkg-config" ,pkg-config)))
(home-page "https://musicbrainz.org/doc/libmusicbrainz")
--
2.28.0
[-- Attachment #1.1.13: 0056-gnu-sushi-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 3976 bytes --]
From 18c4692b5cbc5db8c7e8968dcf54c3b7d0d603c4 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sat, 8 Aug 2020 23:32:47 -0400
Subject: [PATCH 56/65] gnu: sushi: Update package definition.
* gnu/packages/gnome.scm (sushi) [version]: Update to 3.34.0.
[source]<origin>[sha256]: Modify base32.
[arguments]<#:phases>['wrap-typelib]: Modify phase.
[inputs]: Add glib and gtk+. Replace gdk-pixbuf with gdk-pixbuf+svg.
Remove clutter, clutter-gst, clutter-gtk, libxml2 and neon.
[synopsis]: Modify.
---
gnu/packages/gnome.scm | 47 +++++++++++++++++++++---------------------
1 file changed, 23 insertions(+), 24 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index a58eff03ad..95257e72e0 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1744,55 +1744,54 @@ masses.")
(define-public sushi
(package
(name "sushi")
- (version "3.32.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "02idvqjk76lii9xyg3b1yz4rw721709bdm5j8ikjym6amcghl0aj"))))
+ (version "3.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "1zcr8wi5bgvvpb5ha1v96aiaz4vqqrsn6cvvalwzah6am85k78m8"))))
(build-system meson-build-system)
(arguments
- `(#:glib-or-gtk? #t
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:phases
(modify-phases %standard-phases
(add-after 'glib-or-gtk-wrap 'wrap-typelib
(lambda* (#:key outputs #:allow-other-keys)
- (let ((prog (string-append (assoc-ref outputs "out")
- "/bin/sushi")))
+ (let* ((prog (string-append (assoc-ref outputs "out")
+ "/bin/sushi")))
;; Put existing typelibs before sushi's deps, so as to correctly
;; infer gdk-pixbuf
(wrap-program prog
`("GI_TYPELIB_PATH" suffix (,(getenv "GI_TYPELIB_PATH"))))
#t))))))
(native-inputs
- `(("glib:bin" ,glib "bin")
- ("gettext" ,gettext-minimal)
+ `(("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
(inputs
- `(("clutter" ,clutter)
- ("clutter-gst" ,clutter-gst)
- ("clutter-gtk" ,clutter-gtk)
- ("evince" ,evince) ; For file previewing.
+ `(("epoxy" ,libepoxy)
+ ("evince" ,evince)
("freetype" ,freetype)
- ("gdk-pixbuf" ,gdk-pixbuf)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
("gjs" ,gjs)
+ ("glib" ,glib)
("gst-plugins-base" ,gst-plugins-base)
("gstreamer" ,gstreamer)
- ("gtksourceview" ,gtksourceview-3)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
("harfbuzz" ,harfbuzz)
- ("libepoxy" ,libepoxy)
("libmusicbrainz" ,libmusicbrainz)
- ("libxml2" ,libxml2)
- ("neon" ,neon)
("webkitgtk" ,webkitgtk)))
- (synopsis "File previewer for the GNOME desktop")
+ (synopsis "File previewer")
(description "Sushi is a DBus-activated service that allows applications to
preview files on the GNOME desktop.")
(home-page "https://gitlab.gnome.org/GNOME/sushi")
+ ;; With added exception clause.
(license license:gpl2+)))
(define-public rygel
--
2.28.0
[-- Attachment #1.1.14: 0057-gnu-totem-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 9736 bytes --]
From 0d43e161b7631272f0ac0bed695f18d196451eb9 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun, 9 Aug 2020 02:18:24 -0400
Subject: [PATCH 57/65] gnu: totem: Update package definition.
* gnu/packages/gnome.scm (totem): Update package definition.
[outputs]: New outputs "help" and "doc".
[arguments]<#:configure-flags>[-Dwith-plugins]: New flag.
[-Denable-gtk-doc]: New flag.
<#:phases>['patch-docbook-xml]: New phase.
['pre-check]: Modify phase.
['move-doc]: New phase.
['move-help]: New phase.
['wrap-totem]: Modify phase.
['disable-cache-generation]: Remove phase.
[native-inputs]: Add docbook-xml and gtk-doc. Move vala from ...
[inputs]: ... here. Remove adwaita-icon-theme, atk, dbus-glib, librsvg,
libsoup, libxrandr, libxtst, libxml2, libxxf86vm, lirc and xorgproto.
Replace gdk-pixbuf with gdk-pixbuf+svg. Move gtk+ and totem-pl-parser to ...
[propagated-inputs]: ... here. Add glib. Remove dconf.
[synopsis]: Modify.
[description]: Modify.
---
gnu/packages/gnome.scm | 170 ++++++++++++++++++++++-------------------
1 file changed, 90 insertions(+), 80 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 95257e72e0..9469c0a1f2 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7188,103 +7188,113 @@ Grilo's API for various multimedia content providers.")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/totem/"
- (version-major+minor version) "/"
- "totem-" version ".tar.xz"))
+ (uri
+ (string-append "mirror://gnome/sources/totem/"
+ (version-major+minor version) "/"
+ "totem-" version ".tar.xz"))
(sha256
- (base32
- "028sc6xbyi7rs884862d8f3di6zhcm0lhvlpc3r69ifzjsq9my3b"))))
+ (base32 "028sc6xbyi7rs884862d8f3di6zhcm0lhvlpc3r69ifzjsq9my3b"))))
(build-system meson-build-system)
+ (outputs '("out" "help" "doc"))
+ (arguments
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags
+ (list
+ "-Denable-easy-codec-installation=no" ; Not required in Guix
+ "-Dwith-plugins=all"
+ "-Denable-gtk-doc=true")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "docs/reference"
+ (substitute* "totem-docs.xml"
+ (("http://www.oasis-open.org/docbook/xml/4.5/")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/"))))
+ #t))
+ (add-before 'configure 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "meson_post_install.py"
+ (("gtk-update-icon-cache")
+ "true"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; Tests write to $HOME.
+ (setenv "HOME" (getcwd))
+ #t))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/gtk-doc")
+ (string-append doc "/share/gtk-doc"))
+ #t)))
+ (add-after 'move-doc 'move-help
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (help (assoc-ref outputs "help")))
+ (mkdir-p (string-append help "/share"))
+ (rename-file
+ (string-append out "/share/help")
+ (string-append help "/share/help"))
+ #t)))
+ (add-after 'move-help 'wrap-totem
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
+ (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
+ (wrap-program (string-append out "/bin/totem")
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
+ `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)))
+ (wrap-program (string-append out "/bin/totem-video-thumbnailer")
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))
+ #t)))))
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("desktop-file-utils" ,desktop-file-utils)
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("docbook-xml" ,docbook-xml)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
- ("glib:bin" ,glib "bin") ;for 'glib-mkenums'
+ ("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)
("xmllint" ,libxml2)
("xorg-server" ,xorg-server-for-tests)))
- (propagated-inputs
- `(("dconf" ,dconf)))
(inputs
- `(("gtk+" ,gtk+)
- ("gdk-pixbuf" ,gdk-pixbuf)
- ("atk" ,atk)
- ("cairo" ,cairo)
- ("dbus-glib" ,dbus-glib)
+ `(("cairo" ,cairo)
("clutter" ,clutter)
("clutter-gtk" ,clutter-gtk)
("clutter-gst" ,clutter-gst)
- ("xorgproto" ,xorgproto)
- ("libxxf86vm" ,libxxf86vm)
- ("libxtst" ,libxtst)
- ("libxrandr" ,libxrandr)
- ("libxml2" ,libxml2)
- ("libsoup" ,libsoup)
- ("libpeas" ,libpeas)
- ("librsvg" ,librsvg)
- ("lirc" ,lirc)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
("gnome-desktop" ,gnome-desktop)
+ ("grilo" ,grilo)
+ ("grilo-plugins" ,grilo-plugins)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
("gst-plugins-good" ,gst-plugins-good)
- ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
- ("adwaita-icon-theme" ,adwaita-icon-theme)
- ("python" ,python)
- ("python-pygobject" ,python-pygobject)
- ("totem-pl-parser" ,totem-pl-parser)
- ("grilo" ,grilo)
- ("grilo-plugins" ,grilo-plugins)
- ("vala" ,vala)))
- (arguments
- `(#:glib-or-gtk? #t
-
- ;; Disable automatic GStreamer plugin installation via PackageKit and
- ;; all that.
- #:configure-flags '("-D" "enable-easy-codec-installation=no"
-
- ;; Do not build .a files for the plugins, it's
- ;; completely useless. This saves 2 MiB.
- "--default-library" "shared")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'skip-gtk-update-icon-cache
- ;; Don't create 'icon-theme.cache'.
- (lambda _
- (substitute* "meson_post_install.py"
- (("gtk-update-icon-cache") "true"))
- #t))
- (add-before
- 'install 'disable-cache-generation
- (lambda _
- (setenv "DESTDIR" "/")
- #t))
- (add-before
- 'check 'pre-check
- (lambda _
- ;; Tests require a running X server.
- (system "Xvfb :1 &")
- (setenv "DISPLAY" ":1")
- #t))
- (add-after
- 'install 'wrap-totem
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
- (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
- (wrap-program (string-append out "/bin/totem")
- `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
- `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)))
- (wrap-program (string-append out "/bin/totem-video-thumbnailer")
- `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))
- #t)))))
+ ("libpeas" ,libpeas)
+ ("pygobject" ,python-pygobject)
+ ("python" ,python)))
+ (propagated-inputs
+ `(("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("totem-pl-parser" ,totem-pl-parser)))
+ (synopsis "Movie player")
+ (description "Totem is movie player for the GNOME desktop based on
+GStreamer. It features a playlist, a full-screen mode, seek and volume controls,
+as well as complete keyboard navigation. Apart from a movie player, it also
+includes a video thumbnailer.")
(home-page "https://wiki.gnome.org/Apps/Videos")
- (synopsis "Simple media player for GNOME based on GStreamer")
- (description "Totem is a simple yet featureful media player for GNOME
-which can read a large number of file formats.")
- ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
- ;; to be used and distributed together with GStreamer and Totem. See
- ;; file://COPYING in the source distribution for details.
+ ;; With added exception clause.
(license license:gpl2+)))
(define-public rhythmbox
--
2.28.0
[-- Attachment #1.1.15: 0058-gnu-wayland-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 5682 bytes --]
From ea024bd3e36c5b164c665f8836d05ccb696274f8 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun, 9 Aug 2020 07:16:35 -0400
Subject: [PATCH 58/65] gnu: wayland: Update package definition.
* gnu/packages/freedesktop.scm (wayland) [version]: Update to 1.18.0.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from gnu to meson.
[outputs]: New output "doc".
[arguments]<#:parallel-tests?>: Remove argument.
<#:phases>['patch-docbook-xml]: New phase.
['move-doc]: New phase.
[native-inputs]: Move here docbook-xml and docbook-xsl from ...
[inputs]: ... here. Move libffi to ...
[propagated-inputs]: ... here.
[synopsis]: Modify.
[description]: Modify.
[license]: Change from x11 to expat.
---
gnu/packages/freedesktop.scm | 87 +++++++++++++++++++++++++-----------
1 file changed, 62 insertions(+), 25 deletions(-)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 2357805125..975388efba 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -754,38 +754,75 @@ Python.")
(define-public wayland
(package
(name "wayland")
- (version "1.17.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://wayland.freedesktop.org/releases/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "194ibzwpdcn6fvk4xngr4bf5axpciwg2bj82fdvz88kfmjw13akj"))))
- (build-system gnu-build-system)
+ (version "1.18.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://wayland.freedesktop.org/releases/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"))))
+ (build-system meson-build-system)
+ (outputs '("out" "doc"))
(arguments
- `(#:parallel-tests? #f))
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "doc"
+ (substitute* '("man/wl_display_connect.xml"
+ "publican/sources/Architecture.xml"
+ "publican/sources/Author_Group.xml"
+ "publican/sources/Book_Info.xml"
+ "publican/sources/Client.xml"
+ "publican/sources/Compositors.xml"
+ "publican/sources/Foreword.xml"
+ "publican/sources/Introduction.xml"
+ "publican/sources/Preface.xml"
+ "publican/sources/Protocol.xml"
+ "publican/sources/Server.xml"
+ "publican/sources/Wayland.xml"
+ "publican/sources/Xwayland.xml")
+ (("http://www.oasis-open.org/docbook/xml/4.5/")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/"))
+ (("http://www.oasis-open.org/docbook/xml/4.2/")
+ (string-append (assoc-ref inputs "docbook-xml-4.2")
+ "/xml/dtd/docbook/"))))
+ #t))
+ (add-after 'install 'move-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc")))
+ (mkdir-p (string-append doc "/share"))
+ (rename-file
+ (string-append out "/share/doc")
+ (string-append doc "/share/doc"))
+ #t))))))
(native-inputs
- `(("doxygen" ,doxygen)
- ("graphviz" ,graphviz)
+ `(("docbook-xml-4.2" ,docbook-xml-4.2)
+ ("docbook-xml" ,docbook-xml)
+ ("docbook-xsl" ,docbook-xsl)
+ ("dot" ,graphviz)
+ ("doxygen" ,doxygen)
("pkg-config" ,pkg-config)
("xmlto" ,xmlto)
("xsltproc" ,libxslt)))
(inputs
- `(("docbook-xml" ,docbook-xml)
- ("docbook-xsl" ,docbook-xsl)
- ("expat" ,expat)
- ("libffi" ,libffi)
- ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
+ `(("expat" ,expat)
+ ("libxml2" ,libxml2)))
+ (propagated-inputs
+ `(("libffi" ,libffi)))
+ (synopsis "Core Wayland window system code and protocol")
+ (description "Wayland is a project to define a protocol for a compositor to
+talk to its clients as well as a library implementation of the protocol. The
+compositor can be a standalone display server running on Linux kernel
+modesetting and evdev input devices, an X application, or a wayland client
+itself. The clients can be traditional applications, X servers (rootless or
+fullscreen) or other display servers.")
(home-page "https://wayland.freedesktop.org/")
- (synopsis "Display server protocol")
- (description
- "Wayland is a protocol for a compositor to talk to its clients as well as
-a C library implementation of that protocol. The compositor can be a standalone
-display server running on Linux kernel modesetting and evdev input devices, an X
-application, or a wayland client itself. The clients can be traditional
-applications, X servers (rootless or fullscreen) or other display servers.")
- (license license:x11)))
+ (license license:expat)))
(define-public wayland-protocols
(package
--
2.28.0
[-- Attachment #1.1.16: 0059-gnu-wayland-protocols-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 2260 bytes --]
From 032db56f8ab3587d4527c56bd3f8c0901ca1f595 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun, 9 Aug 2020 07:32:10 -0400
Subject: [PATCH 59/65] gnu: wayland-protocols: Update package definition.
* gnu/packages/freedesktop.scm (wayland-protocols) [version]: Update
to 1.20.
[source]<origin>[sha256]: Modify base32.
[description]: Modify.
---
gnu/packages/freedesktop.scm | 28 ++++++++++++++++------------
1 file changed, 16 insertions(+), 12 deletions(-)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 975388efba..0064acc088 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -827,22 +827,26 @@ fullscreen) or other display servers.")
(define-public wayland-protocols
(package
(name "wayland-protocols")
- (version "1.18")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://wayland.freedesktop.org/releases/"
- "wayland-protocols-" version ".tar.xz"))
- (sha256
- (base32
- "1cvl93h83ymbfhb567jv5gzyq08181w7c46rsw4xqqqpcvkvfwrx"))))
+ (version "1.20")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://wayland.freedesktop.org/releases/"
+ "wayland-protocols-" version ".tar.xz"))
+ (sha256
+ (base32 "1rsdgvkkvxs3cjhpl6agvbkm53vm7k8rg127j9y2vn33m2hvg0lp"))))
(build-system gnu-build-system)
- (inputs
- `(("wayland" ,wayland)))
(native-inputs
`(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("wayland" ,wayland)))
(synopsis "Wayland protocols")
- (description "This package contains XML definitions of the Wayland protocols.")
+ (description "Wayland-Protocols contains Wayland protocols that add
+functionality not available in the Wayland core protocol. Such protocols either
+add completely new functionality, or extend the functionality of some other
+protocol either in Wayland core, or some other protocol in wayland-protocols.")
(home-page "https://wayland.freedesktop.org")
(license license:expat)))
--
2.28.0
[-- Attachment #1.1.17: 0060-gnu-Add-eglexternalplatform.patch --]
[-- Type: text/x-patch, Size: 3238 bytes --]
From 4a9eb027bf23e24063dd23bffa1edc3b5da6e637 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Sun, 9 Aug 2020 23:55:18 -0400
Subject: [PATCH 60/65] gnu: Add eglexternalplatform.
* gnu/packages/graphics.scm (eglexternalplatform): New variable.
---
gnu/packages/graphics.scm | 52 +++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 3a943461cc..400a2bdb41 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -91,6 +91,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
@@ -102,6 +103,57 @@
#:use-module (guix packages)
#:use-module (guix utils))
+(define-public eglexternalplatform
+ (package
+ (name "eglexternalplatform")
+ (version "1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/NVIDIA/eglexternalplatform.git")
+ (commit version)))
+ (file-name
+ (git-file-name name version))
+ (sha256
+ (base32 "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb"))))
+ (build-system copy-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-pkgconfig
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "eglexternalplatform.pc"
+ (("/usr")
+ (assoc-ref outputs "out")))
+ #t))
+ (add-after 'install 'revise
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/include/EGL"))
+ (rename-file
+ (string-append out "/interface")
+ (string-append out "/include/EGL"))
+ (mkdir-p (string-append out "/share/pkgconfig"))
+ (rename-file
+ (string-append out "/eglexternalplatform.pc")
+ (string-append out "/share/pkgconfig/eglexternalplatform.pc"))
+ (for-each delete-file-recursively
+ (list
+ (string-append out "/samples")
+ (string-append out "/COPYING")
+ (string-append out "/README.md"))))
+ #t)))))
+ (synopsis "EGL External Platform interface")
+ (description "EGLExternalPlatform is an specification of the EGL External
+Platform interface for writing EGL platforms and their interactions with modern
+window systems on top of existing low-level EGL platform implementations. This
+keeps window system implementation specifics out of EGL drivers by using
+application-facing EGL functions.")
+ (home-page "https://github.com/NVIDIA/eglexternalplatform")
+ (license license:expat)))
+
(define-public mmm
(package
(name "mmm")
--
2.28.0
[-- Attachment #1.1.18: 0061-gnu-Add-egl-wayland.patch --]
[-- Type: text/x-patch, Size: 1807 bytes --]
From c45f292b09227203a37545a7d653852a3f1150bf Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Mon, 10 Aug 2020 00:05:11 -0400
Subject: [PATCH 61/65] gnu: Add egl-wayland.
* gnu/packages/graphics.scm (egl-wayland): New variable.
---
gnu/packages/graphics.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 400a2bdb41..f1ddbb4151 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -154,6 +154,36 @@ application-facing EGL functions.")
(home-page "https://github.com/NVIDIA/eglexternalplatform")
(license license:expat)))
+(define-public egl-wayland
+ (package
+ (name "egl-wayland")
+ (version "1.1.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/NVIDIA/egl-wayland.git")
+ (commit version)))
+ (file-name
+ (git-file-name name version))
+ (sha256
+ (base32 "09r6a69z75j3hb9751g3ap4gm1xn71aw3j7z0c7jns292cnaa76n"))))
+ (build-system meson-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("mesa" ,mesa)
+ ("wayland" ,wayland)))
+ (propagated-inputs
+ `(("eglexternalplatform" ,eglexternalplatform)))
+ (synopsis "EGLStream-based Wayland external platform")
+ (description "EGL-Wayland is an implementation of a EGL External Platform
+library to add client-side Wayland support to EGL on top of EGLDevice and
+EGLStream families of extensions.")
+ (home-page "https://github.com/NVIDIA/egl-wayland")
+ (license license:expat)))
+
(define-public mmm
(package
(name "mmm")
--
2.28.0
[-- Attachment #1.1.19: 0062-gnu-Add-mozjs-68.patch --]
[-- Type: text/x-patch, Size: 4840 bytes --]
From ae436932c96b4f9f5308580de8999cca4a56b32b Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kkebreau@posteo.net>
Date: Tue, 21 Apr 2020 11:10:24 -0400
Subject: [PATCH 62/65] gnu: Add mozjs-68.
* gnu/packages/gnuzilla.scm (mozjs-68): New variable.
---
gnu/packages/gnuzilla.scm | 84 +++++++++++++++++++++++++++++++++++++++
1 file changed, 84 insertions(+)
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 3bffe12577..4d732f92e4 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2019, 2020 Adrian Malacoda <malacoda@monarch-pass.net>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
+;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -413,6 +414,89 @@ in C/C++.")
("pkg-config" ,pkg-config)
("python" ,python-2)))))
+(define-public mozjs-68
+ ;; No releases yet at <https://archive.mozilla.org/pub/spidermonkey/releases/>.
+ ;; While we could take a snapshot of the complete mozilla-esr60 repository at
+ ;; <https://treeherder.mozilla.org/#/jobs?repo=mozilla-esr68&filter-searchStr=sm-tc>,
+ ;; we take the Debian version instead, because it is easier to work with.
+ (package
+ (inherit mozjs-60)
+ (version "68.6.0-2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://salsa.debian.org/gnome-team/mozjs68.git")
+ (commit (string-append "debian/" version))))
+ (file-name (git-file-name "mozjs" version))
+ (sha256
+ (base32
+ "1iwn19sni8pgkn2p1l4gj4skr2zvmrpl0cfgdknmvxfrvwyfb4dx"))))
+ (arguments
+ `(#:tests? #f ; FIXME: all tests pass, but then the check phase fails anyway.
+ #:test-target "check-jstests"
+ #:configure-flags
+ `("--enable-ctypes"
+ "--enable-optimize"
+ "--enable-readline"
+ "--enable-shared-js"
+ "--enable-system-ffi"
+ "--with-system-nspr"
+ "--with-system-zlib"
+ "--with-system-icu"
+ "--with-intl-api"
+ ;; This is important because without it gjs will segfault during the
+ ;; configure phase. With jemalloc only the standalone mozjs console
+ ;; will work.
+ "--disable-jemalloc"
+ ;; We must specify the clang paths manually, because otherwise the
+ ;; Mozilla build system looks in the directories returned by
+ ;; llvm-config --bindir and llvm-config --libdir, which return paths
+ ;; in the llvm package where clang is not found.
+ ,(string-append "--with-clang-path="
+ (assoc-ref %build-inputs "clang")
+ "/bin/clang")
+ ,(string-append "--with-libclang-path="
+ (assoc-ref %build-inputs "clang")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs configure-flags #:allow-other-keys)
+ ;; The configure script does not accept environment variables as
+ ;; arguments. It also must be run from a different directory,
+ ;; but not the root directory either.
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir "run-configure-from-here")
+ (chdir "run-configure-from-here")
+ (setenv "SHELL" (which "sh"))
+ (setenv "CONFIG_SHELL" (which "sh"))
+ (setenv "AUTOCONF" (string-append (assoc-ref inputs "autoconf")
+ "/bin/autoconf"))
+
+ (apply invoke "../js/src/configure"
+ (cons (string-append "--prefix=" out)
+ configure-flags))
+ #t)))
+ (add-after 'unpack 'disable-broken-tests
+ (lambda _
+ ;; This test assumes that /bin exists and contains certain
+ ;; executables.
+ (delete-file "js/src/tests/shell/os.js")
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf-2.13) ; required for "--localdir" flag to work
+ ("automake" ,automake)
+ ("which" ,which)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python)
+ ("python-2" ,python-2)
+ ("rust" ,rust)
+ ("cargo" ,rust "cargo")
+ ("rust-cbindgen" ,rust-cbindgen)
+ ("llvm" ,llvm)
+ ("clang" ,clang)))))
+
(define mozilla-compare-locales
(origin
(method hg-fetch)
--
2.28.0
[-- Attachment #1.1.20: 0063-gnu-gjs-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 3188 bytes --]
From 004c8bbf589b502dfbb36c7d33ddfc76a440ab20 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Tue, 11 Aug 2020 06:21:31 -0400
Subject: [PATCH 63/65] gnu: gjs: Update package definition.
* gnu/packages/gnome.scm (gjs) [version]: Update to 1.64.4.
[source]<origin>[sha256]: Modify base32.
[build-system]: Change from glib-or-gtk to meson.
[arguments]<#:glib-or-gtk?>: New argument.
<#:phases>['pre-check]: Modify phase.
[propagated-inputs]: Replace mozjs-60 with mozjs-68.
---
gnu/packages/gnome.scm | 25 ++++++++-----------------
1 file changed, 8 insertions(+), 17 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 9469c0a1f2..dfb65826fc 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8385,7 +8385,7 @@ configuration program to choose applications starting on login.")
(define-public gjs
(package
(name "gjs")
- (version "1.58.8")
+ (version "1.64.4")
(source
(origin
(method url-fetch)
@@ -8394,14 +8394,13 @@ configuration program to choose applications starting on login.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "10gkmxbhwpnq27db0gkn25b0gw28n05msjkzwjg3sdhpdisfpcvz"))))
- (build-system glib-or-gtk-build-system)
+ (base32 "0k6l2qc2vkws34zrgdhl57qxf0jjkar2iziz6qn4n1w7va73mk53"))))
+ (build-system meson-build-system)
(arguments
- '(#:configure-flags
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags
(list
- "--enable-code-coverage"
- "--enable-asan"
- "--enable-ubsan")
+ "-Dinstalled_tests=false")
#:phases
(modify-phases %standard-phases
(add-before
@@ -8412,17 +8411,9 @@ configuration program to choose applications starting on login.")
(setenv "DISPLAY" ":1")
;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0")
- ;; Our mozjs package does not compile the required Intl API
- ;; support for these failing tests.
- (substitute* "installed-tests/js/testLocale.js"
- ((".*toBeDefined.*") "")
- ((".*expect\\(datestr\\).*") ""))
- (substitute* "installed-tests/scripts/testCommandLine.sh"
- (("Valentín") "")
- (("☭") ""))
#t)))))
(native-inputs
- `(("dbus-launch" ,dbus)
+ `(("dbus" ,dbus)
("dconf" ,dconf)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
@@ -8440,7 +8431,7 @@ configuration program to choose applications starting on login.")
`(("cairo" ,cairo)
("glib" ,glib)
("libffi" ,libffi)
- ("mozjs" ,mozjs-60)))
+ ("mozjs" ,mozjs-68)))
(synopsis "Javascript bindings for GNOME")
(description "Gjs is a javascript binding for GNOME. It's mainly based on
spidermonkey javascript engine and the GObject introspection framework.")
--
2.28.0
[-- Attachment #1.1.21: 0064-gnu-mutter-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 11980 bytes --]
From ae30bf6af1397b1b3f7b43ab6435f637fe6d42a7 Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Mon, 10 Aug 2020 02:07:39 -0400
Subject: [PATCH 64/65] gnu: mutter: Update package definition.
* gnu/packages/gnome.scm (mutter) [version]: Update to 3.36.4.
[source]<origin>[sha256]: Modify base32.
[arguments]<#:configure-flags>[-Dgles2_libname]: New flag.
[-Degl_device]: New flag.
[-Dwayland_eglstream]: New flag.
[-Dinstalled_tests]: New flag.
[-Dxwayland_grab_default_access_rules]: New flag.
[-Dxwayland_initfd]: New flag.
[-Dc_link_args]: Modify flag.
<#:phases>['fix-build-with-mesa-20]: Remove phase.
[native-inputs]: Add adwaita-icon-theme, python-wrapper and ruby.
Remove autoconf, automake and libtool.
[propagated-inputs]: Add graphene, wayland and libxi. Remove xinput.
Move gdk-pixbuf+svg, libinput, eudev, libxcomposite, libxdamage, libxext,
libxkbcommon and libxrandr to ...
[inputs]: ... here. Add dbus, freetype, fribidi, libdrm, sysprof, egl-wayland,
wayland-protocols, libxau, libxcb, libxcursor, libxinerama and libxrender.
Remove zenity.
[synopsis]: Modify.
[description]: Modify.
[home-page]: Modify.
---
gnu/packages/gnome.scm | 216 +++++++++++++++++++++++------------------
1 file changed, 122 insertions(+), 94 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index dfb65826fc..b9689876df 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -118,6 +118,7 @@
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages geo)
#:use-module (gnu packages gperf)
+ #:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gsasl)
#:use-module (gnu packages gstreamer)
@@ -8618,114 +8619,141 @@ in commandline and shell scripts.")
(define-public mutter
(package
(name "mutter")
- (version "3.34.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "0b8bz5kvs7rlwvqsg87cf6jhrrj95vgd1l235mjx8rip35ipfvrd"))))
- ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
- ;; versions of cogl and clutter. As a result, many of the inputs,
- ;; propagated-inputs, and configure flags used in cogl and clutter are
- ;; needed here as well.
+ (version "3.36.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "0p3jglw6f2h67kwk89qz1rz23y25lip8m2mp2xshf2vrg4a930as"))))
(build-system meson-build-system)
(arguments
- '(;; XXX: All mutter tests fail with the following error:
- ;; Settings schema 'org.gnome.mutter' is not installed
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ ;; Tests are to be enabled.
#:tests? #f
- #:glib-or-gtk? #t
#:configure-flags
- ;; TODO: Enable profiler when Sysprof is packaged.
- (list "-Dprofiler=false"
- ;; Otherwise, the RUNPATH will lack the final path component.
- (string-append "-Dc_link_args=-Wl,-rpath="
- (assoc-ref %outputs "out") "/lib:"
- (assoc-ref %outputs "out") "/lib/mutter-5")
-
- ;; The following flags are needed for the bundled clutter
- (string-append "-Dxwayland_path="
- (assoc-ref %build-inputs "xorg-server-xwayland")
- "/bin/Xwayland")
-
- ;; the remaining flags are needed for the bundled cogl
- (string-append "-Dopengl_libname="
- (assoc-ref %build-inputs "mesa")
- "/lib/libGL.so"))
- #:phases (modify-phases %standard-phases
- (add-after 'unpack 'fix-build-with-mesa-20
- (lambda _
- ;; Mimic upstream commit a444a4c5f58ea516ad for
- ;; compatibility with Mesa 20. Remove for 3.36.
- (substitute* '("src/backends/meta-egl-ext.h"
- "src/backends/meta-egl.c"
- "src/backends/meta-egl.h")
- (("#include <EGL/eglext\\.h>" all)
- (string-append all "\n#include <EGL/eglmesaext.h>")))
- (substitute* "cogl/cogl/meson.build"
- (("#include <EGL/eglext\\.h>" all)
- (string-append all "\\n#include <EGL/eglmesaext.h>")))
- #t)))))
+ (list
+ (string-append "-Dopengl_libname="
+ (assoc-ref %build-inputs "mesa")
+ "/lib/libGL.so")
+ (string-append "-Dgles2_libname="
+ (assoc-ref %build-inputs "mesa")
+ "/lib/libGLESv2.so")
+ "-Degl_device=true"
+ "-Dwayland_eglstream=true"
+ "-Dinstalled_tests=false"
+ (string-append "-Dxwayland_path="
+ (assoc-ref %build-inputs "xorg-server-xwayland")
+ "/bin/Xwayland")
+ "-Dxwayland_grab_default_access_rules=gnome-boxes"
+ "-Dxwayland_initfd=enabled"
+ ;; Otherwise, the RUNPATH will lack the final path component.
+ (string-append "-Dc_link_args=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"
+ ":"
+ (assoc-ref %outputs "out")
+ "/lib/mutter-6"))))
+;; #:phases
+;; (modify-phases %standard-phases
+;; (delete 'check)
+;; (add-after 'install 'custom-check
+;; (lambda _
+;; ;; Tests require a running X server.
+;; (system "Xvfb :1 +extension GLX &")
+;; (setenv "DISPLAY" ":1")
+;; ;; Tests write to $HOME.
+;; (setenv "HOME" (getcwd))
+;; ;; Tests look for $XDG_RUNTIME_DIR.
+;; (setenv "XDG_RUNTIME_DIR" (getcwd))
+;; ;; Tests look for $XDG_DATA_DIRS.
+;; (setenv "XDG_DATA_DIRS"
+;; (string-append (getenv "XDG_DATA_DIRS")
+;; ":"
+;; (assoc-ref %outputs "out")
+;; "/share"))
+;; ;; For missing '/etc/machine-id'.
+;; (setenv "DBUS_FATAL_WARNINGS" "0")
+;; (setenv "XCURSOR_THEME" "Adwaita")
+;; (setenv "XCURSOR_PATH"
+;; (string-append (assoc-ref %build-inputs "adwaita-icon-theme")
+;; "/share"))
+;; (invoke "dbus-launch" "ninja" "test")
+;; #t)))))
(native-inputs
- `(("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
- ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+ `(("adwaita-icon-theme" ,adwaita-icon-theme)
+ ("desktop-file-utils" ,desktop-file-utils)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("pkg-config" ,pkg-config)
- ("xorg-server" ,xorg-server-for-tests)
- ;; For git build
- ("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)))
- (propagated-inputs
- `(;; libmutter.pc refers to these:
- ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
- ("gtk+" ,gtk+)
- ;; mutter-clutter-1.0.pc and mutter-cogl-1.0.pc refer to these:
- ("atk" ,atk)
- ("cairo" ,cairo)
- ("gdk-pixbuf" ,gdk-pixbuf)
- ("glib" ,glib)
- ("json-glib" ,json-glib)
- ("libinput" ,libinput)
- ("libx11" ,libx11)
- ("libxcomposite" ,libxcomposite)
- ("libxdamage" ,libxdamage)
- ("libxext" ,libxext)
- ("libxfixes" ,libxfixes)
- ("libxkbcommon" ,libxkbcommon)
- ("libxrandr" ,libxrandr)
- ("mesa" ,mesa)
- ("pango" ,pango)
- ("udev" ,eudev)
- ("xinput" ,xinput)))
+ ("python" ,python-wrapper)
+ ("ruby" ,ruby)
+ ("xorg-server" ,xorg-server-for-tests)))
(inputs
- `(("elogind" ,elogind)
+ `(("dbus" ,dbus)
+ ("freetype" ,freetype)
+ ("fribidi" ,fribidi)
+ ("gdk-pixbuf" ,gdk-pixbuf+svg)
("gnome-desktop" ,gnome-desktop)
("gnome-settings-daemon" ,gnome-settings-daemon)
- ("libcanberra-gtk" ,libcanberra)
- ("libgudev" ,libgudev)
- ("libice" ,libice)
- ("libsm" ,libsm)
+ ("gudev" ,libgudev)
+ ("ice" ,libice)
+ ("libcanberra" ,libcanberra)
+ ("libdrm" ,libdrm)
+ ("libelogind" ,elogind)
+ ("libinput" ,libinput)
+ ("libpipewire" ,pipewire)
+ ("libstartup-notification" ,startup-notification)
+ ("libudev" ,eudev)
("libwacom" ,libwacom)
- ("libxkbfile" ,libxkbfile)
- ("libxrandr" ,libxrandr)
- ("libxtst" ,libxtst)
- ("pipewire" ,pipewire)
- ("startup-notification" ,startup-notification)
- ("upower-glib" ,upower)
+ ("sm" ,libsm)
+ ("sysprof" ,sysprof)
+ ("upower" ,upower)
+ ("wayland-eglstream-protocols" ,egl-wayland)
+ ("wayland-protocols" ,wayland-protocols)
+ ("xau" ,libxau)
+ ("xcb" ,libxcb)
+ ("xcomposite" ,libxcomposite)
+ ("xcursor" ,libxcursor)
+ ("xdamage" ,libxdamage)
+ ("xext" ,libxext)
+ ("xinerama" ,libxinerama)
+ ("xkbcommon" ,libxkbcommon)
+ ("xkbfile" ,libxkbfile)
("xkeyboard-config" ,xkeyboard-config)
("xorg-server-xwayland" ,xorg-server-xwayland)
- ("zenity" ,zenity)))
- (synopsis "Window and compositing manager")
- (home-page "https://www.gnome.org")
- (description
- "Mutter is a window and compositing manager that displays and manages your
-desktop via OpenGL. Mutter combines a sophisticated display engine using the
-Clutter toolkit with solid window-management logic inherited from the Metacity
-window manager.")
+ ("xrandr" ,libxrandr)
+ ("xrender" ,libxrender)
+ ("xtst" ,libxtst)))
+ (propagated-inputs
+ `(("atk" ,atk)
+ ("cairo" ,cairo)
+ ("glib" ,glib)
+ ("graphene" ,graphene)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gtk+" ,gtk+)
+ ("json-glib" ,json-glib)
+ ("mesa" ,mesa)
+ ("pango" ,pango)
+ ("wayland" ,wayland)
+ ("x11" ,libx11)
+ ("xfixes" ,libxfixes)
+ ("xi" ,libxi)))
+ (synopsis "Wayland display server and X11 window manager and compositor library")
+ (description "Mutter, when used as a Wayland display server, it runs on top
+of KMS and libinput. It implements the compositor side of the Wayland core
+protocol as well as various protocol extensions. It also has functionality
+related to running X11 applications using Xwayland.
+Mutter, when used on top of Xorg, it acts as a X11 window manager and
+compositing manager.
+Mutter contains functionality related to, among other things, window management,
+window compositing, focus tracking, workspace management, keybindings and
+monitor configuration.")
+ (home-page "https://wiki.gnome.org/Projects/Mutter")
(license license:gpl2+)))
(define-public gnome-online-accounts
--
2.28.0
[-- Attachment #1.1.22: 0065-gnu-gdm-Update-package-definition.patch --]
[-- Type: text/x-patch, Size: 19315 bytes --]
From 17b9cce3c19b092225759e6a1b51e7bcf330a4ce Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Tue, 11 Aug 2020 04:36:54 -0400
Subject: [PATCH 65/65] gnu: gdm: Update package definition.
* gnu/packages/gnome.scm (gdm) [version]: Update to 3.36.3.
[source]<origin>[sha256]: Modify base32.
[patches]<search-patches>[gdm-default-session.patch]: Remove patch.
[outputs]: New output "help".
[arguments]<#:configure-flags>[--disable-static]: New flag.
[--enable-gdm-xsession]: New flag.
[--enable-ipv6]: New flag.
[--with-help-dir]: New flag.
[--with-systemdsystemunitdir]: New flag.
[--with-default-path]: Modify flag.
[--with-xevie]: New flag.
[--without-plymouth]: Remove flag.
[--localstatedir]: Remove flag.
[--sbindir]: Remove flag.
<#:phases>['pre-configure]: Modify phase.
['install-placeholder-desktop-entry]: Remove phase.
['link-autostart-files]: Remove phase.
[native-inputs]: Add check.
[inputs]: Add glib, audit, keyutils, libice, libselinux, plymouth,
tcp-wrappers, libx11, libxau, libxcb, libxdmcp, libext and libxinerama.
Remove check.
[synopsis]: Modify.
[description]: Modify.
* gnu/packages/patches/gdm-default-session.patch: Remove file.
* gnu/local.mk (gdm-default-session.patch): Remove reference.
---
gnu/local.mk | 1 -
gnu/packages/gnome.scm | 241 ++++++------------
.../patches/gdm-default-session.patch | 89 -------
3 files changed, 75 insertions(+), 256 deletions(-)
delete mode 100644 gnu/packages/patches/gdm-default-session.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 9ff617a1ac..ec0b6defa8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -973,7 +973,6 @@ dist_patch_DATA = \
%D%/packages/patches/gd-fix-tests-on-i686.patch \
%D%/packages/patches/gd-brect-bounds.patch \
%D%/packages/patches/gdb-hurd.patch \
- %D%/packages/patches/gdm-default-session.patch \
%D%/packages/patches/gegl-mrg.patch \
%D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b9689876df..18013f317e 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -92,6 +92,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages cpio)
#:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crypto)
#:use-module (gnu packages cups)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
@@ -9546,172 +9547,69 @@ libxml2.")
(define-public gdm
(package
(name "gdm")
- (version "3.34.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "1lyqvcwxhwxklbxn4xjswjzr6fhjix6h28mi9ypn34wdm9bzcpg8"))
- (patches (search-patches "gdm-default-session.patch"))))
+ (version "3.36.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "10byz8jwqv1qpvjj8wd36vfb8pbh9g7pchsc1gbwplf0rchbdyrv"))))
(build-system glib-or-gtk-build-system)
+ (outputs '("out" "help"))
(arguments
- '(#:configure-flags
- `("--without-plymouth"
- "--disable-systemd-journal"
-
- ;; Using --with-initial-vt=7 allows GDM to run alongside TTY 1,
- ;; instead of having to replace it (i.e., stopping the mingetty
- ;; service for TTY 1 before starting GDM).
- "--with-initial-vt=7"
-
- ;; Use '/etc/environment' for locale settings instead of the
- ;; systemd-specific '/etc/locale.conf'.
- "--with-lang-file=/etc/environment"
-
- ,(string-append "--with-udevdir="
- (assoc-ref %outputs "out") "/lib/udev")
-
- "--localstatedir=/var"
- ,(string-append "--with-default-path="
- (string-join '("/run/setuid-programs"
- "/run/current-system/profile/bin"
- "/run/current-system/profile/sbin")
- ":"))
- ;; Put GDM in bindir so that glib-or-gtk-build-system wraps the
- ;; XDG_DATA_DIRS so that it finds its schemas.
- "--sbindir" ,(string-append (assoc-ref %outputs "out") "/bin"))
+ `(#:configure-flags
+ (list
+ "--disable-static"
+ "--enable-gdm-xsession"
+ "--disable-systemd-journal"
+ "--enable-ipv6"
+ (string-append "--with-help-dir="
+ (assoc-ref %outputs "help")
+ "/share/help")
+ (string-append "--with-udevdir="
+ (assoc-ref %outputs "out")
+ "/lib/udev")
+ (string-append "--with-systemdsystemunitdir="
+ (getcwd))
+ (string-append "--with-default-path="
+ "/run/setuid-programs"
+ ":"
+ "/run/current-system/profile/bin"
+ ":"
+ "/run/current-system/profile/sbin")
+ "--with-lang-file=/etc/environment"
+ "--with-xevie"
+ "--with-initial-vt=7")
#:phases
(modify-phases %standard-phases
- (add-before
- 'configure 'pre-configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; We don't have <systemd/sd-daemon.h>.
- (substitute* '("common/gdm-log.c"
- "daemon/gdm-server.c"
- "daemon/gdm-session-worker.c"
- "daemon/gdm-session-worker-job.c")
- (("#include <systemd/sd-daemon\\.h>") ""))
- ;; Use elogind for sd-login.
- (substitute* '("common/gdm-common.c"
- "daemon/gdm-local-display-factory.c"
- "daemon/gdm-manager.c"
- "libgdm/gdm-user-switching.c")
- (("#include <systemd/sd-login\\.h>")
- "#include <elogind/sd-login.h>"))
- ;; Check for elogind.
- (substitute* '("configure")
- (("libsystemd")
- "libelogind"))
- ;; Look for system-installed sessions in
- ;; /run/current-system/profile/share.
- (substitute* '("libgdm/gdm-sessions.c"
- "daemon/gdm-session.c"
- "daemon/gdm-display.c"
- "daemon/gdm-launch-environment.c")
- (("DATADIR \"/x")
- "\"/run/current-system/profile/share/x")
- (("DATADIR \"/wayland")
- "\"/run/current-system/profile/share/wayland")
- (("DATADIR \"/gnome")
- "\"/run/current-system/profile/share/gnome"))
- (let ((propagate '("GDM_CUSTOM_CONF"
- "GDM_DBUS_DAEMON"
- "GDM_X_SERVER"
- "GDM_X_SESSION"
- ;; XXX: Remove this once GNOME Shell is
- ;; a dependency of GDM.
- "XDG_DATA_DIRS")))
- (substitute* "daemon/gdm-session.c"
- (("set_up_session_environment \\(self\\);")
- (apply string-append
- "set_up_session_environment (self);\n"
- (map (lambda (name)
- (string-append
- "gdm_session_set_environment_variable "
- "(self, \"" name "\","
- "g_getenv (\"" name "\"));\n"))
- propagate)))))
- ;; Find the configuration file using an environment variable.
- (substitute* '("common/gdm-settings.c")
- (("GDM_CUSTOM_CONF")
- (string-append "(g_getenv(\"GDM_CUSTOM_CONF\") != NULL"
- " ? g_getenv(\"GDM_CUSTOM_CONF\")"
- " : GDM_CUSTOM_CONF)")))
- ;; Use service-supplied path to X.
- (substitute* '("daemon/gdm-server.c")
- (("\\(X_SERVER X_SERVER_ARG_FORMAT")
- "(\"%s\" X_SERVER_ARG_FORMAT, g_getenv (\"GDM_X_SERVER\")"))
- (substitute* '("daemon/gdm-wayland-session.c"
- "daemon/gdm-x-session.c")
- (("\"dbus-daemon\"")
- "g_getenv (\"GDM_DBUS_DAEMON\")")
- (("X_SERVER")
- "g_getenv (\"GDM_X_SERVER\")")
- (("GDMCONFDIR \"/Xsession\"")
- "g_getenv (\"GDM_X_SESSION\")"))
- ;; Use an absolute path for GNOME Session.
- (substitute* "daemon/gdm-launch-environment.c"
- (("\"gnome-session\"")
- (string-append "\"" (assoc-ref inputs "gnome-session")
- "/bin/gnome-session\"")))
- ;; Do not automatically select the placeholder session.
- (substitute* "daemon/gdm-session.c"
- (("!g_str_has_suffix [(]base_name, \"\\.desktop\"[)]")
- (string-append "!g_str_has_suffix (base_name, \".desktop\") || "
- "(g_strcmp0(search_dirs[i], \""
- (assoc-ref outputs "out") "/share/gdm/BuiltInSessions/"
- "\") == 0 && "
- "g_strcmp0(base_name, \"fail.desktop\") == 0)"))
- (("g_error [(]\"GdmSession: no session desktop files installed, aborting\\.\\.\\.\"[)];")
- "{ self->fallback_session_name = g_strdup(\"fail\"); goto out; }"))
- #t))
- ;; GDM requires that there be at least one desktop entry
- ;; file. This phase installs a hidden one that simply
- ;; fails. This enables users to use GDM with a
- ;; '~/.xsession' script with no other desktop entry files.
- ;; See <https://bugs.gnu.org/35068>.
- (add-after 'install 'install-placeholder-desktop-entry
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (sessions (string-append out "/share/gdm/BuiltInSessions"))
- (fail (string-append sessions "/fail.desktop")))
- (mkdir-p sessions)
- (with-output-to-file fail
- (lambda ()
- (for-each
- display
- '("[Desktop Entry]\n"
- "Encoding=UTF-8\n"
- "Type=Application\n"
- "Name=Fail\n"
- "Comment=This session fails immediately.\n"
- "NoDisplay=true\n"
- "Exec=false\n"))))
- #t)))
- ;; GDM needs GNOME Session to run these applications. We link
- ;; their autostart files in `share/gdm/greeter/autostart'
- ;; because GDM explicitly tells GNOME Session to look there.
- ;;
- ;; XXX: GNOME Shell should be linked here too, but currently
- ;; GNOME Shell depends on GDM.
- (add-after 'install 'link-autostart-files
+ (add-before 'configure 'pre-configure
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (autostart (string-append out "/share/gdm/"
- "greeter/autostart"))
- (settings (assoc-ref inputs "gnome-settings-daemon")))
- (mkdir-p autostart)
- (with-directory-excursion autostart
- (for-each (lambda (desktop)
- (symlink desktop (basename desktop)))
- (find-files (string-append settings "/etc/xdg"))))
- #t))))))
+ ;; We don't have <systemd/sd-daemon.h>.
+ (substitute* '("common/gdm-log.c"
+ "daemon/gdm-server.c"
+ "daemon/gdm-session-worker.c"
+ "daemon/gdm-session-worker-job.c")
+ (("#include <systemd/sd-daemon\\.h>")
+ ""))
+ ;; Use elogind for sd-login.
+ (substitute* '("common/gdm-common.c"
+ "daemon/gdm-local-display-factory.c"
+ "daemon/gdm-manager.c"
+ "libgdm/gdm-user-switching.c")
+ (("#include <systemd/sd-login\\.h>")
+ "#include <elogind/sd-login.h>"))
+ ;; Check for elogind.
+ (substitute* '("configure")
+ (("libsystemd")
+ "libelogind"))
+ #t)))))
(native-inputs
- `(("dconf" ,dconf)
- ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+ `(("check" ,check)
+ ("dconf" ,dconf)
+ ("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("itstool" ,itstool)
@@ -9719,19 +9617,30 @@ libxml2.")
("xmllint" ,libxml2)))
(inputs
`(("accountsservice" ,accountsservice)
- ("check" ,check) ; for testing
("elogind" ,elogind)
+ ("glib" ,glib)
("gnome-session" ,gnome-session)
("gnome-settings-daemon" ,gnome-settings-daemon)
("gtk+" ,gtk+)
+ ("ice" ,libice)
("iso-codes" ,iso-codes)
+ ("libaudit" ,audit)
("libcanberra" ,libcanberra)
- ("linux-pam" ,linux-pam)))
- (synopsis "Display manager for GNOME")
+ ("libkeyutils" ,keyutils)
+ ("libselinux" ,libselinux)
+ ("linux-pam" ,linux-pam)
+ ("plymouth" ,plymouth)
+ ("tcp-wrappers" ,tcp-wrappers)
+ ("x11" ,libx11)
+ ("xau" ,libxau)
+ ("xcb" ,libxcb)
+ ("xdmcp" ,libxdmcp)
+ ("xext" ,libxext)
+ ("xinerama" ,libxinerama)))
+ (synopsis "GNOME Display Manager")
+ (description "GDM is a program that manages graphical display servers and
+handles graphical user logins.")
(home-page "https://wiki.gnome.org/Projects/GDM/")
- (description
- "GNOME Display Manager is a system service that is responsible for
-providing graphical log-ins and managing local and remote displays.")
(license license:gpl2+)))
(define-public libgtop
diff --git a/gnu/packages/patches/gdm-default-session.patch b/gnu/packages/patches/gdm-default-session.patch
deleted file mode 100644
index 9ab2829cdb..0000000000
--- a/gnu/packages/patches/gdm-default-session.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-This patch ensures '.desktop' files are picked up in the system profile
-and not in the directories listed in $XDG_DATA_DIRS. The latter includes
-'gnome-session.desktop', which should be used if it's in
-/run/current-system/profile, and only then.
-
-Fixes <https://bugs.gnu.org/37831>.
-
-diff -ur a/daemon/gdm-session.c b/daemon/gdm-session.c
---- a/daemon/gdm-session.c 2019-09-25 10:40:24.000000000 -0400
-+++ b/daemon/gdm-session.c 2020-04-18 18:30:02.671856808 -0400
-@@ -348,24 +348,18 @@
- GArray *search_array = NULL;
- char **search_dirs;
- int i;
-- const gchar * const *system_data_dirs = g_get_system_data_dirs ();
-
- static const char *x_search_dirs[] = {
- "/etc/X11/sessions/",
- DMCONFDIR "/Sessions/",
- DATADIR "/gdm/BuiltInSessions/",
-- DATADIR "/xsessions/",
-+ "/run/current-system/profile/share/xsessions/"
- };
-
- static const char *wayland_search_dir = DATADIR "/wayland-sessions/";
-
- search_array = g_array_new (TRUE, TRUE, sizeof (char *));
-
-- for (i = 0; system_data_dirs[i]; i++) {
-- gchar *dir = g_build_filename (system_data_dirs[i], "xsessions", NULL);
-- g_array_append_val (search_array, dir);
-- }
--
- g_array_append_vals (search_array, x_search_dirs, G_N_ELEMENTS (x_search_dirs));
-
- #ifdef ENABLE_WAYLAND_SUPPORT
-@@ -373,16 +367,7 @@
- #ifdef ENABLE_USER_DISPLAY_SERVER
- g_array_prepend_val (search_array, wayland_search_dir);
-
-- for (i = 0; system_data_dirs[i]; i++) {
-- gchar *dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL);
-- g_array_insert_val (search_array, i, dir);
-- }
- #else
-- for (i = 0; system_data_dirs[i]; i++) {
-- gchar *dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL);
-- g_array_append_val (search_array, dir);
-- }
--
- g_array_append_val (search_array, wayland_search_dir);
- #endif
- }
-diff -ur a/libgdm/gdm-sessions.c b/libgdm/gdm-sessions.c
---- a/libgdm/gdm-sessions.c 2019-10-07 04:53:35.000000000 -0400
-+++ b/libgdm/gdm-sessions.c 2020-04-18 18:31:42.491348691 -0400
-@@ -245,19 +245,12 @@
- "/etc/X11/sessions/",
- DMCONFDIR "/Sessions/",
- DATADIR "/gdm/BuiltInSessions/",
-- DATADIR "/xsessions/",
-+ "/run/current-system/profile/share/xsessions/"
- };
-
- names_seen_before = g_hash_table_new (g_str_hash, g_str_equal);
- xorg_search_array = g_ptr_array_new_with_free_func (g_free);
-
-- const gchar * const *system_data_dirs = g_get_system_data_dirs ();
--
-- for (i = 0; system_data_dirs[i]; i++) {
-- session_dir = g_build_filename (system_data_dirs[i], "xsessions", NULL);
-- g_ptr_array_add (xorg_search_array, session_dir);
-- }
--
- for (i = 0; i < G_N_ELEMENTS (xorg_search_dirs); i++) {
- g_ptr_array_add (xorg_search_array, g_strdup (xorg_search_dirs[i]));
- }
-@@ -269,11 +262,6 @@
-
- wayland_search_array = g_ptr_array_new_with_free_func (g_free);
-
-- for (i = 0; system_data_dirs[i]; i++) {
-- session_dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL);
-- g_ptr_array_add (wayland_search_array, session_dir);
-- }
--
- for (i = 0; i < G_N_ELEMENTS (wayland_search_dirs); i++) {
- g_ptr_array_add (wayland_search_array, g_strdup (wayland_search_dirs[i]));
- }
--
2.28.0
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2020-08-11 10:40 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-06 9:13 [OUTREACHY]: Integration of desktop environments into GNU Guix Raghav Gururajan
2020-05-06 14:19 ` Ludovic Courtès
2020-05-06 15:05 ` Gábor Boskovits
2020-05-06 15:49 ` Ricardo Wurmus
2020-05-06 16:03 ` Raghav Gururajan
2020-05-06 15:52 ` sirgazil
2020-05-06 16:04 ` Raghav Gururajan
2020-05-06 17:22 ` Jan Nieuwenhuizen
2020-05-06 17:23 ` Raghav Gururajan
2020-05-20 13:34 ` Raghav Gururajan
2020-05-20 13:51 ` Pierre Neidhardt
2020-05-20 13:57 ` Raghav Gururajan
2020-05-20 14:06 ` Pierre Neidhardt
2020-05-21 9:08 ` Efraim Flashner
2020-05-22 11:18 ` Raghav Gururajan
2020-05-22 11:25 ` Raghav Gururajan
2020-05-23 14:26 ` Raghav Gururajan
2020-05-25 20:08 ` Danny Milosavljevic
2020-05-28 17:11 ` Raghav Gururajan
2020-05-28 17:10 ` Raghav Gururajan
2020-05-28 18:23 ` Danny Milosavljevic
2020-05-29 21:01 ` Raghav Gururajan
2020-05-29 23:02 ` Danny Milosavljevic
2020-05-29 20:54 ` Raghav Gururajan
2020-05-29 21:08 ` Raghav Gururajan
2020-05-30 20:30 ` Raghav Gururajan
2020-05-31 13:31 ` Danny Milosavljevic
2020-06-10 13:12 ` Raghav Gururajan
2020-06-04 18:31 ` Raghav Gururajan
2020-06-04 18:52 ` Vincent Legoll
2020-06-10 13:06 ` Raghav Gururajan
2020-06-04 18:57 ` Danny Milosavljevic
2020-06-14 13:31 ` Raghav Gururajan
2020-06-19 23:37 ` Raghav Gururajan
2020-06-24 22:40 ` Danny Milosavljevic
2020-07-04 10:37 ` Raghav Gururajan
2020-07-04 11:14 ` Raghav Gururajan
2020-07-06 1:36 ` Raghav Gururajan
2020-07-06 19:24 ` Danny Milosavljevic
2020-07-06 19:56 ` Efraim Flashner
2020-07-05 19:25 ` Danny Milosavljevic
2020-07-06 5:05 ` Raghav Gururajan
2020-07-13 13:45 ` Ludovic Courtès
2020-07-13 13:50 ` Raghav Gururajan
2020-07-16 1:21 ` Raghav Gururajan
2020-07-17 12:38 ` Danny Milosavljevic
2020-07-18 13:29 ` Raghav Gururajan
2020-07-18 14:12 ` Danny Milosavljevic
2020-07-18 19:27 ` Raghav Gururajan
2020-07-18 20:18 ` Raghav Gururajan
2020-07-19 11:43 ` Danny Milosavljevic
2020-07-19 19:21 ` Danny Milosavljevic
2020-07-19 19:22 ` Danny Milosavljevic
2020-07-20 1:54 ` Raghav Gururajan
2020-07-24 18:29 ` Raghav Gururajan
2020-07-25 8:15 ` Raghav Gururajan
2020-07-25 8:18 ` Raghav Gururajan
2020-07-25 8:24 ` Raghav Gururajan
2020-07-25 9:12 ` Raghav Gururajan
2020-07-27 16:11 ` Raghav Gururajan
2020-07-30 23:51 ` Raghav Gururajan
2020-08-02 7:32 ` Raghav Gururajan
2020-08-03 22:29 ` Danny Milosavljevic
2020-08-04 10:22 ` Raghav Gururajan
2020-08-04 22:50 ` Raghav Gururajan
2020-08-05 15:14 ` Danny Milosavljevic
2020-08-07 2:14 ` Raghav Gururajan
2020-08-09 22:28 ` Danny Milosavljevic
2020-08-11 10:38 ` Raghav Gururajan [this message]
2020-08-12 4:05 ` Raghav Gururajan
2020-08-12 4:11 ` Raghav Gururajan
2020-08-12 8:02 ` Danny Milosavljevic
2020-08-19 15:06 ` Raghav Gururajan
2020-08-22 14:48 ` Pierre Neidhardt
2020-08-24 3:18 ` Maxim Cournoyer
2020-08-14 14:24 ` [20.08.2020 Hartmut Goebel
2020-08-14 14:28 ` [20.08.2020 Raghav Gururajan
2020-06-24 11:37 ` [OUTREACHY]: Integration of desktop environments into GNU Guix Danny Milosavljevic
2020-06-25 4:04 ` Raghav Gururajan
2020-06-25 11:47 ` Danny Milosavljevic
2020-06-28 5:56 ` Raghav Gururajan
2020-06-25 11:52 ` Danny Milosavljevic
2020-05-25 19:58 ` Danny Milosavljevic
2020-05-25 20:00 ` Danny Milosavljevic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0e4a4b55-f76e-18f5-a0b5-a76f90e06ab4@disroot.org \
--to=raghavgururajan@disroot.org \
--cc=dannym@scratchpost.org \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).