guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

package transformation and “guix graph”?


From: Simon Tournier
Subject: package transformation and “guix graph”?
Date: Fri, 28 Apr 2023 19:00:36 +0200

Hi,

Investigating « bug#62645: Failing `guix install gnash` » [1], I am a
bit surprised:

--8<---------------cut here---------------start------------->8---
$ guix build gnash --with-c-toolchain=gnash=gcc-toolchain@9 -n 2>&1 | grep 
tar.gz | wc -l
1008
--8<---------------cut here---------------end--------------->8---

and most of the packages to rebuild are Rust packages.  Basically
because the dependency ’gtk+’; surprising but why not.

Where I am really surprised is that:

--8<---------------cut here---------------start------------->8---
$ guix build gnash --with-c-toolchain=gnash=gcc-toolchain@9 -n 2>&1 | grep 
rust-hmac
  /gnu/store/983c5jb08bypxa9r6cmzg3znncmjhs4s-rust-hmac-0.8.1.tar.gz

$ guix graph --path gnash rust-hmac -t bag
guix graph: error: no path from 'gnash@0.8.11-0.583ccbc' to 'rust-hmac@0.12.0'
--8<---------------cut here---------------end--------------->8---

The package rust-hmac needs to be rebuilt but it does not appear
connected via “guix graph”.  Note that rust-hmac has no direct
dependency and only the ones from the Rust build system.

Similarly, the node ’gcc’ appears in the DAG of gnash:

--8<---------------cut here---------------start------------->8---
$ guix graph gnash -t bag-emerged | grep label | grep gcc
  "/gnu/store/wcx86bp6zcad2n2x5940dndhcksvfk5v-gcc-11.3.0.drv" [label = 
"gcc@11.3.0", shape = box, fontname = sans];
  "/gnu/store/rws8k2p28lvcims2yxr87v0yq4d793yk-gcc-mesboot-wrapper-4.9.4.drv" 
[label = "gcc-mesboot-wrapper@4.9.4", shape = box, fontname = sans];
  "/gnu/store/9nnxabq3m41pnq619gr59bjrbj054sl7-gcc-mesboot1-4.6.4.drv" [label = 
"gcc-mesboot1@4.6.4", shape = box, fontname = sans];
  "/gnu/store/ifxv0rvji2fqmj8m3yypwylc9fb3v1iq-gcc-mesboot0-2.95.3.drv" [label 
= "gcc-mesboot0@2.95.3", shape = box, fontname = sans];
  "/gnu/store/8vp8iadwjcvhaaqpa1wy60irhjdppwx7-gcc-core-mesboot0-2.95.3.drv" 
[label = "gcc-core-mesboot0@2.95.3", shape = box, fontname = sans];
  "/gnu/store/d3380kgfxv8dq9bimdqy2p0rfb30ad0q-gcc-mesboot-4.9.4.drv" [label = 
"gcc-mesboot@4.9.4", shape = box, fontname = sans];
  "/gnu/store/jgdyp8yr4j9ajk8ppfkypb1kylav7yx5-gcc-mesboot1-wrapper-4.6.4.drv" 
[label = "gcc-mesboot1-wrapper@4.6.4", shape = box, fontname = sans];
  "/gnu/store/j3idibd5016sxv4c15mx4xrpzggccjd0-python-pexpect-4.8.0.drv" [label 
= "python-pexpect@4.8.0", shape = box, fontname = sans];
--8<---------------cut here---------------end--------------->8---

but then,

--8<---------------cut here---------------start------------->8---
$ guix graph --path gnash -e '(@@ (gnu packages gcc) gcc-11)' -t bag 
guix graph: error: no path from 'gnash@0.8.11-0.583ccbc' to 'gcc@11.3.0'
--8<---------------cut here---------------end--------------->8---

And note that,

--8<---------------cut here---------------start------------->8---
$ guix build -e '(@@ (gnu packages gcc) gcc-11)' --no-grafts -d
/gnu/store/rcd13s3lcd579s0l8v3awk4a6kbj8hvz-gcc-11.3.0.drv
$ guix build -e '(@@ (gnu packages gcc) gcc-11)' -d
/gnu/store/rcd13s3lcd579s0l8v3awk4a6kbj8hvz-gcc-11.3.0.drv
--8<---------------cut here---------------end--------------->8---

the derivation does not match with the one reported by “guix graph”.


Last, the package ’gcc’ appears in the graph of ’rust-hmac’ – which
seems weird to me but why not:

--8<---------------cut here---------------start------------->8---
$ guix graph rust-hmac -t bag-emerged | grep label | grep gcc
  "/gnu/store/wcx86bp6zcad2n2x5940dndhcksvfk5v-gcc-11.3.0.drv" [label = 
"gcc@11.3.0", shape = box, fontname = sans];
--8<---------------cut here---------------end--------------->8---

and then again no path between rust-hmac and gcc.  Note the same
derivation.


What do I miss?


Cheers,
simon

1: https://issues.guix.gnu.org/issue/62645



reply via email to

[Prev in Thread] Current Thread [Next in Thread]