Hello,
$ guix environment --ad-hoc inkscape
[env]$ inkscape /tmp/guixtile.svg
/gnu/store/7bs616gpgnmj4g5d0g88dkphd1gqbicy-inkscape-1.0.2/bin/.inkscape-real: error while loading shared libraries: libMagickCore-6.Q16.so.6: cannot open shared object file: No such file or directory
The same happens when I add imagemagick of imagemagick@6.9.11-48 or
imagemagick@6.9.12-2g to the environment.
But maybe the older imagemagick is not even built?
$ guix build imagemagick@6.9.11-48
/gnu/store/m794l5c82clc3xa1lkg30pr96y9a60m3-imagemagick-6.9.12-2g-doc
/gnu/store/nnw0jnxpcf5bfaxbc3c5dkw87j13bq94-imagemagick-6.9.12-2g
Notice the version mismatch!
$ guix build imagemagick@6.9.11
guix build: error: imagemagick: package not found for version 6.9.11
It should work to just specify a version prefix, right?
$ guix describe
Generation 29 Mar 11 2021 12:17:47 (current)
guix 500189b
repository URL: https://git.savannah.gnu.org/git/guix.git
commit: 500189b4d2f1e3a2d4ee8ab73d889e3d8ac70632
This is probably due to
commit 82e887ba48c2ba91b17aa9b6b17501e3e0ef4aef
Author: Léo Le Bouter <lle-bout@zaclys.net>
Date: Tue Mar 9 23:02:51 2021 +0100
gnu: imagemagick: Update to 6.9.12-2 [security fixes].
* gnu/packages/imagemagick.scm (imagemagick/fixed): New variable.
(imagemagick)[replacement]: Graft.
I am not familiar with replacements, but it appears they force an update.
This should not happen together with a library soname change; effectively,
the result is a removal of the previous imagemagick package from Guix
together with the addition of an unrelated new one, that cannot replace
the previous one, but just happens to be a different program sharing the
same name.
So in this case, the only option is to upgrade the imagemagick package
and to recompile all its dependents.
Andreas