Re: %base-packages and default grub theme depend on rust
Efraim Flashner writes: > On Thu, Feb 08, 2024 at 02:33:35PM +0200, Efraim Flashner wrote: >> On Mon, Jan 29, 2024 at 05:36:52PM +0100, Ludovic Courtès wrote: >> > Hi, >> > >> > Vagrant Cascadian skribis: >> > >> > > This is because the default grub theme generates a .png from an .svg >> > > ... using guile-rsvg, which uses librsvg, which uses rust ... >> > >> > How about using a guile-rsvg variant that depends on ‘librsvg-2.40’, the >> > last version written in C? >> > >> > That’s easy to do and would address the immediate problem. >> >> I bet we could switch it to use guile-cairo. Also, is guile-png too low >> level? > > My experiments with this didn't show it as possible. > > I like vagrant's idea about using the older librsvg for the guile-rsvg > used here, or just pre-generating the png itself and adding it to the > guix-artwork repo and using it from there. FWIW, I tried to take a stab at this and made some progress https://gitlab.com/janneke/guix/-/commits/wip-sans-rust/ --8<---cut here---start->8--- gnu: grub-minimal: Remove rust dependency. gnu: libsoup-minimal: Remove rust dependency. squash! gnu: qemu-minimal: Remove rust dependency. gnu: qemu-minimal: Remove rust dependency. gnu: guix-icons: Remove rust dependency. gnu: Add guile-rsvg-sans-rust. --8<---cut here---end--->8--- but qemu-minimal is kinda obnoxious to build without documentation (which depends on rust!). -- Janneke Nieuwenhuizen | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
Re: %base-packages and default grub theme depend on rust
On Thu, Feb 08, 2024 at 02:33:35PM +0200, Efraim Flashner wrote: > On Mon, Jan 29, 2024 at 05:36:52PM +0100, Ludovic Courtès wrote: > > Hi, > > > > Vagrant Cascadian skribis: > > > > > This is because the default grub theme generates a .png from an .svg > > > ... using guile-rsvg, which uses librsvg, which uses rust ... > > > > How about using a guile-rsvg variant that depends on ‘librsvg-2.40’, the > > last version written in C? > > > > That’s easy to do and would address the immediate problem. > > I bet we could switch it to use guile-cairo. Also, is guile-png too low > level? My experiments with this didn't show it as possible. I like vagrant's idea about using the older librsvg for the guile-rsvg used here, or just pre-generating the png itself and adding it to the guix-artwork repo and using it from there. -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted signature.asc Description: PGP signature
Re: %base-packages and default grub theme depend on rust
Efraim Flashner writes: Hi, > On Mon, Jan 29, 2024 at 05:36:52PM +0100, Ludovic Courtès wrote: >> Hi, >> >> Vagrant Cascadian skribis: >> >> > This is because the default grub theme generates a .png from an .svg >> > ... using guile-rsvg, which uses librsvg, which uses rust ... >> >> How about using a guile-rsvg variant that depends on ‘librsvg-2.40’, the >> last version written in C? >> >> That’s easy to do and would address the immediate problem. > > I bet we could switch it to use guile-cairo. Also, is guile-png too low > level? That would be nice. FWIW, I shortly attempted to get rid of rust for building a hurd-vm on my `wip-sans-rust' branch, branched off core-updates https://gitlab.com/janneke/guix/-/commits/wip-sans-rust/?ref_type=heads a7b2251c6e gnu: grub-minimal: Remove rust dependency. 6406eefe2a gnu: libsoup-minimal: Remove rust dependency. 753c872fb7 squash! gnu: qemu-minimal: Remove rust dependency. 417cbc8aa7 gnu: qemu-minimal: Remove rust dependency. f3b5d38664 gnu: guix-icons: Remove rust dependency. adf9ceeb2f gnu: Add guile-rsvg-sans-rust. but didn't get anywhere really in the end. Greetings, Janneke -- Janneke Nieuwenhuizen | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
Re: %base-packages and default grub theme depend on rust
On Mon, Jan 29, 2024 at 05:36:52PM +0100, Ludovic Courtès wrote: > Hi, > > Vagrant Cascadian skribis: > > > This is because the default grub theme generates a .png from an .svg > > ... using guile-rsvg, which uses librsvg, which uses rust ... > > How about using a guile-rsvg variant that depends on ‘librsvg-2.40’, the > last version written in C? > > That’s easy to do and would address the immediate problem. I bet we could switch it to use guile-cairo. Also, is guile-png too low level? -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted signature.asc Description: PGP signature
Re: %base-packages and default grub theme depend on rust
Hi, Vagrant Cascadian skribis: > This is because the default grub theme generates a .png from an .svg > ... using guile-rsvg, which uses librsvg, which uses rust ... How about using a guile-rsvg variant that depends on ‘librsvg-2.40’, the last version written in C? That’s easy to do and would address the immediate problem. Ludo’.
Re: %base-packages and default grub theme depend on rust
Hi Vagrant, On 1/14/24 22:24, Vagrant Cascadian wrote: So, I stumbled a bit with a fairly recently installed aarch64/arm64 system. The install went fine late December, but then I tried "guix system reconfigure" a couple days ago, and even though it is a very simple configuration (based on bare-bones.tmpl with grub-efi)... it pretty much needed to rebuild about 12 rust versions, as no substitutes were available on aarch64-linux. *sigh* I thought I tracked this down to guix-icons depending on librsvg, which depends on rust... and guix-icons is in %base-packages. So I dropped use of %base-packages-artwork, which pulls in guix-icons and used all the various other %base-packages-* stuff explicitly... but it still wanted to pull in guix-icons/librsvg/rust-* etc ... it just did so later in the build process... foiled again! This is because the default grub theme generates a .png from an .svg ... using guile-rsvg, which uses librsvg, which uses rust ... But this machine just has a serial console, and has no need of a background image in the grub configuration... So eventually I figured out how to get a grub theme without a background image and drop guix-icons from the configuration by avoiding use of %base-packages-artwork: (bootloader (bootloader-configuration +(theme (grub-theme (image #f))) (bootloader grub-efi-bootloader) (targets '("/boot/efi" - (packages (cons screen %base-packages)) + (packages (append (list screen nss-certs) + %base-packages-interactive + %base-packages-linux + %base-packages-networking + %base-packages-utils)) Maybe these is a more elegant way of doing this. So, the example bare-bones system configuration does seems to have heavy layers of rust obscuring the bones. Do we want a really-quite-bare-bones configuration example? Should guix-icons not actually be in %base-packages? Can the grub theme be implemented differently without requiring rust? At least a PNG copy of the SVG could be created ahead of time without having to use librsvg to convert it. This seems like possibly a discussion so far, but I would also be happy to turn this into a bug report if desired! Thanks everyone! live well, vagrant