[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: librsvg & Rust
Re: librsvg & Rust
Wed, 06 Mar 2019 16:46:16 +0100
Notmuch/0.28.2 (https://notmuchmail.org) Emacs/26.1 (x86_64-pc-linux-gnu)
Ludovic Courtès <address@hidden> writes:
> Hello Guix!
> address@hidden skribis:
>> mbakke pushed a commit to branch staging
>> in repository guix.
>> commit ec47c07d0690653be35a75b346f3c3548a3e71d4
>> Author: Marius Bakke <address@hidden>
>> Date: Wed Oct 24 15:26:10 2018 +0200
>> gnu: librsvg: Update to 2.44.12.
>> * gnu/packages/gnome.scm (librsvg): Update to 2.44.12.
>> [arguments]: Replace patching phases with custom variants. Delete five
>> [native-inputs]: Add RUST-1.27 and RUST-1.27:CARGO.
> This change was bound to happen since upstream switched to Rust, but
> it creates a few issues.
> First, that adds Rust to the base graphical applications, which
> significantly increases build times and size:
> --8<---------------cut here---------------start------------->8---
> $ guix size librsvg | tail -1
> total: 207.2 MiB
> $ guix size librsvg rust | tail -1
> total: 1052.9 MiB
> --8<---------------cut here---------------end--------------->8---
> Perhaps the size issue can be somewhat mitigated by adding a “lib”
> output to the Rust package, but even then it would probably still be an
Librsvg does not depend on Rust at run-time, so the closure size should
be similar. However I notice it has a 129MiB (!!) librsvg-2.a, which
should be removed. I will do that later.
> Also, is the new librsvg API-compatible with the old one? IIUC it still
> provides a C API, right? Does guile-rsvg still work, for example?
I have not noticed any regressions since the switch. The guile-rsvg
tests pass, at least!
> What do other distros do? Debian kept ‘librsvg-c’ around, primarily so
> that architectures where Rust isn’t supported yet could still work:
I wanted to ask about this: is Rust supported on all the platforms we
support at the moment?
While depending on Rust for GTK/GNOME is unfortunate, I do think it's
By the way, the next version of librsvg will require Rust 1.33 or
Description: PGP signature