This is a follow-up to commit b574ccc453.
* gnu/packages/gnome.scm (polari)[fix-desktop-file]: Use string-append as
was the intention behind the original patch.
The rationale for patching the Exec line is similar to what is done for
gnome-weather.
* gnu/packages/gnome.scm (polari)[#:phases]: Add ‘fix-desktop-file’ phase.
* gnu/packages/gnome.scm (polari): Update to 40.1.
[source]: Use ‘version-major’ for directory.
[arguments]: Use meson-0.59.
[inputs]: Use gtk and libsoup-minimal-2.
This is the result of running:
./pre-inst-env guix style --input-simplification=safe
and manually undoing changes on a dozen of packages to reduce
rebuilds (derivations for emacs, icecat, and libreoffice are unchanged.)
Obtained by running "guix style --input-simplification=always" and by
using 'modify-inputs' instead of list primitives.
* gnu/packages/gnome.scm (libsoup-minimal, libsoup-minimal-2, libsoup):
Simplify inputs.
This brings back SVG support on non-x86_64 platforms.
* gnu/packages/gtk.scm (gtk+)[inputs]: Use 'librsvg-for-system'
unconditionally.
[arguments]: In 'disable-failing-tests' phase, remove conditional
substitutions aimed for non-x86_64 targets lacking librsvg support.
* gnu/packages/gnome.scm (libhandy)[arguments]: Likewise, remove
'skip-test-that-requires-svg' phase.
This avoids conflicts where, say, gtk+ would pull pango@1.44 whereas
mate-control-center would additionally pull pango@1.42 via librsvg@2.40
on i686-linux.
* gnu/packages/gnome.scm (librsvg-2.40)[arguments]: In
'remove-failing-tests' phase, remove two additional tests.
[inputs]: Change PANGO-1.42 to PANGO.
* gnu/packages/patches/gnome-boxes-add-guix-logo.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gnome-boxes): Use it.
This is a follow up to commit 16afb35ac9.
* gnu/packages/gnome.scm (adwaita-icon-theme)[native-inputs]: Add an extra
layer of parenthesizes on the conditional input to be spliced.
It was erroneously thought when updating to 2.70rc in commit
60e2a3bd5e that 2.70.0 was not yet released.
* gnu/packages/gnome.scm (glib-networking): Update to 2.70.0.
On 32-bit platforms with a 32-bit 'time_t', we'd get this test failure:
GLib-Net:ERROR:../glib-networking-2.70.rc/tls/tests/certificate.c:689:test_certificate_not_valid_after: assertion failed (actual_str == EXPECTED_NOT_VALID_AFTER): ("2037-12-31T23:23:23Z" == "2046-07-25T18:13:10Z")
This commit includes the workaround implemented upstream.
* gnu/packages/patches/glib-networking-32-bit-time.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (glib-networking)[arguments]: New field.
This is another way to address
<https://github.com/mesonbuild/meson/issues/9492> as suggested by
Nirbheek Chauhan and Paolo Bonzini.
* gnu/packages/patches/network-manager-meson.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (network-manager)[source]: Use it.
[arguments]: Remove #:meson.
* gnu/packages/patches/gnome-session-support-elogind.patch: New file.
* gnu/local.mk: Add it.
* gnu/packages/gnome.scm (gnome-session)[source]: Use it.
[arguments]: Add "-Delogind=true" to #:configure-flags; remove
phases that patch in old-style elogind support.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Fixes <https://issues.guix.gnu.org/51916>.
Reported by Vivien Kraus <vivien@planete-kraus.eu>.
* gnu/packages/gnome.scm (gnome)[propagated-inputs]: Replace
at-spi2-core with at-spi2-core-minimal.
See <https://github.com/mesonbuild/meson/issues/9441>.
* gnu/packages/gnome.scm (gnome-initial-setup)
[arguments]: Use meson-0.59.
[inputs]: Replace webkitgtk with webkitgtk-with-libsoup2.
* gnu/packages/gnome.scm: Import modules llvm and markup for gnome-builder.
(gnome-builder): Upgrade to 41.2.
[arguments]: Add #:glib-or-gtk? #t to compile the schemas.
[configure-flags]: Enable more plugins.
[phase patch-meson]: Pretend we’re building with webkit2gtk-4.1.
[inputs]: Add cmark (markup support), clang and llvm, devhelp, glade,
libportal and libsoup 2.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This avoids big rebuilds when Samba is upgraded.
* gnu/packages/samba.scm (samba/fixed): New variable.
* gnu/packages/gnome.scm (libsoup-minimal)[inputs]: Use it instead of
SAMBA.
* gnu/packages/gnome.scm (devhelp): Upgrade to 41.2 to upgrade the webkit
dependency to 4.1.
[arguments]: Use meson 0.59.
In 'skip-gtk-update-icon-cache' phase, the post install script has been
moved from meson_post_install.py to build-aux/meson/.
In 'fix-devhelp-gir-inputs' phase, the devhelp GIR still mentions webkit
4.0, use 4.1 instead.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/gnome.scm (tracker-miners)[inputs]: Use the same libsoup
version as tracker.
(tracker)[inputs]: Warn that tracker-miners should
use the same version of libsoup.
Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
Due to webkitgtk being built with libsoup@3, the pkg-config file it produces
corresponds to 'webkit2gtk-4.1' rather than 'webkit2gtk-4.0', which is the one
gnome-boxes need.
* gnu/packages/gnome.scm (gnome-boxes)[meson]: New argument.
[native-inputs]{libsoup}: Use libsoup-minimal-2.
{webkitgtk}: Use webkitgtk-with-libsoup2.
Now that we have a search path that honors it on gdk-pixbuf, it is more
valuable to keep it.
* gnu/packages/gnome.scm (librsvg)[phases]{pre-configure}: Install loaders,
cache file to locations derived from %gdk-pixbuf-loaders-cache-file.
With the addition of a profile hook for computing the gdk-pixbuf loaders cache
file, there is no longer a need for gdk-pixbuf+svg, and librsvg can propagate
gdk-pixbuf without fear, so replace the former for the latter.
The replacement was automated with the following command:
$ git grep -l ',gdk-pixbuf+svg)' \
| xargs sed 's/(".*" ,gdk-pixbuf+svg)/("librsvg" ,librsvg)/' -i
* gnu/packages/gtk.scm (gdk-pixbuf+svg): Delete package.
(gtk+-2)[propagated-inputs]: Replace gdk-pixbuf+svg with librsvg.
(gtk+)[propagated-inputs]: Likewise.
* gnu/packages/gnome.scm (gdk-pixbuf+svg): Add deprecated package.
Because starting small and adding more on top is easier maintenance-wise than
the reverse.
* gnu/packages/gnome.scm (libsoup-minimal): New variable, made by stripping
all doc-related output, phases and inputs from libsoup.
[outputs]: Remove doc output.
[configure-flags]: Set gtk_doc option to false.
[phases]{patch-docbook-xml, move-doc}: Remove phases.
[native-inputs]{docbook-xml-4.1.2, gtk-doc}: Remove inputs.
(libsoup): Inherit from the above.
[outputs]: Re-add "doc" output.
[configure-flags]: Set gtk_doc option to true.
[phases]{patch-docbook-xml, move-doc}: Re-add phases.
[native-inputs]{docbook-xml-4.1.2, gtk-doc}: Re-add inputs.
This is needed to prevent a dependency cycle between Inkscape and GTK+.
* gnu/packages/gnome.scm (rest)[propagated-inputs]
{libsoup}: Use the minimal variant.
This is needed to prevent a dependency cycle between Inkscape and GTK+.
* gnu/packages/gnome.scm (gusb-minimal): New variable.
[configure-flags]: Disable docs.
[native-inputs]: Remove gtk-doc.
(gusb): Rewrite in terms of gusb-minimal.
[configure-flags]: Enable docs.
[native-inputs]: Add gtk-doc.
* gnu/packages/gnome.scm (libcloudproviders-minimal): New minimal variant that
doesn't require Inkscape to be built (through gtk-doc).
[source]: Adjust URI.
[outputs]: Remove field.
[configure-flags]: Disable introspection, docs and vala bindings.
[phases]{move-doc}: Move phase to ...
(libcloudproviders)[phases]: ... here.
Rewrite in terms of libcloudproviders-minimal. The "doc" output is moved
here.
[configure-flags]: Clear inherited flags and enable doc.
* gnu/packages/gtk.scm (gtk+)[inputs]{libcloudproviders}: Use the minimal
variant to prevent a cycle with Inkscape.
* gnu/packages/gnome.scm (colord-minimal): New minimal variant that doesn't
require Inkscape to be built (through gtk-doc). Remove trailing #t.
[configure-flags]: Disable docs and manpage generation. Sort order.
(colord): Rewrite in terms of colord-minimal.
[configure-flags]: Enable manpages and bash completion.
[phases]{fix-bash-completion-dir}: New phase.
[native-inputs]: Add bash_completion, docbook-xsl-ns and libxml2.
* gnu/packages/gtk.scm (gtk+)[inputs]{colord}: Use the colord-minimal variant
to prevent a cycle with Inkscape.
* gnu/packages/gnome.scm (json-glib-minimal): New variable.
[source]: Adjust URI.
[outputs]: Move doc output to...
(json-glib)[outputs]: ... here. Rewrite in terms of json-glib-minimal.
* gnu/packages/gtk.scm (gtk+): Use json-glib-minimal to break a cycle with
Inkscape.
Fixes <https://issues.guix.gnu.org/50957>.
This reverts the following commits:
- 42231bc (gnu: cheese: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- ad6a950 (gnu: mutter: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 5e02d1a (gnu: cogl: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 5c467b2 (gnu: libgweather: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 26487f6 (gnu: librsvg-next: Do not propagate gdk-pixbuf)
- d891922 (gnu: librsvg: Do not propagate gdk-pixbuf)
- 22476d3 (gnu: libgsf: Do not propagate gdk-pixbuf)
- 099ca0e (gnu: libnotify: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- fb6a1ff (gnu: appstream-glib: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
- 4fb525d (gnu: weasyprint: Propagate gdk-pixbuf+svg rather than gdk-pixbuf)
These commits were made to resolve a gdk-pixbuf loaders clash that could occur
in a profile when both gdk-pixbuf and gdk-pixbuf+svg were propagated.
Unfortunately, librsvg really needs to propagate gdk-pixbuf itself, which
would introduce a cycle. Packages such as 'efl' were broken as a result of
not propagating gdk-pixbuf.
A more definitive fix will be proposed for core-updates, which includes a
profile hook to generate the gdk-pixbuf loaders.cache file, as well as a build
phase and search path specification, that should resolve the issue for good.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (cheese)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (mutter)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (cogl)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (libgweather)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (librsvg-next)[propagated-inputs]: Remove gdk-pixbuf.
[inputs]: Add gdk-pixbuf+svg.
Propagating gdk-pixbuf rather than gdk-pixbuf+svg is dangerous as it clashes
with GTK+'s own gdk-pixbuf+svg propagation.
* gnu/packages/gnome.scm (libnotify)[propagated-inputs]: Replace gdk-pixbuf by
gdk-pixbuf+svg.
The “engine” test hit the previous 90s time limit when cross-compiling
on a less powerful machine.
* gnu/packages/gnome.scm (dconf)[arguments]: Change timeout to 300s in
'increase-test-timeout phase. Drop trailing #t.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
Sorry for the noise, but good riddance. Our nonstandard name for this
package has caused confusion since it was added. For example, the
duplicate python-brotli and python-google-brotli packages added later,
with the latter name making even less sense.
The Python packages will be fixed in the next commit.
* gnu/packages/compression.scm (google-brotli): Redefine as a
deprecated-package, with…
(brotli): …restored to canonical status.
(python-google-brotli)[inherit]: Adjust accordingly.
* gnu/packages/databases.scm (apache-arrow)[inputs]: Adjust accordingly.
* gnu/packages/fontutils.scm (woff2)[inputs]: Likewise.
* gnu/packages/gnome.scm (libsoup)[propagated-inputs]: Likewise.
* gnu/packages/networking (wireshark)[inputs]: Likewise.
* gnu/packages/node.scm (node-lts)[arguments, native-inputs]: Likewise.
* gnu/packages/python-xyz.scm (python-imagecodecs)[inputs]: Likewise.
* gnu/packages/gnome.scm (brasero)[arguments]: Rename the
'embed-growisofs phase to 'embed-growisofs-reference. Get its
growisofs file name from the dvd+rw-tools input, not WHICH.
* gnu/packages/patches/gdm-wayland-session-wrapper-from-env.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gdm): Use it.
* gnu/services/xorg.scm (<gdm-configuration>)[wayland-session]: New field.
(gdm-wayland-session-wrapper): New procedure.
(gdm-configuration-file): Point to this new procedure.
* doc/guix.texi (X Window): Update it.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Add the optional flag `wayland?` in `gdm-configuration` to launch GDM with
Wayland, enabling the use of Wayland sessions with GDM.
* gnu/packages/patches/gdm-remove-hardcoded-xwayland-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gdm): Use it.
* gnu/services/xorg.scm (<gdm-configuration>)[wayland?]: New field.
(gdm-configuration): Honor it.
(gdm-shepherd-service): Add the XCURSOR_PATH environment variable.
* doc/guix.texi (X Window): Document it
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Fixes: <https://issues.guix.gnu.org/39324>.
* gnu/packages/gnome.scm (gnome-weather)[inputs]: Remove gdk-pixbuf.
[arguments]: Use a gexp to defined the phases. Add a 'fix-service-file phase
and adapt 'fix-desktop-file and 'wrap phases. Remove trailing #t.
* gnu/packages/gnome.scm (gnome-dictionary): Update to 40.0.
[source]: Fix the URI.
[arguments]: Wrap it and remove a trailing #t. Replace the
'patch-install-script phase by a new 'skip-gtk-update-icon-cache phase.
Remove the theme patch that does not apply anymore because the CSS files have
been revamped.
* gnu/packages/patches/gnome-shell-CVE-2020-17489.patch: Remove it.
* gnu/packages/patches/gnome-shell-theme: Remove it.
* gnu/packages/patches/gnome-shell-disable-test.patch: Update it.
* gnu/local.mk (DIST_PATCH_DATA): Update it.
* gnu/packages/gnome.scm (gnome-shell): Update to 40.5.
[source]: Fix the URI. Update the patches. Remote the snippet.
[arguments]: Remove trailing #t.
<#:phases>: Add a 'skip-gtk-update-icon-cache phase. Remove the
'convert-logo-to-png phase. Remove the inkscape disallowed reference.
[native-inputs]: Remove inkscape. Add hicolor-icon-theme.
[inputs]: Add gtk and graphene.
[properties]: Remove it.
* gnu/packages/patches/gnome-online-miners-tracker-3.patch: New file.
* gnu/local.mk (DIST_PATCH_DATA): Add it.
* gnu/packages/gnome.scm (gnome-online-miners)[source]: Use it.
[arguments]: Add a 'fix-configure and a 'autoreconf phase.
[inputs]: Add autoconf, automake and libtool.
* gnu/packages/patches/gdm-elogind-support.patch: New file.
* gnu/packages/patches/gdm-default-session.patch: Update it.
* gnu/local.mk (DIST_PATCH_DATA): Add the new patch.
* gnu/packages/gnome.scm (gdm): Update to 40.1.
[source]: Add the gdm-elogind-support support.
[build-system]: Switch to meson-build-system.
[arguments]<#:glib-or-gtk>: Set to true.
<#:configure-flags>: Convert to meson options. Add logind-provider,
systemsystemunitdir and systemduserunitdir options.
<#:phases>{pre-configure}: Remove the libelogind intoduction that is now
handled by the patch. Remove trailing #t.
[inputs]: Add eudev.