Hi! Alex ter Weele <alex.ter.we...@gmail.com> skribis:
> For example, <https://guix.gnu.org/packages/unicode-emoji-12.0/> links > to > <https://git.savannah.gnu.org/cgit/guix.git/tree//gnu/store/wfk1qhx56qsyyi03s98ihy9370298xfm-guix-module-union/share/guile/site/3.0/gnu/packages/unicode.scm#n64>, > which 404s. > > Relevant discussion from #guix: > <http://logs.guix.gnu.org/guix/2020-02-04.log#175447>. This should be fixed by f2b24f01f42c1bad3ddffd140194de1aec38a5f8. The change of behavior was presumably caused by 09238d618a511de80de189ff3ff18bfa0f280bb9, which removed a layer of ‘canonicalize-path’, which in turn prevented relative file name canonicalization in ‘package-field-location’ to work: --8<---------------cut here---------------start------------->8--- scheme@(guix-user)> (search-path %load-path "gnu/packages/base.scm") $1 = "/gnu/store/sy9sh0m6nam63iny9xcsrmn2q7pp4sik-guix-module-union/share/guile/site/3.0/gnu/packages/base.scm" scheme@(guix-user)> (call-with-input-file $1 port-filename) $2 = "/gnu/store/sy9sh0m6nam63iny9xcsrmn2q7pp4sik-guix-module-union/share/guile/site/3.0/gnu/packages/base.scm" scheme@(guix-user)> (fluid-set! %file-port-name-canonicalization 'relative) scheme@(guix-user)> (call-with-input-file $1 port-filename) $3 = "/gnu/store/sy9sh0m6nam63iny9xcsrmn2q7pp4sik-guix-module-union/share/guile/site/3.0/gnu/packages/base.scm" scheme@(guix-user)> %load-path $4 = ("/gnu/store/sy9sh0m6nam63iny9xcsrmn2q7pp4sik-guix-module-union/share/guile/site/3.0" "/home/ludo/.guix-profile/share/guile/site/3.0" "/run/current-system/profile/share/guile/site/2.2" "/home/ludo/.guix-profile/share/guile/site/3.0" "/run/current-system/profile/share/guile/site/2.2" "/home/ludo/.guix-profile/share/guile/site/3.0" "/run/current-system/profile/share/guile/site/2.2" "/gnu/store/0awhym5h0m890n0wq87y0dxznh14rk88-guile-next-3.0.1/share/guile/3.0" "/gnu/store/0awhym5h0m890n0wq87y0dxznh14rk88-guile-next-3.0.1/share/guile/site/3.0" "/gnu/store/0awhym5h0m890n0wq87y0dxznh14rk88-guile-next-3.0.1/share/guile/site" "/gnu/store/0awhym5h0m890n0wq87y0dxznh14rk88-guile-next-3.0.1/share/guile") scheme@(guix-user)> (canonicalize-path $3) $5 = "/gnu/store/1xyinzzh924fpn79mmc279n7hzwzsn8l-guix-5e78a87bb-modules/share/guile/site/3.0/gnu/packages/base.scm" --8<---------------cut here---------------end--------------->8--- Since ‘scm_i_relativize_path’ in Guile starts by calling ‘canonicalize-path’, it would then search for /gnu/store/1xyin…-guix-5e78a87bb-modules in ‘%load-path’, but it’s not there as such. Anyway, the web site should be fixed on the next update, within an hour. Thanks, Ludo’.