gnu: gtk: Replace gdk-pixbuf+svg by librsvg.

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.
This commit is contained in:
Maxim Cournoyer 2021-10-02 21:39:26 -04:00
parent 831c08d8f2
commit feab09f72a
No known key found for this signature in database
GPG Key ID: 1260E46482E63562
14 changed files with 28 additions and 57 deletions

View File

@ -67,7 +67,7 @@
("which" ,which)))
(inputs
`(("dbus" ,dbus)
("gdk-pixbuf" ,gdk-pixbuf+svg) ; for svg support
("librsvg" ,librsvg) ; for svg support
("glib" ,glib)
("cairo" ,cairo)
("pango" ,pango)

View File

@ -279,7 +279,7 @@ topology functions.")
("libsoup" ,libsoup)
("libgweather" ,libgweather)
("libxml2" ,libxml2)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib-networking" ,glib-networking)
("geoclue" ,geoclue)
("geocode-glib" ,geocode-glib)

View File

@ -602,7 +602,7 @@ in JavaScript.")
("vala" ,vala)))
(inputs
`(("avahi" ,avahi)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("gee" ,libgee)
("gst-plugins-base" ,gst-plugins-base)
("gtk+" ,gtk+)))
@ -921,7 +921,7 @@ tomorrow, the rest of the week and for special occasions.")
(inputs
`(("babl" ,babl)
("cairo" ,cairo)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("gegl" ,gegl)
("geocode-glib" ,geocode-glib)
("gexiv2" ,gexiv2)
@ -2821,7 +2821,7 @@ and how they are displayed (View).")
("gtk+:bin" ,gtk+ "bin")
("pkg-config" ,pkg-config)))
(inputs
`(("gdk-pixbuf" ,gdk-pixbuf+svg)
`(("librsvg" ,librsvg)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
("pango" ,pango)
@ -4258,7 +4258,7 @@ engineering.")
("gtk+:bin" ,gtk+ "bin")
("pkg-config" ,pkg-config)))
(inputs
`(("gdk-pixbuf" ,gdk-pixbuf+svg)
`(("librsvg" ,librsvg)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
("pango" ,pango)
@ -6832,7 +6832,7 @@ a secret password store, an adblocker, and a modern UI.")
(inputs
`(("avahi" ,avahi)
("gcr" ,gcr)
("gdk-pixbuf+svg" ,gdk-pixbuf+svg) ; for loading SVG files
("librsvg" ,librsvg) ; for loading SVG files
("glib-networking" ,glib-networking)
("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
@ -8712,7 +8712,7 @@ properties, screen resolution, and other GNOME parameters.")
("evolution-data-server" ,evolution-data-server)
("gcr" ,gcr)
("gdm" ,gdm)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("gjs" ,gjs)
("gtk" ,gtk)
("gnome-autoar" ,gnome-autoar)
@ -8776,7 +8776,7 @@ like switching to windows and launching applications.")
("vala" ,vala)))
(inputs
`(("cairo" ,cairo)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("gnutls" ,gnutls)
("libgcrypt" ,libgcrypt)

View File

@ -357,7 +357,7 @@ Graphviz and LaTeX.")
(,(dirname (search-input-file inputs "bin/dot"))))))))))
(inputs
`(("atk" ,atk)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("graphviz" ,graphviz)
("gtk+" ,gtk+)
("python-pycairo" ,python-pycairo)

View File

@ -311,7 +311,7 @@ applications that want audio visualisation and audio visualisation plugins.")
(inputs
`(("alsa-lib" ,alsa-lib)
("esound" ,esound)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("gtk+" ,gtk+-2)
("jack" ,jack-2)
("libx11" ,libx11)
@ -668,7 +668,7 @@ for the GStreamer multimedia library.")
("bzip2" ,bzip2)
("cairo" ,cairo)
("flac" ,flac)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("glib-networking" ,glib-networking)
("glu" ,glu)

View File

@ -712,35 +712,6 @@ scaled, composited, modified, saved, or rendered.")
(home-page "https://wiki.gnome.org/Projects/GdkPixbuf")
(license license:lgpl2.1+)))
;; To build gdk-pixbuf with SVG support, we need librsvg, and librsvg depends
;; on gdk-pixbuf, so this new variable. Also, librsvg adds 90MiB to the
;; closure size.
(define-public gdk-pixbuf+svg
(package/inherit gdk-pixbuf
(name "gdk-pixbuf+svg")
(inputs
`(("librsvg" ,librsvg)
,@(package-inputs gdk-pixbuf)))
(arguments
(substitute-keyword-arguments (package-arguments gdk-pixbuf)
((#:phases phases)
`(modify-phases ,phases
(add-after 'install 'register-svg-loader
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(librsvg (assoc-ref inputs "librsvg"))
(loaders
(append
(find-files out "^libpixbufloader-.*\\.so$")
(find-files librsvg "^libpixbufloader-.*\\.so$")))
(gdk-pixbuf-query-loaders
(string-append out "/bin/gdk-pixbuf-query-loaders")))
(apply invoke
gdk-pixbuf-query-loaders
"--update-cache"
loaders))))))))
(synopsis "Image loading library, with SVG support")))
;;; A minimal variant used to prevent a cycle with Inkscape.
(define-public at-spi2-core-minimal
(hidden-package
@ -901,7 +872,7 @@ is part of the GNOME accessibility project.")
;; Rust is not supported well on every architecture yet.
("gdk-pixbuf" ,(if (string-prefix? "x86_64" (or (%current-target-system)
(%current-system)))
gdk-pixbuf+svg
librsvg
gdk-pixbuf))
("glib" ,glib)
("pango" ,pango)))
@ -1003,7 +974,7 @@ application suites.")
;; SVG support is optional and requires librsvg, which pulls in rust.
;; Rust is not supported well on every architecture yet.
("gdk-pixbuf" ,(if (target-x86-64?)
gdk-pixbuf+svg
librsvg
gdk-pixbuf))
("glib" ,glib)
("libcloudproviders" ,libcloudproviders-minimal)
@ -1263,7 +1234,7 @@ application suites.")
;; Following dependencies are referenced in .pc files.
`(("cairo" ,cairo)
("fontconfig" ,fontconfig)
("gdk-pixbuf+svg" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("graphene" ,graphene)
("libepoxy" ,libepoxy)

View File

@ -2352,7 +2352,7 @@ GIF, TIFF, WEBP, BMP, PNG, XPM formats.")
("gettext" ,gettext-minimal)))
(inputs
`(("gtk+" ,gtk+)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("hicolor-icon-theme" ,hicolor-icon-theme)
("libmypaint" ,libmypaint)
("mypaint-brushes" ,mypaint-brushes)

View File

@ -1686,7 +1686,7 @@ compresses it.")
("enchant" ,enchant)
("expat" ,expat)
("fontconfig" ,fontconfig)
("gdk-pixbuf+svg" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("ghostscript" ,ghostscript)
("glib" ,glib)
("gnupg" ,gnupg)

View File

@ -473,7 +473,7 @@ sound systems.")
("gobject-introspection" ,gobject-introspection)))
(inputs
`(("cairo" ,cairo)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("gtk+" ,gtk+)
("libx11" ,libx11)
@ -983,7 +983,7 @@ icons on the MATE desktop. It works on local and remote file systems.")
("polkit" ,polkit)
("startup-notification" ,startup-notification)))
(propagated-inputs
`(("gdk-pixbuf" ,gdk-pixbuf+svg) ; mate-slab.pc
`(("librsvg" ,librsvg) ; mate-slab.pc
("librsvg" ,librsvg))) ; mate-slab.pc
(home-page "https://mate-desktop.org/")
(synopsis "MATE Desktop configuration tool")
@ -1219,7 +1219,7 @@ Re-decorates windows on un-maximise.
("dbus-glib" ,dbus-glib)
("glib" ,glib)
("gtk+" ,gtk+)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("libcanberra" ,libcanberra)
("libglade" ,libglade)
("libmatekbd" ,libmatekbd)
@ -1271,7 +1271,7 @@ can be used as backgrounds in the MATE Desktop environment.")
("cairo" ,cairo)
("glib" ,glib)
("gtk+" ,gtk+)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("libcanberra" ,libcanberra)
("libgtop" ,libgtop)
("libx11" ,libx11)
@ -1324,7 +1324,7 @@ can be used as backgrounds in the MATE Desktop environment.")
("exempi" ,exempi)
("glib" ,glib)
("gtk+" ,gtk+)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("libcanberra" ,libcanberra)
("libx11" ,libx11)
("libxext" ,libxext)
@ -1384,7 +1384,7 @@ can be used as backgrounds in the MATE Desktop environment.")
("file" ,file)
("glib" ,glib)
("gtk+" ,gtk+)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("json-glib" ,json-glib)
("libcanberra" ,libcanberra)
("libx11" ,libx11)

View File

@ -1295,7 +1295,7 @@ Encryption to Gajim.")
;; NOTE: Commented-out lines are to be enabled in v0.3.0.
`(("atk" ,atk)
("cairo" ,cairo)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("glib-networking" ,glib-networking)
("gpgme" ,gpgme)

View File

@ -745,7 +745,7 @@ systems with no further dependencies.")
(inputs
`(("bluez" ,bluez)
("dbus" ,dbus)
("gdkpixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("gtk+" ,gtk+)
("iproute2" ,iproute)

View File

@ -113,7 +113,7 @@ and security.")
`(("glib-compile-schemas" ,glib "bin")
("gobject-introspection" ,gobject-introspection)))
(propagated-inputs
`(("gdk-pixbuf" ,gdk-pixbuf+svg)
`(("librsvg" ,librsvg)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
("python-dateutil" ,python-dateutil)

View File

@ -4349,7 +4349,7 @@ tools for styling them, including a built-in real-time video preview.")
("gst-libav" ,gst-libav)
("gsound" ,gsound)
("gtk+" ,gtk+)
("gdk-pixbuf+svg" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("libpeas" ,libpeas)
("libnotify" ,libnotify)
("pango" ,pango)

View File

@ -119,7 +119,7 @@
("ffmpeg" ,ffmpeg)
("freerdp" ,freerdp) ; for rdp plugin
("gcrypt" ,libgcrypt)
("gdk-pixbuf" ,gdk-pixbuf+svg)
("librsvg" ,librsvg)
("glib" ,glib)
("gnome-keyring" ,gnome-keyring)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)