@Danny Please find the attached patches.
Corrections: 1) I accidentally left out a patch for glib. I have attached as separate file. Could you please merge with glib patch while pushing to wip-desktop? Thanks. 2) There are two two patches named gst-plugins-base. One of them is gst-plugins-good. Blog Update: https://hub.disroot.org/channel/raghavgururajan?f=&cat=outreachy @Others Please find the following git log. commit 1a7ac994f1c75879adaed986d3ee9a580e1dbae8 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu Jun 11 11:30:26 2020 -0400 gnu: gst-plugins-base: Update package definition. * gnu/packages/gstreamer.scm (gst-plugins-base): Update package definition. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['disable-tests-for-armhf]: Remove phase. ['disable-failing-tests]: Remove phase. ['patch-docbook-xml]: New phase. ['pre-check]: New phase. [native-inputs]: Add docbook-xml, gettext-minimal, gobject-introspection, gsettings-desktop-schemas, perl, libxml2 and xorg-server-for-tests. [inputs]: Add bzip2, glib, glib-networking, glu, libgudev, libx11, libxdamage, libxfixes, libxext, libxshmfence, mesa and v4l-utils. Remove gst-plugins-base. [propagated-inputs]: Add gstreamer and gst-plugins-base. [synopsis]: Modify. [description]: Modify. commit 5ab9cf514339d644b1aa2620196ddc08159e29d4 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu Jun 11 08:40:14 2020 -0400 gnu: gst-plugins-base: Update package definition. * gnu/packages/gstreamer.scm (gst-plugins-base): Update package definition. [outputs]: New output 'doc'. [arguments]<#:glib-or-gtk?>: New argument. <#:configure-flags>[-Dgl]: Remove flag. [-Ddoc]: Remove flag. <#:phases>['patch]: Remove phase. ['patch-docbook-xml]: New phase. ['patch-tests]: New phase. ['pre-check]: New phase. ['move-doc]: New phase. [native-inputs]: Add docbook-xml, gettext-minimal, gtk-doc, gsettings-desktop- schemas, perl, libxml2 and xorg-server-for-tests. [inputs]: Add gdk-pixbuf+svg, glu, graphene, gtk+, iso-codes, libgudev, libjpeg- turbo, libvisual, libxshmfence, mesa, sdl and wayland. Remove arguments for opus. [propagated-inputs]: Add glib-networking. Remove arguments for orc. [synopsis]: Modify. [description]: Modify. commit fe25f5ecac3e725e1738a082aab5353643d9f990 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu Jun 11 08:12:25 2020 -0400 gnu: Add libvisual-plugins. * gnu/packages/gstreamer.scm (libvisual-plugins): New variable. commit 1cec6d61ea70139390b9298e69daa960bc5d1fd4 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu Jun 11 06:31:26 2020 -0400 gnu: Add esound. * gnu/packages/gstreamer.scm (esound): New variable. commit 7a6456c0c2203e43797f02a8198817de6739903f Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu Jun 11 04:13:59 2020 -0400 gnu: Add libvisual. * gnu/packages/gstreamer.scm (libvisual): New variable. commit 47525c79723b9556ac4044b26405291405a67a64 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Wed Jun 10 10:32:15 2020 -0400 gnu: gstreamer: Update package definition. * gnu/packages/gstreamer.scm (gstreamer): Update package definition. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['patch-dockbook-xml]: New phase. ['disable-failing-tests]: Remove phase. [native-inputs]: Add bash-completion, docbook-xml, docbook-xsl, gettext-minimal and libxml2. [inputs]: Add gmp, gsl, gtk+ and libcap. [propagated-inputs]: Add glib-networking, elfutils and libunwind. [synopsis]: Modify. [description]: Modify. commit d7152fbbd88c298109dc25bdc58d7b08d531b93f Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 10:14:45 2020 -0400 gnu: gsettings-desktop-schemas: Update package definition. * gnu/packages/gnome.scm (gsettings-desktop-schemas) [version]: Update to 3.37.1. [source]<origin>[sha256]: Modify base32. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['patch-schemas]: Remove phase. [native-inputs]: Add gettext-minimal. Remove intltool. [inputs]: Remove gnome-backgrounds. [synopsis]: Modify. commit 718f5ee403075e20dc9f9c25a0ea8e8d9a92bb13 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 09:44:44 2020 -0400 gnu: graphene: Update package definition. * gnu/packages/gtk.scm (graphene): Update package definition. [source]<origin>[method]: Change from url-fetch to git-fetch. [uri]: Add git-reference. [sha256]: Modify base32. [arguments]<#:glib-or-gtk?>: New argument. [native-inputs]: Add git-minimal and mutest. commit ee1ee05ae094010a41ca44bc15761bd8e0f54438 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 09:43:01 2020 -0400 gnu: Add mutest. * gnu/packages/check.scm (mutest): New variable. commit 1e72d7b4078c86b268ed913ce635849f6e291dd5 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 09:07:54 2020 -0400 gnu: gobject-introspection: Update package definition. * gnu/packages/glib.scm (gobject-introspection) [version]: Update to 1.64.1. [source]<origin>[sha256]: Modify base32. [patches]: Remove all patches. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>: Remove all phases. [native-inputs]: Add bison and flex. [inputs]: Remove bison, flex and zlib. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Modify. commit 6c524cb1fdfaf23a5402c9b48559f58ba9fef5d6 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 07:36:50 2020 -0400 gnu: glib-networking: Update to 2.64.3. * gnu/packages/gnome.scm (glib-networking) [version]: Update to 2.64.3. [source]<origin>[sha256]: Modify base32. commit 53e25ebe6777afb6fa47a5abf9a4de044c1350c9 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 07:29:17 2020 -0400 gnu: glib-with-documentation: Update package definition. * gnu/packages/glib.scm (glib-with-documentation): Update package definition. [properties]: Remove field. [native-inputs]: Remove libxml2. [arguments]<#:phases>['patch-docbook-xml]: New phase. ['move-doc]: Modify phase. commit 6c4c1a25fec971dc3d121212c4f116889a4d7af1 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue Jun 9 05:49:46 2020 -0400 gnu: glib: Update package definition. * gnu/packages/glib.scm (glib) [version]: Update to 2.64.3. [source]<origin>[sha256]: Modify base32. [patches]: Add glib-disable-failing-tests.patch. Remove glib-tests-timer.patch. [arguments]<#:disallowed-references>: Remove argument. <#:phases>['patch-python-references]: New phase. ['pre-check]: New phase. ['move-bin]: New phase. ['patch-dbus-launch-path]: Remove phase. ['patch-gio-launch-desktop]: Remove phase. ['pre-build]: Remove phase. ['disable-failing-tests]: Remove phase. ['check]: Remove phase. ['move-executables]: Remove phase. [native-inputs]: Add intltool, python, libxml2 and libxslt. Remove dbus. [inputs]: Add dbus and libelf. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Update to lgpl2.1+. commit 24c4a8a9d4a5ba30b630ccaebd25c069ba6bc533 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Sat Jun 6 16:10:05 2020 -0400 gnu: glib-networking: Update to 2.62.4. * gnu/packages/gnome.scm (glib-networking): Update package definition. [version]: Update to 2.62.4. [source]<origin>[sha256]: Modify base32. [arguments]<#glib-or-gtk?>: New argument. <#configure-flags>[-Dopenssl]: New flag. [-Dlibproxy_support]: Remove flag. [native-inputs]: Add glib:bin and gobject-introspection. [inputs]: Add libproxy and openssl. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Update to lgpl2.1+. commit b1da3aae5d880ef5dfda3fc044f57bbae9a8e604 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Sat Jun 6 00:05:37 2020 -0400 gnu: gjs: Update to 1.58.8. * gnu/packages/gnome.scm (gjs): Update package definition. [version]: Update to 1.58.8. [source]<origin>[sha256]: Modify base32. [build-system]: Change from gnu to glib-or-gtk. [arguments]<#:configure-flags>[--enable-code-coverage]: New flag. [--enable-asan]: New flag. [--enable-ubsan]: New flag. [native-inputs]: Add gobject-introspection and lcov. [inputs]: Add ncurses and sysprof. [propagated-inputs]: Add glib and libffi. [home-page]: Modify. [license]: Add expat and lgpl2.0+. Remove gpl2+. commit aa67f71920673e5d1267e222d93cd2b3f441d2a1 Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Fri Jun 5 22:22:56 2020 -0400 gnu: Add sysprof. * gnu/packages/gnome.scm (sysprof): New variable. commit 85eaa9727a5af735f398e8b571a47325c99ce88a Author: Raghav Gururajan <raghavgurura...@disroot.org> Date: Fri Jun 5 01:48:07 2020 -0400 gnu: geoclue: Update to 2.5.6. * gnu/packages/gnome.scm (geoclue): Update package definition. [version]: Update to 2.5.6. [source]<origin>[method]: Change from url-fetch to git-fetch. [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, glib:bin and vala. Remove libnotify and modem-manager. [inputs]: Add libnotify and modem-manager. [propagated-inputs]: Add glib. [synopsis]: Modify. [description]: Modify. Regards, RG.
From 85eaa9727a5af735f398e8b571a47325c99ce88a Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Fri, 5 Jun 2020 01:48:07 -0400 Subject: [PATCH 17/54] gnu: geoclue: Update to 2.5.6. * gnu/packages/gnome.scm (geoclue): Update package definition. [version]: Update to 2.5.6. [source]<origin>[method]: Change from url-fetch to git-fetch. [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, glib:bin and vala. Remove libnotify and modem-manager. [inputs]: Add libnotify and modem-manager. [propagated-inputs]: Add glib. [synopsis]: Modify. [description]: Modify. --- gnu/packages/gnome.scm | 65 +++++++++++++++++++++++++++++------------- 1 file changed, 45 insertions(+), 20 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ca66818de2..ba01928aa8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4345,40 +4345,65 @@ output devices.") (define-public geoclue (package (name "geoclue") - (version "2.5.5") + (version "2.5.6") (source (origin - (method url-fetch) + (method git-fetch) (uri - (string-append "https://gitlab.freedesktop.org/geoclue/geoclue/-/archive/" - version "/geoclue-" version ".tar.bz2")) + (git-reference + (url "https://gitlab.freedesktop.org/geoclue/geoclue.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "1b7jqrsn4x7mxjxj8hvb2dl2cmhrpb9vibs4rvkkanky5nsx3sai")) - (patches (search-patches "geoclue-config.patch")))) + (base32 "13fk6n4j74lvcsrg3kwbw1mkxgcr3iy9dnysmy0pclfsym8z5m5m")))) (build-system meson-build-system) + (outputs '("out" "doc")) (arguments - '(#:configure-flags (list "-Dbus-srv-user=geoclue"))) + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas + #:configure-flags + (list + "-Ddbus-srv-user=geoclue") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* '("geoclue-docs.xml" "lib/libgeoclue-docs.xml") + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (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 - `(("pkg-config" ,pkg-config) + `(("docbook-xml" ,docbook-xml-4.1.2) + ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) - ("modem-manager" ,modem-manager) - ("libnotify" ,libnotify) ("gtk-doc", gtk-doc) - ("intltool" ,intltool))) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) (inputs `(("avahi" ,avahi) - ("glib:bin" ,glib "bin") ("glib-networking" ,glib-networking) ("json-glib" ,json-glib) - ("libsoup" ,libsoup))) + ("libnotify" ,libnotify) + ("libsoup" ,libsoup) + ("modem-manager" ,modem-manager))) + (propagated-inputs + `(("glib" ,glib))) + (synopsis "Geoinformation Service") + (description "Geoclue is a D-Bus geoinformation service. The goal of the +Geoclue project is to make creating location-aware applications as simple as +possible.") (home-page "https://gitlab.freedesktop.org/geoclue/geoclue/-/wikis/home") - (synopsis "Geolocation service") - (description "Geoclue is a D-Bus service that provides location -information. The primary goal of the Geoclue project is to make creating -location-aware applications as simple as possible, while the secondary goal is -to ensure that no application can access location information without explicit -permission from user.") (license license:gpl2+))) (define-public geocode-glib -- 2.26.2
From aa67f71920673e5d1267e222d93cd2b3f441d2a1 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Fri, 5 Jun 2020 22:22:56 -0400 Subject: [PATCH 18/54] gnu: Add sysprof. * gnu/packages/gnome.scm (sysprof): New variable. --- gnu/packages/gnome.scm | 49 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ba01928aa8..91774faf7a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -258,6 +258,55 @@ Desktop. It is designed to be as simple as possible and has some unique features to enable users to create their discs easily and quickly.") (license license:gpl2+))) +(define-public sysprof + (package + (name "sysprof") + (version "3.36.0") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "024i0gzqnm79rpr4gqxdvcj6gvf82xdlcp2p1k9ikcppmi6xnw46")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas. + #:configure-flags + (list + ;; SystemD not required. + "-Dsystemdunitdir=/tmp"))) + (native-inputs + `(("desktop-file-utils" ,desktop-file-utils) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("itstool" ,itstool) + ("pkg-config" ,pkg-config) + ("xmllint" ,libxml2))) + (inputs + `(("libdazzle" ,libdazzle) + ("libunwind" ,libunwind) + ("pango" ,pango) + ("polkit" ,polkit))) + (propagated-inputs + `(("glib" ,glib) + ("gtk+" ,gtk+))) + (synopsis "Kernel based performance profiler") + (description "Sysprof is a sampling profiler that uses a kernel module to +generate stacktraces which are then interpreted by the userspace program +sysprof.") + (home-page "https://wiki.gnome.org/Apps/Sysprof") + (license + (list + ;; For newer codes. + license:gpl3+ + ;; For older codes. + license:gpl2+)))) + (define-public gnome-photos (package (name "gnome-photos") -- 2.26.2
From b1da3aae5d880ef5dfda3fc044f57bbae9a8e604 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Sat, 6 Jun 2020 00:05:37 -0400 Subject: [PATCH 19/54] gnu: gjs: Update to 1.58.8. * gnu/packages/gnome.scm (gjs): Update package definition. [version]: Update to 1.58.8. [source]<origin>[sha256]: Modify base32. [build-system]: Change from gnu to glib-or-gtk. [arguments]<#:configure-flags>[--enable-code-coverage]: New flag. [--enable-asan]: New flag. [--enable-ubsan]: New flag. [native-inputs]: Add gobject-introspection and lcov. [inputs]: Add ncurses and sysprof. [propagated-inputs]: Add glib and libffi. [home-page]: Modify. [license]: Add expat and lgpl2.0+. Remove gpl2+. --- gnu/packages/gnome.scm | 100 +++++++++++++++++++++++------------------ 1 file changed, 56 insertions(+), 44 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 91774faf7a..4145c7b57a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -85,6 +85,7 @@ #:use-module (gnu packages cdrom) #:use-module (gnu packages check) #:use-module (gnu packages cmake) + #:use-module (gnu packages code) #:use-module (gnu packages compression) #:use-module (gnu packages crates-io) #:use-module (gnu packages cups) @@ -124,6 +125,7 @@ #:use-module (gnu packages iso-codes) #:use-module (gnu packages kerberos) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libffi) #:use-module (gnu packages libunistring) #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) @@ -6369,61 +6371,71 @@ configuration program to choose applications starting on login.") (define-public gjs (package (name "gjs") - (version "1.58.3") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "1bkksx362007zs8c31ydygb29spwa5g5kch1ad2grc2sp53wv7ya")))) - (build-system gnu-build-system) + (version "1.58.8") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "10gkmxbhwpnq27db0gkn25b0gw28n05msjkzwjg3sdhpdisfpcvz")))) + (build-system glib-or-gtk-build-system) (arguments - '(#:phases + '(#:configure-flags + (list + "--enable-code-coverage" + "--enable-asan" + "--enable-ubsan") + #:phases (modify-phases %standard-phases (add-before - 'check 'pre-check - (lambda _ - ;; The test suite requires a running X server. - (system "Xvfb :1 &") - (setenv "DISPLAY" ":1") - - ;; For the missing /etc/machine-id. - (setenv "DBUS_FATAL_WARNINGS" "0") - - ;; Our mozjs-38 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))))) + 'check 'pre-check + (lambda _ + ;; The test suite requires a running X server. + (system "Xvfb :1 &") + (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 - `(("glib:bin" ,glib "bin") ; for glib-compile-resources + `(("dbus-launch" ,dbus) + ("dconf" ,dconf) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("lcov" ,lcov) ("pkg-config" ,pkg-config) - ("xmllint" ,libxml2) - ;; For testing - ("dbus-launch" ,dbus) - ("dconf" ,dconf) ; required to properly store settings ("uuidgen" ,util-linux) + ("xmllint" ,libxml2) ("xvfb" ,xorg-server-for-tests))) + (inputs + `(("gtk+" ,gtk+) + ("ncurses" ,ncurses) + ("readline" ,readline) + ("sysprof" ,sysprof))) (propagated-inputs - ;; These are all in the Requires.private field of gjs-1.0.pc. `(("cairo" ,cairo) - ("gobject-introspection" ,gobject-introspection) + ("glib" ,glib) + ("libffi" ,libffi) ("mozjs" ,mozjs-60))) - (inputs - `(("gtk+" ,gtk+) - ("readline" ,readline))) (synopsis "Javascript bindings for GNOME") - (home-page "https://live.gnome.org/Gjs") - (description - "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey -javascript engine and the GObject introspection framework.") - (license license:gpl2+))) + (description "Gjs is a javascript binding for GNOME. It's mainly based on +spidermonkey javascript engine and the GObject introspection framework.") + (home-page "https://wiki.gnome.org/Projects/Gjs") + (license + ;; The project is dual-licensed. + (list + license:expat + license:lgpl2.0+)))) (define-public gedit (package -- 2.26.2
From 24c4a8a9d4a5ba30b630ccaebd25c069ba6bc533 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Sat, 6 Jun 2020 16:10:05 -0400 Subject: [PATCH 20/54] gnu: glib-networking: Update to 2.62.4. * gnu/packages/gnome.scm (glib-networking): Update package definition. [version]: Update to 2.62.4. [source]<origin>[sha256]: Modify base32. [arguments]<#glib-or-gtk?>: New argument. <#configure-flags>[-Dopenssl]: New flag. [-Dlibproxy_support]: Remove flag. [native-inputs]: Add glib:bin and gobject-introspection. [inputs]: Add libproxy and openssl. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Update to lgpl2.1+. --- gnu/packages/gnome.scm | 49 ++++++++++++++++++++++++++---------------- 1 file changed, 30 insertions(+), 19 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 4145c7b57a..e7c83bf3eb 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3903,31 +3903,42 @@ library.") (define-public glib-networking (package (name "glib-networking") - (version "2.62.2") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/glib-networking/" - (version-major+minor version) "/" - "glib-networking-" version ".tar.xz")) - (sha256 - (base32 - "0i2mw75297ql72h47vyvff3hqa0kcmqybblj52fqrarb0kfbhi06")))) + (version "2.62.4") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/glib-networking/" + (version-major+minor version) "/" + "glib-networking-" version ".tar.xz")) + (sha256 + (base32 "1kwlnaiz4qfy2d1as5hd8sgxy7jjfxps1h2443hxq3s8xjg2i3y1")))) (build-system meson-build-system) (arguments - `(#:configure-flags '("-Dlibproxy_support=false"))) + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas + #:configure-flags + (list + "-Dopenssl=auto"))) (native-inputs - `(("pkg-config" ,pkg-config) - ("intltool" ,intltool))) + `(("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config))) (inputs `(("glib" ,glib) ("gnutls" ,gnutls) - ("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) - (home-page "https://www.gnome.org") - (synopsis "Network-related GIO modules") - (description - "This package contains various network related extensions for the GIO -library.") - (license license:lgpl2.0+))) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("libproxy" ,libproxy) + ("openssl" ,openssl))) + (synopsis "Network extensions for GLib") + (description "Glib-networking contains the implementations of certain GLib +networking features that cannot be implemented directly in GLib itself because +of their dependencies. Currently it contains GnuTLS and OpenSSL-based +implementations of GTlsBackend, a libproxy-based implementation of +GProxyResolver, GLibproxyResolver, and a GNOME GProxyResolver that uses the +proxy information from the GSettings schemas in gsettings-desktop-schemas.") + (home-page "https://wiki.gnome.org/Projects/GLib") + (license license:lgpl2.1+))) (define-public rest (package -- 2.26.2
From 6c4c1a25fec971dc3d121212c4f116889a4d7af1 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 05:49:46 -0400 Subject: [PATCH 21/54] gnu: glib: Update package definition. * gnu/packages/glib.scm (glib) [version]: Update to 2.64.3. [source]<origin>[sha256]: Modify base32. [patches]: Add glib-disable-failing-tests.patch. Remove glib-tests-timer.patch. [arguments]<#:disallowed-references>: Remove argument. <#:phases>['patch-python-references]: New phase. ['pre-check]: New phase. ['move-bin]: New phase. ['patch-dbus-launch-path]: Remove phase. ['patch-gio-launch-desktop]: Remove phase. ['pre-build]: Remove phase. ['disable-failing-tests]: Remove phase. ['check]: Remove phase. ['move-executables]: Remove phase. [native-inputs]: Add intltool, python, libxml2 and libxslt. Remove dbus. [inputs]: Add dbus and libelf. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Update to lgpl2.1+. --- gnu/packages/glib.scm | 318 +++++++++++++++--------------------------- 1 file changed, 110 insertions(+), 208 deletions(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 367179aacf..a4060e3d12 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -38,6 +38,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) + #:use-module (gnu packages elf) #:use-module (gnu packages enlightenment) #:use-module (gnu packages file) #:use-module (gnu packages flex) @@ -165,215 +166,116 @@ or through unencrypted TCP/IP suitable for use behind a firewall with shared NFS home directories.") (license license:gpl2+))) ; or Academic Free License 2.1 -(define glib +(define-public glib (package - (name "glib") - (version "2.62.6") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" - name "/" (string-take version 4) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh")) - (patches (search-patches "glib-tests-timer.patch")) - (modules '((guix build utils))) - (snippet - '(begin - (substitute* "tests/spawn-test.c" - (("/bin/sh") "sh")) - #t)))) - (build-system meson-build-system) - (outputs '("out" ; everything - "bin")) ; glib-mkenums, gtester, etc.; depends on Python - (propagated-inputs - `(("pcre" ,pcre) ; in the Requires.private field of glib-2.0.pc - ("libffi" ,libffi) ; in the Requires.private field of gobject-2.0.pc - ;; These are in the Requires.private field of gio-2.0.pc - ("util-linux" ,util-linux "lib") ;for libmount - ("libselinux" ,libselinux) - ("zlib" ,zlib))) - (native-inputs - `(("gettext" ,gettext-minimal) - ("m4" ,m4) ; for installing m4 macros - ("dbus" ,dbus) ; for GDBus tests - ("pkg-config" ,pkg-config) - ("python" ,python-wrapper) - ("perl" ,perl) ; needed by GIO tests - ("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c - (arguments - `(#:disallowed-references (,tzdata-for-tests) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-dbus-launch-path - (lambda* (#:key inputs #:allow-other-keys) - (let ((dbus (assoc-ref inputs "dbus"))) - (substitute* "gio/gdbusaddress.c" - (("command_line = g_strdup_printf \\(\"dbus-launch") - (string-append "command_line = g_strdup_printf (\"" - dbus "/bin/dbus-launch"))) - #t))) - (add-after 'unpack 'patch-gio-launch-desktop - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; See also <https://gitlab.gnome.org/GNOME/glib/issues/1633> - ;; for another future fix. - (substitute* "gio/gdesktopappinfo.c" - (("gio-launch-desktop") - (string-append out "/libexec/gio-launch-desktop"))) - #t))) - (add-before 'build 'pre-build - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; For tests/gdatetime.c. - (setenv "TZDIR" - (string-append (assoc-ref inputs "tzdata") - "/share/zoneinfo")) - - ;; Some tests want write access there. - (setenv "HOME" (getcwd)) - (setenv "XDG_CACHE_HOME" (getcwd)) - #t)) - (add-after 'unpack 'disable-failing-tests - (lambda _ - (let ((disable - (lambda (test-file test-paths) - (define pattern+procs - (map (lambda (test-path) - (cons - ;; XXX: only works for single line statements. - (format #f "g_test_add_func.*\"~a\".*" test-path) - (const ""))) - test-paths)) - (substitute test-file pattern+procs))) - (failing-tests - '(("glib/tests/thread.c" - (;; prlimit(2) returns ENOSYS on Linux 2.6.32-5-xen-amd64 - ;; as found on hydra.gnu.org, and strace(1) doesn't - ;; recognize it. - "/thread/thread4")) - - ;; This tries to find programs in FHS directories. - ("glib/tests/utils.c" - ("/utils/find-program")) - - ;; This fails because "glib/tests/echo-script" cannot be - ;; found. - ("glib/tests/spawn-singlethread.c" - ("/gthread/spawn-script")) - - ("glib/tests/timer.c" - (;; fails if compiler optimizations are enabled, which they - ;; are by default. - "/timer/stop")) - - ("gio/tests/gapplication.c" - (;; XXX: proven to be unreliable. See: - ;; <https://bugs.debian.org/756273> - ;; <http://bugs.gnu.org/18445> - "/gapplication/quit" - - ;; XXX: fails randomly for unknown reason. See: - ;; <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00215.html> - "/gapplication/local-actions")) - - ("gio/tests/contenttype.c" - (;; XXX: requires shared-mime-info. - "/contenttype/guess" - "/contenttype/guess_svg_from_data" - "/contenttype/subtype" - "/contenttype/list" - "/contenttype/icon" - "/contenttype/symbolic-icon" - "/contenttype/tree")) - - ("gio/tests/appinfo.c" - (;; XXX: requires update-desktop-database. - "/appinfo/associations")) - - ("gio/tests/desktop-app-info.c" - (;; XXX: requires update-desktop-database. - "/desktop-app-info/delete" - "/desktop-app-info/default" - "/desktop-app-info/fallback" - "/desktop-app-info/lastused" - "/desktop-app-info/search")) - - ("gio/tests/gdbus-peer.c" - (;; Requires /etc/machine-id. - "/gdbus/codegen-peer-to-peer")) - - ("gio/tests/gdbus-address-get-session.c" - (;; Requires /etc/machine-id. - "/gdbus/x11-autolaunch")) - - ("gio/tests/gsocketclient-slow.c" - (;; These tests tries to resolve "localhost", and fails. - "/socket-client/happy-eyeballs/slow" - "/socket-client/happy-eyeballs/cancellation/delayed")) - - ))) - (for-each (lambda (x) (apply disable x)) failing-tests) - #t))) - (replace 'check - (lambda _ - (setenv "MESON_TESTTHREADS" - (number->string (parallel-job-count))) - ;; Do not run tests marked as "flaky". - (invoke "meson" "test" "--no-suite" "flaky"))) - ;; TODO: meson does not permit the bindir to be outside of prefix. - ;; See https://github.com/mesonbuild/meson/issues/2561 - ;; We can remove this once meson is patched. - (add-after 'install 'move-executables - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (bin (assoc-ref outputs "bin"))) - (mkdir-p bin) - (rename-file (string-append out "/bin") - (string-append bin "/bin")) - ;; This one is an implementation detail of glib. - ;; It is wrong that that's in "/bin" in the first place, - ;; but that's what upstream is doing right now. - ;; See <https://gitlab.gnome.org/GNOME/glib/issues/1633>. - (mkdir (string-append out "/libexec")) - (rename-file (string-append bin "/bin/gio-launch-desktop") - (string-append out "/libexec/gio-launch-desktop")) - ;; Do not refer to "bindir", which points to "${prefix}/bin". - ;; We don't patch "bindir" to point to "$bin/bin", because that - ;; would create a reference cycle between the "out" and "bin" - ;; outputs. - (substitute* (list (string-append out "/lib/pkgconfig/gio-2.0.pc") - (string-append out "/lib/pkgconfig/glib-2.0.pc")) - (("bindir=\\$\\{prefix\\}/bin") "") - (("=\\$\\{bindir\\}/") "=")) - #t)))))) - ;; TODO: see above for explanation. - ;; #:configure-flags (list (string-append "--bindir=" - ;; (assoc-ref %outputs "bin") - ;; "/bin")) - - (native-search-paths - ;; This variable is not really "owned" by GLib, but several related - ;; packages refer to it: gobject-introspection's tools use it as a search - ;; path for .gir files, and it's also a search path for schemas produced - ;; by 'glib-compile-schemas'. - (list (search-path-specification - (variable "XDG_DATA_DIRS") - (files '("share"))) - ;; To load extra gio modules from glib-networking, etc. - (search-path-specification - (variable "GIO_EXTRA_MODULES") - (files '("lib/gio/modules"))))) - (search-paths native-search-paths) - (properties '((hidden? . #t))) - - (synopsis "Thread-safe general utility library; basis of GTK+ and GNOME") - (description - "GLib provides data structure handling for C, portability wrappers, -and interfaces for such runtime functionality as an event loop, threads, -dynamic loading, and an object system.") - (home-page "https://developer.gnome.org/glib/") - (license license:lgpl2.1+))) + (name "glib") + (version "2.64.3") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" + name "/" (string-take version 4) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "08pbgiv5m3rica4ydvwvpq5mrxbyswx7l1jzjc2ch52xjabvr77y")) + (patches + (search-patches "glib-disable-failing-tests.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "tests/spawn-test.c" + (("/bin/sh") "sh")) + #t)))) + (build-system meson-build-system) + (outputs '("out" "bin")) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Python references are not being patched in patch-phase of build, + ;; despite using python-wrapper as input. So we patch them manually. + (add-after 'unpack 'patch-python-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("gio/gdbus-2.0/codegen/gdbus-codegen.in" + "glib/gtester-report.in" + "gobject/glib-genmarshal.in" + "gobject/glib-mkenums.in") + (("@PYTHON@") + (string-append (assoc-ref inputs "python") + "/bin/python" + ,(version-major+minor + (package-version python))))) + #t)) + (add-before 'check 'pre-check + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; For tests/gdatetime.c. + (setenv "TZDIR" + (string-append (assoc-ref inputs "tzdata") + "/share/zoneinfo")) + ;; Some tests want write access there. + (setenv "HOME" (getcwd)) + (setenv "XDG_CACHE_HOME" (getcwd)) + #t)) + ;; Meson does not permit the bindir to be outside of prefix. + (add-after 'install 'move-bin + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (assoc-ref outputs "bin"))) + (mkdir-p bin) + (rename-file + (string-append out "/bin") + (string-append bin "/bin")) + ;; Do not refer to "bindir", which points to "${prefix}/bin". + ;; We don't patch "bindir" to point to "$bin/bin", because that + ;; would create a reference cycle between the "out" and "bin" + ;; outputs. + (substitute* + (list + (string-append out "/lib/pkgconfig/gio-2.0.pc") + (string-append out "/lib/pkgconfig/glib-2.0.pc")) + (("bindir=\\$\\{prefix\\}/bin") "") + (("=\\$\\{bindir\\}/") "=")) + #t)))))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("libintl" ,intltool) + ("m4" ,m4) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python-wrapper" ,python-wrapper) + ("python" ,python) ; For 'patch-python-references + ("tzdata" ,tzdata-for-tests) + ("xmllint" ,libxml2) + ("xsltproc" ,libxslt))) + (inputs + `(("dbus" ,dbus) + ("libelf" ,libelf))) + (propagated-inputs + `(("libffi" ,libffi) + ("libselinux" ,libselinux) + ("pcre" ,pcre) + ("util-linux" ,util-linux "lib") + ("zlib" ,zlib))) + (native-search-paths + ;; This variable is not really "owned" by GLib, but several related + ;; packages refer to it: gobject-introspection's tools use it as a search + ;; path for .gir files, and it's also a search path for schemas produced + ;; by 'glib-compile-schemas'. + (list + (search-path-specification + (variable "XDG_DATA_DIRS") + (files '("share"))) + ;; To load extra gio modules from glib-networking, etc. + (search-path-specification + (variable "GIO_EXTRA_MODULES") + (files '("lib/gio/modules"))))) + (search-paths native-search-paths) + (synopsis "Low-level core library for GNOME projects") + (description "GLib provides data structure handling for C, portability +wrappers, and interfaces for such runtime functionality as an event loop, +threads, dynamic loading, and an object system.") + (home-page "https://wiki.gnome.org/Projects/GLib") + (license license:lgpl2.1+))) (define-public glib-with-documentation ;; glib's doc must be built in a separate package since it requires gtk-doc, -- 2.26.2
From 53e25ebe6777afb6fa47a5abf9a4de044c1350c9 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 07:29:17 -0400 Subject: [PATCH 22/54] gnu: glib-with-documentation: Update package definition. * gnu/packages/glib.scm (glib-with-documentation): Update package definition. [properties]: Remove field. [native-inputs]: Remove libxml2. [arguments]<#:phases>['patch-docbook-xml]: New phase. ['move-doc]: Modify phase. --- gnu/packages/glib.scm | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index a4060e3d12..a3cf9d7cdd 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -282,27 +282,40 @@ threads, dynamic loading, and an object system.") ;; which in turn depends on glib. (package (inherit glib) - (properties (alist-delete 'hidden? (package-properties glib))) - (outputs (cons "doc" (package-outputs glib))) ; 20 MiB of GTK-Doc reference (native-inputs - `(("gtk-doc" ,gtk-doc) ; for the doc - ("docbook-xml" ,docbook-xml) - ("libxml2" ,libxml2) + `(("gtk-doc" ,gtk-doc) + ("docbook-xml-4.2" ,docbook-xml-4.2) + ("docbook-xml-4.5" ,docbook-xml) ,@(package-native-inputs glib))) + (outputs (cons "doc" (package-outputs glib))) (arguments (substitute-keyword-arguments (package-arguments glib) ((#:configure-flags flags ''()) `(cons "-Dgtk_doc=true" ,flags)) ((#:phases phases) `(modify-phases ,phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs/reference" + (substitute* '("gio/gdbus-object-manager-example/.*\\.xml" + "gio/.*\\.xml" "glib/.*\\.xml" "gobject/.*\\.xml") + (("http://www.oasis-open.org/docbook/xml/4.5/") + (string-append (assoc-ref inputs "docbook-xml-4.5") + "/xml/dtd/docbook/"))) + (substitute* "gio/gio.xml" + (("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")) (html (string-append "/share/gtk-doc"))) - (copy-recursively (string-append out html) - (string-append doc html)) - (delete-file-recursively (string-append out html)) + (mkdir-p (string-append doc "/share")) + (rename-file + (string-append out html) + (string-append doc html)) #t))))))))) (define gobject-introspection -- 2.26.2
From 6c524cb1fdfaf23a5402c9b48559f58ba9fef5d6 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 07:36:50 -0400 Subject: [PATCH 23/54] gnu: glib-networking: Update to 2.64.3. * gnu/packages/gnome.scm (glib-networking) [version]: Update to 2.64.3. [source]<origin>[sha256]: Modify base32. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e7c83bf3eb..9e63347ed4 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3903,7 +3903,7 @@ library.") (define-public glib-networking (package (name "glib-networking") - (version "2.62.4") + (version "2.64.3") (source (origin (method url-fetch) @@ -3912,7 +3912,7 @@ library.") (version-major+minor version) "/" "glib-networking-" version ".tar.xz")) (sha256 - (base32 "1kwlnaiz4qfy2d1as5hd8sgxy7jjfxps1h2443hxq3s8xjg2i3y1")))) + (base32 "0s518l4bwvdvcp51lbjqcw8g0vq18bznpf5hq2zi6a054jqhcylk")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas -- 2.26.2
From 1e72d7b4078c86b268ed913ce635849f6e291dd5 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 09:07:54 -0400 Subject: [PATCH 24/54] gnu: gobject-introspection: Update package definition. * gnu/packages/glib.scm (gobject-introspection) [version]: Update to 1.64.1. [source]<origin>[sha256]: Modify base32. [patches]: Remove all patches. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>: Remove all phases. [native-inputs]: Add bison and flex. [inputs]: Remove bison, flex and zlib. [synopsis]: Modify. [description]: Modify. [home-page]: Modify. [license]: Modify. --- gnu/packages/glib.scm | 71 +++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 40 deletions(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index a3cf9d7cdd..7533d2c302 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -318,59 +318,50 @@ threads, dynamic loading, and an object system.") (string-append doc html)) #t))))))))) -(define gobject-introspection +(define-public gobject-introspection (package (name "gobject-introspection") - (version "1.62.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" - "gobject-introspection/" (version-major+minor version) - "/gobject-introspection-" version ".tar.xz")) - (sha256 - (base32 "18lhglg9v6y83lhqzyifc1z0wrlawzrhzzxx0a3h1g7xaz97xvmi")) - (patches (search-patches - "gobject-introspection-cc.patch" - "gobject-introspection-girepository.patch" - "gobject-introspection-absolute-shlib-path.patch")))) + (version "1.64.1") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" + name "/" (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "19vz7vp10h0zj3f491yk72dp89bix6rgkzxg4qcm4d6151ksxgl0")))) (build-system meson-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'do-not-use-/usr/bin/env - (lambda _ - (substitute* "tools/g-ir-tool-template.in" - (("#!@PYTHON_CMD@") - (string-append "#!" (which "python3")))) - #t))))) - (inputs + `(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas + (native-inputs `(("bison" ,bison) ("flex" ,flex) - ("glib" ,glib) - ("python" ,python-wrapper) - ("zlib" ,zlib))) - (native-inputs - `(("glib" ,glib "bin") + ("glib" ,glib "bin") ("pkg-config" ,pkg-config))) + (inputs + `(("glib" ,glib) + ("python" ,python-wrapper))) (propagated-inputs - `(;; In practice, GIR users will need libffi when using - ;; gobject-introspection. - ("libffi" ,libffi))) + `(("libffi" ,libffi))) (native-search-paths (list (search-path-specification (variable "GI_TYPELIB_PATH") (files '("lib/girepository-1.0"))))) (search-paths native-search-paths) - (home-page "https://wiki.gnome.org/GObjectIntrospection") - (synopsis "Generate interface introspection data for GObject libraries") - (description - "GObject introspection is a middleware layer between C libraries (using -GObject) and language bindings. The C library can be scanned at compile time -and generate a metadata file, in addition to the actual native C library. Then -at runtime, language bindings can read this metadata and automatically provide -bindings to call into the C library.") - ; Some bits are distributed under the LGPL2+, others under the GPL2+ - (license license:gpl2+))) + (synopsis "GObject introspection tools and libraries") + (description "GObject introspection is a middleware layer between +C libraries (using GObject) and language bindings. The C library can be scanned +at compile time and generate metadata files, in addition to the actual native +C library. Then language bindings can read this metadata and automatically +provide bindings to call into the C library.") + (home-page "https://wiki.gnome.org/Projects/GObjectIntrospection") + (license + (list + ;; For library. + license:lgpl2.0+ + ;; For tools. + license:gpl2+)))) (define intltool (package -- 2.26.2
From ee1ee05ae094010a41ca44bc15761bd8e0f54438 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 09:43:01 -0400 Subject: [PATCH 25/54] gnu: Add mutest. * gnu/packages/check.scm (mutest): New variable. --- gnu/packages/check.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 4e50bf70d5..a53ef86c97 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -76,9 +76,32 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system go) + #:use-module (guix build-system meson) #:use-module (guix build-system python) #:use-module (guix build-system trivial)) +(define-public mutest + (package + (name "mutest") + (version "0.0.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/ebassi/mutest.git") + (commit "e6246c9"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0gdqwq6fvk06wld4rhnw5752hahrvhd69zrci045x25rwx90x26q")))) + (build-system meson-build-system) + (synopsis "Small C testing library") + (description "Mutest aims to be a small unit testing library for C projects, +with an API heavily modelled on high level Behavior-Driver Development frameworks +like Jasmine or Mocha.") + (home-page "https://ebassi.github.io/mutest/mutest.md.html") + (license license:expat))) + (define-public check (package (name "check") -- 2.26.2
From 718f5ee403075e20dc9f9c25a0ea8e8d9a92bb13 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 09:44:44 -0400 Subject: [PATCH 26/54] gnu: graphene: Update package definition. * gnu/packages/gtk.scm (graphene): Update package definition. [source]<origin>[method]: Change from url-fetch to git-fetch. [uri]: Add git-reference. [sha256]: Modify base32. [arguments]<#:glib-or-gtk?>: New argument. [native-inputs]: Add git-minimal and mutest. --- gnu/packages/gtk.scm | 38 +++++++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index ea60a3c80d..6056422b69 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -82,6 +82,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages cups) + #:use-module (gnu packages version-control) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (gnu packages xdisorg) @@ -1783,27 +1784,34 @@ Parcellite and adds bugfixes and features.") (package (name "graphene") (version "1.10.0") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ebassi/graphene/releases/" - "download/" version - "/graphene-" version ".tar.xz")) - (sha256 - (base32 "16b4hz73bnrgv5v8n96dczkd6xp9qc06lrl43zln3jnl3psrfva0")))) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/ebassi/graphene.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "14a0j1rvjlc7yhfdmhmckdmkzy4ch61qbzywdlw1xv58h23wx29p")))) (build-system meson-build-system) (arguments - `(#:configure-flags '("-Dinstalled_tests=false"))) + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas + #:configure-flags + (list + "-Dinstalled_tests=false"))) (native-inputs - `(("gobject-introspection" ,gobject-introspection) + `(("git" ,git-minimal) + ("gobject-introspection" ,gobject-introspection) + ("mutest" ,mutest) ("pkg-config" ,pkg-config))) (inputs - `(("python" ,python) - ("glib" ,glib))) - (home-page "https://ebassi.github.io/graphene/") + `(("glib" ,glib) + ("python" ,python))) (synopsis "Thin layer of graphic data types") - (description "This library provides graphic types and their relative API; -it does not deal with windowing system surfaces, drawing, scene graphs, or -input.") + (description "Graphene provides graphic types and their relative API; it +does not deal with windowing system surfaces, drawing, scene graphs, or input.") + (home-page "https://ebassi.github.io/graphene/") (license license:expat))) (define-public spread-sheet-widget -- 2.26.2
From d7152fbbd88c298109dc25bdc58d7b08d531b93f Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 10:14:45 -0400 Subject: [PATCH 27/54] gnu: gsettings-desktop-schemas: Update package definition. * gnu/packages/gnome.scm (gsettings-desktop-schemas) [version]: Update to 3.37.1. [source]<origin>[sha256]: Modify base32. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['patch-schemas]: Remove phase. [native-inputs]: Add gettext-minimal. Remove intltool. [inputs]: Remove gnome-backgrounds. [synopsis]: Modify. --- gnu/packages/gnome.scm | 47 ++++++++++++++---------------------------- 1 file changed, 16 insertions(+), 31 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9e63347ed4..e84402eb17 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1984,45 +1984,30 @@ on the GNOME Desktop with a single simple application.") (define-public gsettings-desktop-schemas (package (name "gsettings-desktop-schemas") - (version "3.34.0") + (version "3.37.1") (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "1bayr76aylawf2fhyjhv9zgk4kpv7ivrrmd80khb0h3h1wk092r8")))) + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "0fvnchxvvx7d00ffn7cx007ahgfpwa0aw5jhspl22kd9prrazi8p")))) (build-system meson-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-schemas - (lambda* (#:key inputs #:allow-other-keys) - (let ((theme (assoc-ref inputs "gnome-backgrounds"))) - (substitute* (find-files "schemas" - "\\.gschema\\.xml\\.in$") - ;; Provide the correct file name of the default GNOME - ;; background, 'adwaita-timed.xml'. - (("@datadir@/backgrounds/gnome") - (string-append theme "/share/backgrounds/gnome")) - ;; Do not reference fonts, that may not exist. - (("'Source Code Pro 10'") "'Monospace 11'")) - #t)))))) - (inputs - `(("glib" ,glib) - ("gnome-backgrounds" ,gnome-backgrounds))) + '(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas (native-inputs - `(("intltool" ,intltool) - ("glib" ,glib "bin") ; glib-compile-schemas, etc. + `(("gettext" ,gettext-minimal) + ("glib" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("pkg-config" ,pkg-config))) + (inputs + `(("glib" ,glib))) + (synopsis "Shared GSettings schemas for the GNOME desktop") + (description "Gsettings-desktop-schemas contains a collection of GSettings +schemas for settings shared by various components of the GNOME desktop.") (home-page "https://launchpad.net/gsettings-desktop-schemas") - (synopsis - "GNOME settings for various desktop components") - (description - "Gsettings-desktop-schemas contains a collection of GSettings schemas -for settings shared by various components of the GNOME desktop.") (license license:lgpl2.1+))) (define-public icon-naming-utils -- 2.26.2
From 47525c79723b9556ac4044b26405291405a67a64 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Wed, 10 Jun 2020 10:32:15 -0400 Subject: [PATCH 28/54] gnu: gstreamer: Update package definition. * gnu/packages/gstreamer.scm (gstreamer): Update package definition. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['patch-dockbook-xml]: New phase. ['disable-failing-tests]: Remove phase. [native-inputs]: Add bash-completion, docbook-xml, docbook-xsl, gettext-minimal and libxml2. [inputs]: Add gmp, gsl, gtk+ and libcap. [propagated-inputs]: Add glib-networking, elfutils and libunwind. [synopsis]: Modify. [description]: Modify. --- gnu/packages/gstreamer.scm | 105 +++++++++++++++++++++---------------- 1 file changed, 61 insertions(+), 44 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 7596796d68..6b78fc8d28 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -34,12 +34,17 @@ #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages audio) + #:use-module (gnu packages autotools) + #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages cdrom) #:use-module (gnu packages curl) #:use-module (gnu packages compression) + #:use-module (gnu packages docbook) + #:use-module (gnu packages elf) #:use-module (gnu packages flex) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) @@ -47,9 +52,12 @@ #:use-module (gnu packages graphics) #:use-module (gnu packages gtk) #:use-module (gnu packages image) + #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages maths) #:use-module (gnu packages mp3) + #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pulseaudio) @@ -110,68 +118,77 @@ arrays of data.") (version "1.16.2") (source (origin - (method url-fetch) - (uri (string-append - "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-" - version ".tar.xz")) - (sha256 - (base32 - "0kp93622y29pck8asvil1fmzf55s2gx76wv475a6izc3cwj49w73")))) + (method url-fetch) + (uri + (string-append + "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-" + version ".tar.xz")) + (sha256 + (base32 "0kp93622y29pck8asvil1fmzf55s2gx76wv475a6izc3cwj49w73")))) (build-system meson-build-system) (outputs '("out" "doc")) (arguments - `(#:phases + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas + #:phases (modify-phases %standard-phases - ;; FIXME: Since switching to the meson-build-system, two tests - ;; started failing on i686. See - ;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/499>. - ,@(if (string-prefix? "i686" (or (%current-target-system) - (%current-system))) - `((add-after 'unpack 'disable-some-tests - (lambda _ - (substitute* "tests/check/gst/gstsystemclock.c" - (("tcase_add_test \\(tc_chain, test_stress_cleanup_unschedule.*") - "") - (("tcase_add_test \\(tc_chain, test_stress_reschedule.*") - "")) - #t))) - '()) + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* '("gst/building.xml" "gst/running.xml") + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append (assoc-ref inputs "docbook-xml-4.3") + "/xml/dtd/docbook/"))) + (substitute* '("libs/gstreamer-libs-docs.sgml" + "plugins/gstreamer-plugins-docs.sgml") + (("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-docs (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) (mkdir-p (string-append doc "/share")) - (copy-recursively (string-append out "/share/gtk-doc") - (string-append doc "/share/gtk-doc")) - (delete-file-recursively (string-append out "/share/gtk-doc")) + (rename-file + (string-append out "/share/gtk-doc") + (string-append doc "/share/gtk-doc")) #t)))))) - (propagated-inputs `(("glib" ,glib))) ; required by gstreamer-1.0.pc. (native-inputs - `(("bison" ,bison) + `(("bash-completion" ,bash-completion) + ("bison" ,bison) + ("docbook-xml-4.1.2" ,docbook-xml-4.1.2) + ("docbook-xml-4.3" ,docbook-xml-4.3) + ("docbook-xsl" ,docbook-xsl) ("flex" ,flex) + ("gettext" ,gettext-minimal) ("glib" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("gtk-doc" ,gtk-doc) + ("libxml2" ,libxml2) ("perl" ,perl) ("pkg-config" ,pkg-config) ("python-wrapper" ,python-wrapper))) + (inputs + `(("gmp" ,gmp) + ("gsl" ,gsl) + ("gtk+" ,gtk+) + ("setcap" ,libcap))) + (propagated-inputs + `(("glib" ,glib) + ("glib-networking" ,glib-networking) + ("libdw" ,elfutils) + ("libunwind" ,libunwind))) (native-search-paths - (list (search-path-specification - (variable "GST_PLUGIN_SYSTEM_PATH") - (files '("lib/gstreamer-1.0"))))) + (list + (search-path-specification + (variable "GST_PLUGIN_SYSTEM_PATH") + (files '("lib/gstreamer-1.0"))))) + (synopsis "Multimedia framework core library") + (description "GStreamer is a library for constructing graphs of +media-handling components. The applications it supports range from simple +Ogg/Vorbis playback, audio/video streaming to complex audio and video +processing.") (home-page "https://gstreamer.freedesktop.org/") - (synopsis "Multimedia library") - (description - "GStreamer is a library for constructing graphs of media-handling -components. The applications it supports range from simple Ogg/Vorbis -playback, audio/video streaming to complex audio mixing and video -non-linear editing. - -Applications can take advantage of advances in codec and filter technology -transparently. Developers can add new codecs and filters by writing a -simple plugin with a clean, generic interface. - -This package provides the core library and elements.") (license license:lgpl2.0+))) (define-public gst-plugins-base -- 2.26.2
From 7a6456c0c2203e43797f02a8198817de6739903f Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu, 11 Jun 2020 04:13:59 -0400 Subject: [PATCH 29/54] gnu: Add libvisual. * gnu/packages/gstreamer.scm (libvisual): New variable. --- gnu/packages/gstreamer.scm | 68 ++++++++++++++++++++++++++++++-------- 1 file changed, 55 insertions(+), 13 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 6b78fc8d28..3d4b3bc7fb 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -29,6 +29,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix utils) @@ -63,6 +64,7 @@ #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) #:use-module (gnu packages rdf) + #:use-module (gnu packages sdl) #:use-module (gnu packages video) #:use-module (gnu packages xorg) #:use-module (gnu packages xiph) @@ -75,6 +77,46 @@ #:use-module (gnu packages assembly) #:use-module (gnu packages xml)) +(define-public libvisual + (package + (name "libvisual") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/Libvisual/libvisual.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02xwakwkqjsznc03pjlb6hcv1li1gw3r8xvyswqsm4msix5xq18a")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; The package is in a sub-dir of this repo. + (add-after 'unpack 'chdir + (lambda _ + (chdir "libvisual") + #t))))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("libintl" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("sdl" ,sdl))) ; To compile some examples and/or tests + (synopsis "Audio visualisation library") + (description "Libvisual is a library that acts as a middle layer between +applications that want audio visualisation and audio visualisation plugins.") + (home-page "http://libvisual.org/") + (license + (list + ;; Libraries. + license:lgpl2.1+ + ;; Examples and Tests. + license:gpl2+)))) + (define-public orc (package (name "orc") @@ -197,16 +239,16 @@ processing.") (version "1.16.2") (source (origin - (method url-fetch) - (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) + (method url-fetch) + (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) (build-system meson-build-system) (propagated-inputs - `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc - ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc + `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc + ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc ;; XXX: Do not enable Orc optimizations on ARM systems because ;; it leads to two test failures. @@ -214,7 +256,7 @@ processing.") ,@(if (string-prefix? "arm" (or (%current-target-system) (%current-system))) '() - `(("orc" ,orc))))) ;required by gstreamer-audio-1.0.pc + `(("orc" ,orc))))) ;required by gstreamer-audio-1.0.pc (inputs `(("cdparanoia" ,cdparanoia) ("pango" ,pango) @@ -232,10 +274,10 @@ processing.") `(("opus" ,opus)) '()))) (native-inputs - `(("pkg-config" ,pkg-config) - ("glib:bin" ,glib "bin") - ("gobject-introspection" ,gobject-introspection) - ("python-wrapper" ,python-wrapper))) + `(("pkg-config" ,pkg-config) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("python-wrapper" ,python-wrapper))) (arguments '(#:configure-flags '("-Dgl=disabled" ;; FIXME: Documentation fails to build without -- 2.26.2
From 1cec6d61ea70139390b9298e69daa960bc5d1fd4 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu, 11 Jun 2020 06:31:26 -0400 Subject: [PATCH 30/54] gnu: Add esound. * gnu/packages/gstreamer.scm (esound): New variable. --- gnu/packages/gstreamer.scm | 48 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 3d4b3bc7fb..9e566b2764 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -36,6 +36,7 @@ #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) + #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages cdrom) @@ -60,10 +61,12 @@ #:use-module (gnu packages mp3) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) #:use-module (gnu packages perl) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) #:use-module (gnu packages rdf) + #:use-module (gnu packages shells) #:use-module (gnu packages sdl) #:use-module (gnu packages video) #:use-module (gnu packages xorg) @@ -117,6 +120,51 @@ applications that want audio visualisation and audio visualisation plugins.") ;; Examples and Tests. license:gpl2+)))) +(define-public esound + (package + (name "esound") + (version "0.2.41") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.gnome.org/Archive/esound.git") + (commit "ESOUND_0_2_41"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "141jg70fim276i8k2kyypm84gy89i1k9mm4yf68mfwnybvjw1d6n")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ("gnome-common" ,gnome-common) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("tcp-wrappers" ,tcp-wrappers) + ("tcsh" ,tcsh) + ("which" ,which))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("pcaudiolib" ,pcaudiolib))) + (propagated-inputs + `(("audiofile" ,audiofile))) + (synopsis "Enlightened Sound Daemon") + (description "The Enlightened Sound Daemon mixes several audio streams for +playback by a single audio device. You can also pre-load samples, and play them +back without having to send all the data for the sound. Network transparency is +also built in, so you can play sounds on one machine, and listen to them on +another.") + (home-page "https://web.archive.org/web/20160528230227/ +http://www.tux.org/~ricdude/overview.html") + (license + (list + ;; Libraries. + license:lgpl2.0+ + ;; Others. + license:gpl2+)))) + (define-public orc (package (name "orc") -- 2.26.2
From fe25f5ecac3e725e1738a082aab5353643d9f990 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu, 11 Jun 2020 08:12:25 -0400 Subject: [PATCH 31/54] gnu: Add libvisual-plugins. * gnu/packages/gstreamer.scm (libvisual-plugins): New variable. --- gnu/packages/gstreamer.scm | 59 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 9e566b2764..2c6f478316 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -165,6 +165,65 @@ http://www.tux.org/~ricdude/overview.html") ;; Others. license:gpl2+)))) +(define-public libvisual-plugins + (package + (name "libvisual-plugins") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/Libvisual/libvisual.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02xwakwkqjsznc03pjlb6hcv1li1gw3r8xvyswqsm4msix5xq18a")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list + "--disable-gstreamer-plugin" + "--disable-corona" + "--disable-gforce" + (string-append "--with-plugins-base-dir=" (assoc-ref %outputs "out") + "/lib/libvisual-0.4")) + #:phases + (modify-phases %standard-phases + ;; The package is in a sub-dir of this repo. + (add-after 'unpack 'chdir + (lambda _ + (chdir "libvisual-plugins") + #t))))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex) + ("gettext" ,gettext-minimal) + ("libintl" ,intltool) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("esound" ,esound) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("gtk+" ,gtk+-2) + ("jack" ,jack-2) + ("libx11" ,libx11) + ("libxext" ,libxext))) + (propagated-inputs + `(("libvisual" ,libvisual))) + (native-search-paths + (list + (search-path-specification + (variable "LIBVISUAL_PLUGINS_BASE_DIR") + (files '("lib/libvisual-0.4"))))) + (search-paths native-search-paths) + (synopsis "Audio visualisation library") + (description "Libvisual is a library that acts as a middle layer between +applications that want audio visualisation and audio visualisation plugins.") + (home-page "http://libvisual.org/") + (license license:gpl2+))) + (define-public orc (package (name "orc") -- 2.26.2
From 5ab9cf514339d644b1aa2620196ddc08159e29d4 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu, 11 Jun 2020 08:40:14 -0400 Subject: [PATCH 32/54] gnu: gst-plugins-base: Update package definition. * gnu/packages/gstreamer.scm (gst-plugins-base): Update package definition. [outputs]: New output 'doc'. [arguments]<#:glib-or-gtk?>: New argument. <#:configure-flags>[-Dgl]: Remove flag. [-Ddoc]: Remove flag. <#:phases>['patch]: Remove phase. ['patch-docbook-xml]: New phase. ['patch-tests]: New phase. ['pre-check]: New phase. ['move-doc]: New phase. [native-inputs]: Add docbook-xml, gettext-minimal, gtk-doc, gsettings-desktop- schemas, perl, libxml2 and xorg-server-for-tests. [inputs]: Add gdk-pixbuf+svg, glu, graphene, gtk+, iso-codes, libgudev, libjpeg- turbo, libvisual, libxshmfence, mesa, sdl and wayland. Remove arguments for opus. [propagated-inputs]: Add glib-networking. Remove arguments for orc. [synopsis]: Modify. [description]: Modify. --- gnu/packages/gstreamer.scm | 131 ++++++++++++++++++++++++------------- 1 file changed, 85 insertions(+), 46 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 2c6f478316..5d08a423d3 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -54,6 +54,7 @@ #:use-module (gnu packages graphics) #:use-module (gnu packages gtk) #:use-module (gnu packages image) + #:use-module (gnu packages iso-codes) #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) @@ -347,61 +348,99 @@ processing.") (source (origin (method url-fetch) - (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" - name "-" version ".tar.xz")) + (uri + (string-append "https://gstreamer.freedesktop.org/src/" name "/" + name "-" version ".tar.xz")) (sha256 - (base32 - "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) + (base32 "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi")))) (build-system meson-build-system) - (propagated-inputs - `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc - ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc - - ;; XXX: Do not enable Orc optimizations on ARM systems because - ;; it leads to two test failures. - ;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/683 - ,@(if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - '() - `(("orc" ,orc))))) ;required by gstreamer-audio-1.0.pc - (inputs - `(("cdparanoia" ,cdparanoia) - ("pango" ,pango) - ("libogg" ,libogg) - ("libtheora" ,libtheora) - ("libvorbis" ,libvorbis) - ("libx11" ,libx11) - ("zlib" ,zlib) - ("libXext" ,libxext) - ("libxv" ,libxv) - ("alsa-lib" ,alsa-lib) - ;; XXX Don't build with opus on 32-bit systems: - ;; <https://bugs.gnu.org/32360> - ,@(if (target-64bit?) - `(("opus" ,opus)) - '()))) - (native-inputs - `(("pkg-config" ,pkg-config) - ("glib:bin" ,glib "bin") - ("gobject-introspection" ,gobject-introspection) - ("python-wrapper" ,python-wrapper))) + (outputs '("out" "doc")) (arguments - '(#:configure-flags '("-Dgl=disabled" - ;; FIXME: Documentation fails to build without - ;; enabling GL above, which causes other problems. - "-Ddoc=false") + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas #:phases (modify-phases %standard-phases - (add-before 'configure 'patch + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* '("libs/compiling.sgml" + "libs/gst-plugins-base-libs-docs.sgml") + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t)) + (add-after 'unpack 'patch-tests (lambda _ (substitute* "tests/check/libs/pbutils.c" (("/bin/sh") (which "sh"))) - #t))))) + #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)) + ;; Tests look for $XDG_RUNTIME_DIR. + (setenv "XDG_RUNTIME_DIR" (getcwd)) + ;; For missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + #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 + `(("docbook-xml" ,docbook-xml-4.1.2) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python-wrapper" ,python-wrapper) + ("xmllint" ,libxml2) + ("xorg-server" ,xorg-server-for-tests))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("cdparanoia" ,cdparanoia) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("glu" ,glu) + ("graphene" ,graphene) + ("gtk+" ,gtk+) + ("iso-codes" ,iso-codes) + ("libgudev" ,libgudev) + ("libjpeg" ,libjpeg-turbo) + ("libogg" ,libogg) + ("libtheora" ,libtheora) + ("libvisual" ,libvisual) + ("libvorbis" ,libvorbis) + ("libx11" ,libx11) + ("libxext" ,libxext) + ("libxshm" ,libxshmfence) + ("libxv" ,libxv) + ("mesa" ,mesa) + ("opus" ,opus) + ("pango" ,pango) + ("sdl" ,sdl) + ("wayland" ,wayland) + ("zlib" ,zlib))) + (propagated-inputs + `(("glib" ,glib) + ("glib-networking" ,glib-networking) + ("gstreamer" ,gstreamer) + ("orc" ,orc))) + (synopsis "GStreamer plugins and helper libraries") + (description "Gst-Plugins-Base is a well-groomed and well-maintained +collection of GStreamer plug-ins and elements, spanning the range of possible +types of elements one would want to write for GStreamer.") (home-page "https://gstreamer.freedesktop.org/") - (synopsis - "Plugins for the GStreamer multimedia library") - (description "This package provides an essential exemplary set of plug-ins -for the GStreamer multimedia library.") (license license:lgpl2.0+))) (define-public gst-plugins-good -- 2.26.2
From 1a7ac994f1c75879adaed986d3ee9a580e1dbae8 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Thu, 11 Jun 2020 11:30:26 -0400 Subject: [PATCH 33/54] gnu: gst-plugins-base: Update package definition. * gnu/packages/gstreamer.scm (gst-plugins-base): Update package definition. [arguments]<#:glib-or-gtk?>: New argument. <#:phases>['disable-tests-for-armhf]: Remove phase. ['disable-failing-tests]: Remove phase. ['patch-docbook-xml]: New phase. ['pre-check]: New phase. [native-inputs]: Add docbook-xml, gettext-minimal, gobject-introspection, gsettings-desktop-schemas, perl, libxml2 and xorg-server-for-tests. [inputs]: Add bzip2, glib, glib-networking, glu, libgudev, libx11, libxdamage, libxfixes, libxext, libxshmfence, mesa and v4l-utils. Remove gst-plugins-base. [propagated-inputs]: Add gstreamer and gst-plugins-base. [synopsis]: Modify. [description]: Modify. --- gnu/packages/gstreamer.scm | 116 ++++++++++++++++++++++--------------- 1 file changed, 68 insertions(+), 48 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 5d08a423d3..111d812c14 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -449,77 +449,97 @@ types of elements one would want to write for GStreamer.") (version "1.16.2") (source (origin - (method url-fetch) - (uri (string-append - "https://gstreamer.freedesktop.org/src/" name "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "068k3cbv1yf3gbllfdzqsg263kzwh21y8dpwr0wvgh15vapkpfs0")))) + (method url-fetch) + (uri + (string-append + "https://gstreamer.freedesktop.org/src/" name "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "068k3cbv1yf3gbllfdzqsg263kzwh21y8dpwr0wvgh15vapkpfs0")))) (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* "plugins/gst-plugins-good-plugins-docs.sgml" + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #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)) + ;; Tests look for $XDG_RUNTIME_DIR. + (setenv "XDG_RUNTIME_DIR" (getcwd)) + ;; For missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + #t))))) + (native-inputs + `(("docbook-xml" ,docbook-xml-4.1.2) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python-wrapper" ,python-wrapper) + ("xmllint" ,libxml2) + ("xorg-server" ,xorg-server-for-tests))) (inputs `(("aalib" ,aalib) + ("bzip2" ,bzip2) ("cairo" ,cairo) ("flac" ,flac) - ("gdk-pixbuf" ,gdk-pixbuf) - ("gst-plugins-base" ,gst-plugins-base) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("glib" ,glib) + ("glib-networking" ,glib-networking) + ("glu" ,glu) ("gtk+" ,gtk+) - ("jack" ,jack-1) + ("jack" ,jack-2) ("lame" ,lame) ("libavc1394" ,libavc1394) ("libcaca" ,libcaca) ("libdv" ,libdv) + ("libgudev" ,libgudev) ("libiec61883" ,libiec61883) ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libshout" ,libshout) ("libsoup" ,libsoup) ("libvpx" ,libvpx) + ("libx11" ,libx11) + ("libxdamage" ,libxdamage) + ("libxfixes" ,libxfixes) + ("libxext" ,libxext) + ("libxshm" ,libxshmfence) + ("mesa" ,mesa) ("mpg123" ,mpg123) ("orc" ,orc) ("pulseaudio" ,pulseaudio) ("speex" ,speex) ("taglib" ,taglib) ("twolame" ,twolame) - ("wavpack" ,wavpack))) - (native-inputs - `(("glib:bin" ,glib "bin") - ("pkg-config" ,pkg-config) - ("python-wrapper" ,python-wrapper))) - (arguments - `(#:phases - (modify-phases %standard-phases - ,@(if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - ;; FIXME: These tests started failing on armhf after switching to Meson. - ;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/689 - `((add-after 'unpack 'disable-tests-for-armhf - (lambda _ - (substitute* "tests/check/elements/rtpbin_buffer_list.c" - (("tcase_add_test \\(tc_chain, test_bufferlist\\);") - "")) - (substitute* "tests/check/elements/rtpulpfec.c" - (("tcase_add_loop_test.*rtpulpfecdec_recovered_from_many.*") - "") - (("tcase_add.*rtpulpfecdec_recovered_using_recovered_packet.*") - "")) - #t))) - '()) - (add-after - 'unpack 'disable-failing-tests - (lambda _ - ;; Disable tests that fail non-deterministically. - ;; This test fails on aarch64 on 1.12.x. - (substitute* "tests/check/elements/alpha.c" - (("tcase_add_test \\(tc_chain, test_chromakeying\\);" all) - (string-append "/* " all " */"))) - #t))))) + ("v4l-utils" ,v4l-utils) + ("wavpack" ,wavpack) + ("zlib" ,zlib))) + (propagated-inputs + `(("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base))) + (synopsis "GStreamer plugins and helper libraries") + (description "GStreamer-Plugins-Good is a collection of plug-ins you'd want +to have right next to you on the battlefield. Shooting sharp and making no +mistakes, these plug-ins have it all: good looks, good code, and good +licensing. Documented and dressed up in tests. If you're looking for a role +model to base your own plug-in on, here it is.") (home-page "https://gstreamer.freedesktop.org/") - (synopsis - "Plugins for the GStreamer multimedia library") - (description "GStreamer Good Plug-ins is a set of plug-ins for the -GStreamer multimedia library. This set contains those plug-ins which the -developers consider to have good quality code and correct functionality.") (license license:lgpl2.0+))) (define-public gst-plugins-bad -- 2.26.2
From a2e6783f2278ed32b1e552691ec5d67d6940757e Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> Date: Tue, 9 Jun 2020 05:17:53 -0400 Subject: [PATCH] PATCH: Disable failing tests. --- gio/tests/meson.build | 19 ------------------- glib/tests/meson.build | 2 -- 2 files changed, 21 deletions(-) diff --git a/gio/tests/meson.build b/gio/tests/meson.build index c7c3e3035..6e38eb39e 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build @@ -34,7 +34,6 @@ gio_tests = { 'buffered-output-stream' : {}, 'cancellable' : {}, 'contexts' : {}, - 'contenttype' : {}, 'converter-stream' : {}, 'credentials' : {}, 'data-input-stream' : {}, @@ -78,7 +77,6 @@ gio_tests = { 'tls-certificate' : {'extra_sources' : ['gtesttlsbackend.c']}, 'tls-interaction' : {'extra_sources' : ['gtesttlsbackend.c']}, 'tls-database' : {'extra_sources' : ['gtesttlsbackend.c']}, - 'gdbus-address-get-session' : {}, 'win32-appinfo' : {}, } @@ -135,10 +133,6 @@ endif if host_machine.system() != 'windows' gio_tests += { 'file' : {}, - 'gdbus-peer' : { - 'dependencies' : [libgdbus_example_objectmanager_dep], - 'install_rpath' : installed_tests_execdir - }, 'gdbus-peer-object-manager' : {}, 'live-g-file' : {}, 'socket-address' : {}, @@ -173,19 +167,6 @@ if host_machine.system() != 'windows' } endif - # Uninstalled because of the check-for-executable logic in DesktopAppInfo - # unable to find the installed executable - if not glib_have_cocoa - gio_tests += { - 'appinfo' : { - 'install' : false, - }, - 'desktop-app-info' : { - 'install' : false, - }, - } - endif - test_extra_programs += { 'basic-application' : {}, 'dbus-launch' : {}, diff --git a/glib/tests/meson.build b/glib/tests/meson.build index 8da477d19..9fa24dd49 100644 --- a/glib/tests/meson.build +++ b/glib/tests/meson.build @@ -103,7 +103,6 @@ glib_tests = { 'utf8-pointer' : {}, 'utf8-validate' : {}, 'utf8-misc' : {}, - 'utils' : {}, 'unicode' : {}, 'uri' : {}, '1bit-mutex' : {}, @@ -151,7 +150,6 @@ if host_machine.system() == 'windows' else glib_tests += { 'include' : {}, - 'unix' : {}, } if have_rtld_next glib_tests += { -- 2.26.2
signature.asc
Description: OpenPGP digital signature