guix system: error: qemu-CVE-2017-7493.patch: patch not found

  • Done
  • quality assurance status badge
Details
4 participants
  • Efraim Flashner
  • Leo Famulari
  • Ludovic Courtès
  • myglc2
Owner
unassigned
Submitted by
myglc2
Severity
normal
M
M
myglc2 wrote on 30 Oct 2017 21:34
(address . bug-guix@gnu.org)
86fua04bpb.fsf@gmail.com
After a clean guix make, guix system build produced this error ...

root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
guix system: error: qemu-CVE-2017-7493.patch: patch not found

VERSION INFO:

root@g1 ~/con/15# guix --version
guix (GNU Guix) 0.13.0.4202-1f6f4
Copyright (C) 2017 the Guix authors
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

root@g1 ~/con/15# stat ~/.config/guix/latest | grep File:
File: /root/.config/guix/latest -> /home/g1/src/guix/

root@g1 ~/con/15# git -C ~/.config/guix/latest describe
v0.13.0-4202-g1f6f4c40c

root@g1 ~/con/15# git -C ~/.config/guix/latest log -n 1 --oneline
1f6f4c40c (HEAD -> o-master, origin/master, origin/HEAD) gnu: Add r-tgconfig.

root@g1 ~/con/15# git -C /home/g1/src/guix branch -av | grep '*'
* o-master 1f6f4c40c gnu: Add r-tgconfig.

SYS CONFIG:
Attachment: sys.scm
L
L
Leo Famulari wrote on 31 Oct 2017 01:31
(name . myglc2)(address . myglc2@gmail.com)(address . 29072@debbugs.gnu.org)
20171031003153.GA24788@jasmine.lan
On Mon, Oct 30, 2017 at 04:34:08PM -0400, myglc2 wrote:
Toggle quote (5 lines)
> After a clean guix make, guix system build produced this error ...
>
> root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
> guix system: error: qemu-CVE-2017-7493.patch: patch not found

What about `git status`? Is the worktree in a consistent state? This
patch file was removed in August 2017 [0] and nothing should refer to it
anymore.

[0] commit 2de7d137b3c6f528acb540a6ab3460627f484b0a
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAln3xHYACgkQJkb6MLrK
fwheFRAAlb3dtMVbxu4kDZ+L3eEJzpTETUCZSSQuWXK0K6jx8GzmKY5xH207wjoU
hcwseiQhDx2gNLQlU0TnDXhYfGUVD61YP/rvB6vdSOLNmXFpMmNY1Dwbd8IQPwj9
Khg79PuOghRAnagO9A7p/8Tvw40O7acnhAlTmJ0NYJaU1oocJ16aGHsnVA/aN4Mc
FqFPEY/9UURVd/tB1CvTUFknWr9VXWuNPuZEWwq2dHYQbhaa29YUqgcjSe+dzUmy
bjbcnddCVMDbTsLMZYqClaWCsjfg0Vs2FxMgx7DUiy9lpBIf7btrBR/9UhGXAOg2
ysfkbds1BR3FmiWZIGbTCjVomUiNBVutze344sKdzilB1H8APB1JgVzt/6Q2hBOx
yBbQgwNr7gwueP5gkQBlYKue8zAYHePPjqhrauYqeB58x2FqnmhIKcmUFkpD49sd
1Oi5Xq373REJu7k1hjt1Q0wfakRVLGQI/f3z865gyhk9Ub4Gyp7w/PNEcV/JQVkq
34L44SrU1Zc1pqwngxQZMna1Q70hMv1iqAFWa7GB2ra5huEVUbzzCFuv+fyrpYCs
f/CojBWJ5cpsxylExRdK+/sLuyxepXbgrnzi7H4OSHY/K2Itykc6kWSSyVR8QRbH
+62JbwvkHadzH/Vci0RITEbk7VNDOXyVXk84uO5iQW+6ajBrAGg=
=toQ5
-----END PGP SIGNATURE-----


M
M
myglc2 wrote on 1 Nov 2017 15:40
(name . Leo Famulari)(address . leo@famulari.name)(address . 29072@debbugs.gnu.org)
86y3nquko3.fsf@gmail.com
On 10/30/2017 at 20:31 Leo Famulari writes:

Toggle quote (12 lines)
> On Mon, Oct 30, 2017 at 04:34:08PM -0400, myglc2 wrote:
>> After a clean guix make, guix system build produced this error ...
>>
>> root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
>> guix system: error: qemu-CVE-2017-7493.patch: patch not found
>
> What about `git status`? Is the worktree in a consistent state? This
> patch file was removed in August 2017 [0] and nothing should refer to it
> anymore.
>
> [0] commit 2de7d137b3c6f528acb540a6ab3460627f484b0a

Thanks Leo.

git status is clean ...

g1@g1 ~/src/guix$ git status
On branch o-master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working tree clean
g1@g1 ~/src/guix$ git remote -vv
origin git://git.savannah.gnu.org/guix.git (fetch)
origin git://git.savannah.gnu.org/guix.git (push)
g1@g1 ~/src/guix$

emacs 'M-x grep find qemu-CVE-2017-7493.patch' produces ...

***
-*- mode: grep; default-directory: "~/src/guix/" -*-
Grep started at Wed Nov 1 10:25:46
find . -type f -exec grep --color -nH -e qemu-CVE-2017-74
Binary file ./gnu/packages/qemu.go matches
./test-tmp/store/.links/0m1wjb06m31vw9jpimbmqkwxh1fzgyxag
./test-tmp/store/.links/0zk12m0jwp2n2380pq9x56mx71ry1dv42
./test-tmp/store/.links/0vrz62alwffjah2rj33wrwj7ypzbkv0pm
./test-tmp/store/.links/0xlcs15frjqbnhmcp2pv1ly9by84ncafn
./test-tmp/store/.links/00fiw7380k24qcq3k6pqgkz6j0c1l6ibw
./test-tmp/store/.links/066d4qpkxrf8p5vgay3x9bwn3zhzxp3gh
./test-tmp/store/.links/1z89050j89mz33c97b9bhvrb2h8972qyg
./test-tmp/store/.links/0cwv31pb892219rqgnmxzb950kd82b3mz
./test-tmp/store/.links/0bz2735f2x9f624yzmi6i3bryxsgn0qq7
./test-tmp/store/.links/0mvrdlqf3y989djjghinvsvsa80h250xm
./test-tmp/store/h5nhfi9941i4bh02s3sijgzqcxcswxrx-qemu-2.
./test-tmp/store/44p8aj7gqd97126gsw82anvhbbq2h080-qemu-2.
./test-tmp/store/0dkhz940aq4h1s6wg2lflhxswrpw93gs-qemu-2.
./test-tmp/store/xdmnickhpv89q568jhgrlkixnc873dx9-qemu-2.
./test-tmp/store/apspl851a4lv6fn94wcgwmvlmfn3m24l-qemu-2.
./test-tmp/store/zbiwif5nw7074bwbrzv3b93mybrbqjqc-qemu-2.
./test-tmp/store/i8h6n9p0rvl1ra3s1k1pz9q7z1rnqnyc-qemu-2.
./test-tmp/store/saq5a28g1c6gybnfdd3v1lilkil7kvjf-qemu-2.
./test-tmp/store/i9g8mrrzmbyfa4k5ra3alw69jw3bynz0-qemu-2.
./test-tmp/store/0jd1jrsm3387vl7yncr6988zw7a969a3-qemu-2.
Binary file ./test-tmp/db/db.sqlite matches
Grep exited abnormally with code 1 at Wed Nov 1 10:25:49
***

In an attempt at self-help, I deleting ./test-tmp/*

But I am still getting this error.

TIA - George
L
L
Leo Famulari wrote on 1 Nov 2017 16:27
(name . myglc2)(address . myglc2@gmail.com)(address . 29072@debbugs.gnu.org)
20171101152708.GA21123@jasmine.lan
On Wed, Nov 01, 2017 at 10:40:28AM -0400, myglc2 wrote:
Toggle quote (2 lines)
> Binary file ./gnu/packages/qemu.go matches

Try deleting this compiled qemu.go and then try again.
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAln558gACgkQJkb6MLrK
fwhvcA/+M+X3hCJazf+HcLwT9jTWvwzkLXmb+89Qmo+xW5l3LJHwLbvVL9CKxRX5
CJvk1mX0mNTfWCErEG5ABVeOnM+tHO0aJ/6mrOGk8vA8Ry/PmSyZFlVcdmytb/eW
KUkMJMIuyNYUrhJL5GDl4MVP7jMtCUPE6s6ObGSFOrcHkJNEHKhtOJ/ZzX0sEaOo
Zbnf0Xz/apIJ6SuG3Iz3cB/dmlRo8lEnZZ/6ie3iO/YzfWThdOmtg7Md/u89Abux
01vgiEMJl2c2RtMYULrDOWZQXcRj66aMkdVaf4dE9WC4Td1K4GznxFlTKkggB/Pk
8u6xRa2atw5I4WAI3LAIKx+o9ia9YKerPQydDg4ojaXdXgKBtXPW7GNGqUWu4y0z
yjrkkJhe8byD3v7fuy/UaTZJJqL12kla2Ac7WYlaYczcEsnTsSM+qwsUeuWbEF5V
eq6HBrTDj1LKsSpzruXqU002RG5G9R9bQl7aQdzH+GFKwxojReuk2f2+WBEzy7Qg
/oK4RzkYjDQ7xCIuD9POeSi+XGJ06fkhdFsdpxTH+mmKQ4+qaGV1H5lMF51PZNGL
/pHJ/tSmNuNohK35p52nRfFZz8SCE/FyhQ2mlmmuB/ybc+3y163oRxGJsJbfL8Jb
Yzm/H/TicM1wBO1BwhIvxQ48Y75nr8oNiilNUJVh3n4Ea5ucYHY=
=VkHq
-----END PGP SIGNATURE-----


M
M
myglc2 wrote on 2 Nov 2017 03:40
(name . Leo Famulari)(address . leo@famulari.name)(address . 29072@debbugs.gnu.org)
86shdxv1w0.fsf@gmail.com
On 11/01/2017 at 11:27 Leo Famulari writes:

Toggle quote (5 lines)
> On Wed, Nov 01, 2017 at 10:40:28AM -0400, myglc2 wrote:
>> Binary file ./gnu/packages/qemu.go matches
>
> Try deleting this compiled qemu.go and then try again.

Thank you Leo.

I deleted ./gnu/packages/qemu.go and re-ran make.

Make failed to regenerate ./gnu/packages/qemu.go

So now I am really confused.

DETAILS:

g1@g1 ~/src/guix$ guix environment -e "(@ (gnu packages package-management) guix)" -M 4 -c 4
g1@g1 ~/src/guix [env]$ make
make all-recursive
make[1]: Entering directory '/home/g1/src/guix'
Making all in po/guix
make[2]: Entering directory '/home/g1/src/guix/po/guix'
make[2]: Leaving directory '/home/g1/src/guix/po/guix'
Making all in po/packages
make[2]: Entering directory '/home/g1/src/guix/po/packages'
make[2]: Leaving directory '/home/g1/src/guix/po/packages'
make[2]: Entering directory '/home/g1/src/guix'
Compiling Scheme modules...
make[2]: Leaving directory '/home/g1/src/guix'
make[1]: Leaving directory '/home/g1/src/guix'
g1@g1 ~/src/guix [env]$ ls -l ./gnu/packages/qemu.go
ls: cannot access './gnu/packages/qemu.go': No such file or directory
g1@g1 ~/src/guix$ git status
On branch o-master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working tree clean
g1@g1 ~/src/guix$ git branch -vv
* o-master 1f6f4c40c [origin/master] gnu: Add r-tgconfig.
L
L
Leo Famulari wrote on 2 Nov 2017 03:44
(name . myglc2)(address . myglc2@gmail.com)(address . 29072@debbugs.gnu.org)
20171102024440.GA17609@jasmine.lan
On Wed, Nov 01, 2017 at 10:40:47PM -0400, myglc2 wrote:
Toggle quote (15 lines)
> On 11/01/2017 at 11:27 Leo Famulari writes:
>
> > On Wed, Nov 01, 2017 at 10:40:28AM -0400, myglc2 wrote:
> >> Binary file ./gnu/packages/qemu.go matches
> >
> > Try deleting this compiled qemu.go and then try again.
>
> Thank you Leo.
>
> I deleted ./gnu/packages/qemu.go and re-ran make.
>
> Make failed to regenerate ./gnu/packages/qemu.go
>
> So now I am really confused.

The 'gnu/packages/qemu.scm' file was removed from Guix in July 2017,
with commit 59132b800093e486e4d81aed6b837e9ac76aa86c. The QEMU packages
were moved into 'gnu/packages/virtualization.scm'.

I'm not an Autotools expert, but in cases like this I usually try `make
clean && ./configure --localstatedir=/var && make`. Did you try
something like that yet?
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAln6hpQACgkQJkb6MLrK
fwiBGhAAjX3/ZP1BgBL0sT8ZRWQz0+L2B+P3bUMrWlYvpSQRspNP2Bq0hqAOM25y
JIFT7k6UBulyuHdzut1rzdu0X7N6iO49C4GYg5b/dSTMCOwfml6R7RIa8eQ6coOE
1Uq7yrWJd+bESmeLm04XDCkCJvfEmNC9u+C7G2K460ls0Uc7Rd7fF4xGiIxpTh9f
UantJa2BevBca435GyC0pXG1+F8ukhWQLU979ATDKYJbrOTIk2s9mGDJc1/u9+l6
KAMTZiq6qZzi3e3PNG46K9tPZl2U7L0uQFPG/+nhvOb0gPWr8E9qUOsjHnMPwODI
hnv02JUg5hnYHavgzikIR5CcgLxEoFZ0GaYuuMAHjp4T30fWTUxBf2QKmLfaoi9/
O7JquuT6uDAjvztXLH5l4hDkq24HLdQ2/JL3vq6On6kxIDf7KDDBk3WIIQbqix1q
OClmdjFsW4IHud2QXu5dXNjGRJStaU/cgVZeWYrin1/lTrxjAQqPkM2J7fnJxIdC
ZQAd8jYR/ZGt6aNqGDNKXIKWIqVqWrbg9McJ12l1gk8A8wA9FLHuDJ/oPwbF0qQs
3vUYq/vGRJ67DzGgk+z0rf5Sgu+mcZV3fVBgRWwykyhCJKabAMe2y2EPQ63EEfVf
G3AeMGMJNZNTFt1DfCOxzJPcKqc1IOSxcIIS9jNq77epEYeENoQ=
=Fwyx
-----END PGP SIGNATURE-----


M
M
myglc2 wrote on 5 Nov 2017 00:50
(name . Leo Famulari)(address . leo@famulari.name)(address . 29072@debbugs.gnu.org)
86wp35wqml.fsf@gmail.com
On 11/01/2017 at 22:44 Leo Famulari writes:

Toggle quote (24 lines)
> On Wed, Nov 01, 2017 at 10:40:47PM -0400, myglc2 wrote:
>> On 11/01/2017 at 11:27 Leo Famulari writes:
>>
>> > On Wed, Nov 01, 2017 at 10:40:28AM -0400, myglc2 wrote:
>> >> Binary file ./gnu/packages/qemu.go matches
>> >
>> > Try deleting this compiled qemu.go and then try again.
>>
>> Thank you Leo.
>>
>> I deleted ./gnu/packages/qemu.go and re-ran make.
>>
>> Make failed to regenerate ./gnu/packages/qemu.go
>>
>> So now I am really confused.
>
> The 'gnu/packages/qemu.scm' file was removed from Guix in July 2017,
> with commit 59132b800093e486e4d81aed6b837e9ac76aa86c. The QEMU packages
> were moved into 'gnu/packages/virtualization.scm'.
>
> I'm not an Autotools expert, but in cases like this I usually try `make
> clean && ./configure --localstatedir=/var && make`. Did you try
> something like that yet?

Thanks Leo.

I did a new git pull and a clean build as you suggested (please see the
grep of the make.log below for details)

Now when I try 'guix system build sys.scm I get ...

guix system: error: failed to load 'sys.scm':
ice-9/boot-9.scm:2795:6: In procedure resolve-interface:
ice-9/boot-9.scm:2795:6: no code for module (gnu packages qemu)

... please see details further below. Obviously something is calling
'gnu/packages/qemu.scm' but I don't understand what.

TIA - George

make.log
--------
g1@g1 ~/src/guix$ grep g1@g1 make.log
g1@g1 ~/src/guix$ guix environment -e "(@ (gnu packages package-management) guix)" -M 4 -c 4
g1@g1 ~/src/guix [env]$ git fetch
g1@g1 ~/src/guix [env]$ git pull
g1@g1 ~/src/guix [env]$ git status
g1@g1 ~/src/guix [env]$ rm -fr /home/g1/.cache/guile/ccache/*
g1@g1 ~/src/guix [env]$ make clean-go
g1@g1 ~/src/guix [env]$ ./bootstrap
g1@g1 ~/src/guix [env]$ ./configure --localstatedir=/var
g1@g1 ~/src/guix [env]$ make -j 10 check
g1@g1 ~/src/guix [env]$ ln -f -s -T ~/src/guix/ ~/.config/guix/latest
g1@g1 ~/src/guix [env]$ sudo ln -f -s -T ~/src/guix/ /root/.config/guix/latest
g1@g1 ~/src/guix [env]$ git status
g1@g1 ~/src/guix [env]$ git remote -vv
g1@g1 ~/src/guix [env]$ git branch -av | grep \*
g1@g1 ~/src/guix [env]$ exit
g1@g1 ~/src/guix$ exit
g1@g1 ~/src/guix$


root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
guix system: error: failed to load 'sys.scm':
ice-9/boot-9.scm:2795:6: In procedure resolve-interface:
ice-9/boot-9.scm:2795:6: no code for module (gnu packages qemu)

entering debugger; type ',bt' for a backtrace
GNU Guile 2.2.2
Copyright (C) 1995-2017 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(#{ g440}#)> ,q
root@g1 ~/con/15# which guix
/run/current-system/profile/bin/guix
root@g1 ~/con/15# stat ~/.config/guix/latest | grep File:
File: /root/.config/guix/latest -> /home/g1/src/guix/
root@g1 ~/con/15#
root@g1 ~/con/15# git -C ~/.config/guix/latest status
On branch o-master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working tree clean
root@g1 ~/con/15# git -C ~/.config/guix/latest remote -vv
origin git://git.savannah.gnu.org/guix.git (fetch)
origin git://git.savannah.gnu.org/guix.git (push)
root@g1 ~/con/15# git -C ~/.config/guix/latest log -n 1 --oneline
46dea1241 (HEAD -> o-master, origin/master, origin/HEAD) gnu: icedtea: Update to 3.6.0 [security fixes].
root@g1 ~/con/15# exit
exit

Process shell finished
E
E
Efraim Flashner wrote on 5 Nov 2017 18:46
(name . myglc2)(address . myglc2@gmail.com)
20171105174634.GA1815@macbook41
On Sat, Nov 04, 2017 at 07:50:10PM -0400, myglc2 wrote:
Toggle quote (52 lines)
> On 11/01/2017 at 22:44 Leo Famulari writes:
>
> > On Wed, Nov 01, 2017 at 10:40:47PM -0400, myglc2 wrote:
> >> On 11/01/2017 at 11:27 Leo Famulari writes:
> >>
> >> > On Wed, Nov 01, 2017 at 10:40:28AM -0400, myglc2 wrote:
> >> >> Binary file ./gnu/packages/qemu.go matches
> >> >
> >> > Try deleting this compiled qemu.go and then try again.
> >>
> >> Thank you Leo.
> >>
> >> I deleted ./gnu/packages/qemu.go and re-ran make.
> >>
> >> Make failed to regenerate ./gnu/packages/qemu.go
> >>
> >> So now I am really confused.
> >
> > The 'gnu/packages/qemu.scm' file was removed from Guix in July 2017,
> > with commit 59132b800093e486e4d81aed6b837e9ac76aa86c. The QEMU packages
> > were moved into 'gnu/packages/virtualization.scm'.
> >
> > I'm not an Autotools expert, but in cases like this I usually try `make
> > clean && ./configure --localstatedir=/var && make`. Did you try
> > something like that yet?
>
> Thanks Leo.
>
> I did a new git pull and a clean build as you suggested (please see the
> grep of the make.log below for details)
>
> Now when I try 'guix system build sys.scm I get ...
>
> guix system: error: failed to load 'sys.scm':
> ice-9/boot-9.scm:2795:6: In procedure resolve-interface:
> ice-9/boot-9.scm:2795:6: no code for module (gnu packages qemu)
>
> ... please see details further below. Obviously something is calling
> 'gnu/packages/qemu.scm' but I don't understand what.
>
> TIA - George
>
> make.log
> --------
> g1@g1 ~/src/guix$ grep g1@g1 make.log
> g1@g1 ~/src/guix$ guix environment -e "(@ (gnu packages package-management) guix)" -M 4 -c 4
> g1@g1 ~/src/guix [env]$ git fetch
> g1@g1 ~/src/guix [env]$ git pull
> g1@g1 ~/src/guix [env]$ git status
> g1@g1 ~/src/guix [env]$ rm -fr /home/g1/.cache/guile/ccache/*
> g1@g1 ~/src/guix [env]$ make clean-go

was there any mention at the end of 'make clean-go' about there being
stray *go files left?

Toggle quote (19 lines)
> g1@g1 ~/src/guix [env]$ ./bootstrap
> g1@g1 ~/src/guix [env]$ ./configure --localstatedir=/var
> g1@g1 ~/src/guix [env]$ make -j 10 check
> g1@g1 ~/src/guix [env]$ ln -f -s -T ~/src/guix/ ~/.config/guix/latest
> g1@g1 ~/src/guix [env]$ sudo ln -f -s -T ~/src/guix/ /root/.config/guix/latest
> g1@g1 ~/src/guix [env]$ git status
> g1@g1 ~/src/guix [env]$ git remote -vv
> g1@g1 ~/src/guix [env]$ git branch -av | grep \*
> g1@g1 ~/src/guix [env]$ exit
> g1@g1 ~/src/guix$ exit
> g1@g1 ~/src/guix$
>
>
> root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
> guix system: error: failed to load 'sys.scm':
> ice-9/boot-9.scm:2795:6: In procedure resolve-interface:
> ice-9/boot-9.scm:2795:6: no code for module (gnu packages qemu)
>

Can you post your sys.scm? It sounds like you might have a references to
(gnu packages qemu) listed there.


--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAln/TncACgkQQarn3Mo9
g1Hz4g/+IvFmjWrA+jWxJLQh+4GCms1i9fyACbe0faX0/cu3dgNBvqahANv8Nr9D
gIh5BCu01WeeoGsWJ7tlNC1FqUh/P3xpBEx1orWhyuGnvf6gKDj3NN+mmQuMe/op
0MiJKVUl56Z5l8XcDEFwfkgoq28eFo7hNJJAenLLmv3xE08JCXaoNsg0nIZHc2/f
/TZUwlXIO69OQJd4srow8MEskL9Y4xwBDuu8Fwc26voOuYg54N5oY3svuFfi0TVa
qCdew4lbvU/uXpTbvdc0waXkCpIGXYlA36vhOEbLkjEzxAKLLpJWs7QKosoC8jz4
boSis1A1eLyI4T31WyGUUrDeo1BXJclG1wCDMJ92Gv47SXKrZfx5iG59m90R+NSQ
kZbT8q1cAguQTCt8giOtme3T2vRcf+yCvKK40tI9Mlr2trfvSmUPJ0NOsnSb/jVr
hTlElrQkFKcDRMe1OUeEPad4xc0HvTDFs8yamk17glMFLZ562M9VgOjyHFM/3PQ0
tZuePGf7BfhbWi2u15kClWlzKgepbZuYBGSqpctOT9BikjK/xllqCdzHSozze75p
odnkVkXT1vx5aAquE2NLQMVIQsqIWPR7wBhXH8nwaWsR6tLbAFzh3VeSvkOawsZN
2ldWnhibzHldDFu3QXPtum7SgSnHBXJPCFvmu7FmNbTld1s38Qc=
=LppA
-----END PGP SIGNATURE-----


M
M
myglc2 wrote on 6 Nov 2017 02:15
(name . Efraim Flashner)(address . efraim@flashner.co.il)
86tvy82on6.fsf@gmail.com
On 11/05/2017 at 19:46 Efraim Flashner writes:

Toggle quote (6 lines)
> On Sat, Nov 04, 2017 at 07:50:10PM -0400, myglc2 wrote:
>> On 11/01/2017 at 22:44 Leo Famulari writes:
>>
>> > On Wed, Nov 01, 2017 at 10:40:47PM -0400, myglc2 wrote:
>> >> On 11/01/2017 at 11:27 Leo Famulari writes:
>> >>
[...]
Toggle quote (4 lines)
>> > The 'gnu/packages/qemu.scm' file was removed from Guix in July 2017,
>> > with commit 59132b800093e486e4d81aed6b837e9ac76aa86c. The QEMU packages
>> > were moved into 'gnu/packages/virtualization.scm'.
>> >
[...]
Toggle quote (10 lines)
>>
>> root@g1 ~/con/15# guix system --cores=4 --max-jobs=4 -K --on-error=debug build sys.scm
>> guix system: error: failed to load 'sys.scm':
>> ice-9/boot-9.scm:2795:6: In procedure resolve-interface:
>> ice-9/boot-9.scm:2795:6: no code for module (gnu packages qemu)
>>
>
> Can you post your sys.scm? It sounds like you might have a references to
> (gnu packages qemu) listed there.

Yes Efraim, that was it. Actually, Leo mentioned that qemu had moved
(above) but I failed to realize the implication for the config file.

Many thanks! - George
M
M
myglc2 wrote on 6 Nov 2017 21:12
The usability of Guix configurations
(name . Guix-devel)(address . guix-devel@gnu.org)
868tfjw4is.fsf@gmail.com
My system recently broke when I did an upgrade. I reported what I
thought was a bug (bug#29072) but it turned out that, because qemu
package code had been moved, my system configuration had become broken
;-(

Confronted with my situation, helpful developers said "The package code
was moved in commit xxx" (Leo) and "maybe you have a mistake in your
config (Efraim)."

Once I understood what had happened I wondered, "Gee, I have been using
guix for 18 months so why didn't I figure this out myself." ;-)

But a less committed user might say, "Wow, Guix breaks at random, error
messages are hard to understand, and support is difficult." :-(

ISTM this raises issues and questions about Guix configuration
usability:

Guix config errors are reported as raw scheme errors which are not
user-friendly, except, perhaps, to guile users ;-) Could we improve this
situation by adding config troubleshooting guidance to the doc?

Guix config errors consume meaningful amounts of user and support
effort. I say this because a) it took quite a few iterations to figure
out what was wrong in my situation, and b) google search for '"no code
for module" guix' finds 613 hits, which will no doubt grow linearly with
number of Guix users unless something is done. So I wonder, could an
error handler that translates into more user-friendly terms reduce user
frustration, increase the rate of user self help, reduce support load,
and effectively pay for itself?

Are the current Guix config errors usable by the average GNU/Linux
distribution user? If not, don't they need to be improved before we call
it 1.0?
Does this mean that package code must not be moved after 1.0?

Finally: Should I close bug#29072? ;-)
L
L
Leo Famulari wrote on 6 Nov 2017 23:16
(name . myglc2)(address . myglc2@gmail.com)
20171106221621.GA2534@jasmine.lan
On Mon, Nov 06, 2017 at 03:12:11PM -0500, myglc2 wrote:
Toggle quote (9 lines)
> My system recently broke when I did an upgrade. I reported what I
> thought was a bug (bug#29072) but it turned out that, because qemu
> package code had been moved, my system configuration had become broken
> ;-(
>
> Confronted with my situation, helpful developers said "The package code
> was moved in commit xxx" (Leo) and "maybe you have a mistake in your
> config (Efraim)."

I'm sorry that my comment was not enough on its own!

Toggle quote (6 lines)
> Once I understood what had happened I wondered, "Gee, I have been using
> guix for 18 months so why didn't I figure this out myself." ;-)
>
> But a less committed user might say, "Wow, Guix breaks at random, error
> messages are hard to understand, and support is difficult." :-(

Good point.

Toggle quote (3 lines)
> ISTM this raises issues and questions about Guix configuration
> usability:

Indeed.

Toggle quote (4 lines)
> Guix config errors are reported as raw scheme errors which are not
> user-friendly, except, perhaps, to guile users ;-) Could we improve this
> situation by adding config troubleshooting guidance to the doc?

Yes, we do try to add helpful error messages, although obviously there
is a lot more work to be done.

As far as I can tell, the issue was related to the fact that you are
using Guix by building it from source and re-using the same build
directory, which may contain stale compiled .go files. In this case,
there was a leftover qemu.go, which shadowed the correct file,
virtualization.go.

This is a useful development technique but not how Guix is supposed to
be deployed and updated. `guix pull && guix package --upgrade` is still
what we recommend and support.

If you want to deploy Guix by building it "by hand", I recommend using a
fresh Git checkout and directory each time you build it. That way, you
can be sure to avoid this class of error (stale module references in
leftover .go files), which is well-known to the seasoned Guix developers
but totally confounding for everyone else.

Toggle quote (9 lines)
> Guix config errors consume meaningful amounts of user and support
> effort. I say this because a) it took quite a few iterations to figure
> out what was wrong in my situation, and b) google search for '"no code
> for module" guix' finds 613 hits, which will no doubt grow linearly with
> number of Guix users unless something is done. So I wonder, could an
> error handler that translates into more user-friendly terms reduce user
> frustration, increase the rate of user self help, reduce support load,
> and effectively pay for itself?

That would be awesome!

Toggle quote (4 lines)
> Are the current Guix config errors usable by the average GNU/Linux
> distribution user? If not, don't they need to be improved before we call
> it 1.0?

Based on how much time it's possible to spend on IRC helping people, I'd
say there is lots of room for improvement in this area.

Toggle quote (2 lines)
> Does this mean that package code must not be moved after 1.0?

A couple thoughts... it would be nice if the GuixSD configuration
example templates used a filename agnostic method of resolving module
imports. I'm not a strong enough Schemer to evaluate the situation or
suggest a solution, but I think that the filenames should not be
relevant at that level. Perhaps one could use
'specification->package+output',
as demonstrated in the documentation of package manifests:


Toggle quote (2 lines)
> Finally: Should I close bug#29072? ;-)

The problem of the missing QEMU patch is resolved. The broader issue of
confusing error messages could be continued here, or elsewhere. It's up
to you :)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAloA3zIACgkQJkb6MLrK
fwgM5g/+INGvxiPPmr1aBYY++SwQKyKcFGp7BVarobyxi8aRLKgrQTm0L0gTbE8v
y2+OZbgEEVF3Ts6DbK1elxWbgGpj+N6teeiWXrArGI7AvyRm7EgSqVSE0UzULRV8
0uBlr/JQyunI0ST49OvavS1dUlZKrQSsTg9GM/vRM1AbGg6t4yEYY4Ovu8pmbI8o
fz94se39QOdzx6EFfzGF3KeDwD5z1Ex5scDmN/bMUyobjMJvpaOPYW9aLmnHFzId
Nx7k/QgBwZQyQAEUW2NvbzT+2ATlZxfkSucUQYRopgrw0QsxNdCC2KQ7y+cy04SX
ZprURZp8hiT80zFSyAq1TvGsldZkb2mgm0bilosVjk1rkthOOoT+20bjzzQfZ1M2
gjxbHB08yUUGUR6ZHyfKD+9BBifvaSGTZX408XW5r2RP7ox3U11WEn3U6HgkwzZr
8or/d9NL2NDneht444tHJEug38kSHY/pJjVmEdj3yYsZM4XCZ9PtLFuQSKb2zzwB
b2ZCMcx2TVZbpr6oXF7odEfDc1kf8R+FnlHWIpNlKx4Hq+JduL0yrTeTkk56ClPN
V4YlGWrGy14SZHoYY5T4pcX0/CtdkZzgUl7O7mmGgE/9fOcB1awfJzvOz+zjfwg/
Td956/kqnOxDHZ2Xdxw4a68e6Parioh1qO3+8Be7/lOAMMzXY6w=
=32nF
-----END PGP SIGNATURE-----


M
M
myglc2 wrote on 7 Nov 2017 00:26
(name . Leo Famulari)(address . leo@famulari.name)
86wp330z19.fsf@gmail.com
Please note: these replies separated by topics in an effort to make the
threads more topical ...

On 11/06/2017 at 22:16 Leo Famulari writes:

Toggle quote (12 lines)
> On Mon, Nov 06, 2017 at 03:12:11PM -0500, myglc2 wrote:
>> My system recently broke when I did an upgrade. I reported what I
>> thought was a bug (bug#29072) but it turned out that, because qemu
>> package code had been moved, my system configuration had become broken
>> ;-(
>>
>> Confronted with my situation, helpful developers said "The package code
>> was moved in commit xxx" (Leo) and "maybe you have a mistake in your
>> config (Efraim)."
>
> I'm sorry that my comment was not enough on its own!

Hey Leo,

Please understand that don't mean this as a complaint your reply, which
was helpful and I was very happy to receive.

I am just trying to step back and think about the bigger picture.
M
M
myglc2 wrote on 7 Nov 2017 02:56
(name . Leo Famulari)(address . leo@famulari.name)
86o9oex34v.fsf@gmail.com
Please note: these replies are separated by topics in an effort to make the
threads more topical ...

On 11/06/2017 at 17:16 Leo Famulari writes:

Toggle quote (1 lines)
> On Mon, Nov 06, 2017 at 03:12:11PM -0500, myglc2 wrote:
[...]
Toggle quote (7 lines)
>> Guix config errors are reported as raw scheme errors which are not
>> user-friendly, except, perhaps, to guile users ;-) Could we improve this
>> situation by adding config troubleshooting guidance to the doc?
>
> Yes, we do try to add helpful error messages, although obviously there
> is a lot more work to be done.

I didn't mean this point critically. Rather as a statement of fact. When
I said ...

Toggle quote (3 lines)
>> Could we improve this situation by adding config troubleshooting
>> guidance to the doc?

... I was thinking something like ...

vvvvvvvvvvvvvvvvvv

Troubleshooting your config file:

If you get an error like:

ice-9/boot-9.scm:[...] no code for module (gnu packages <package name>)

You have either specified a package name that does not exist, or your
(use-package-modules <package module names>) does not contain the name
of a package module that contains the definition of <package name>.

You can determine which, if any, module contains a package definition by
yada yada yada

^^^^^^^^^^^^^^^^^^

... thinking that then there would be a search hit in the doc for 'no
code for module' which might enable some users to understand what they
are doing wrong.

WDYT? - George
M
M
myglc2 wrote on 7 Nov 2017 03:30
(name . Leo Famulari)(address . leo@famulari.name)
86h8u6x1ke.fsf@gmail.com
On 11/06/2017 at 17:16 Leo Famulari writes:

Toggle quote (31 lines)
> On Mon, Nov 06, 2017 at 03:12:11PM -0500, myglc2 wrote:
>> My system recently broke when I did an upgrade. I reported what I
>> thought was a bug (bug#29072) but it turned out that, because qemu
>> package code had been moved, my system configuration had become broken
>> ;-(
>>
>> Confronted with my situation, helpful developers said "The package code
>> was moved in commit xxx" (Leo) and "maybe you have a mistake in your
>> config (Efraim)."
>
> I'm sorry that my comment was not enough on its own!
>
>> Once I understood what had happened I wondered, "Gee, I have been using
>> guix for 18 months so why didn't I figure this out myself." ;-)
>>
>> But a less committed user might say, "Wow, Guix breaks at random, error
>> messages are hard to understand, and support is difficult." :-(
>
> Good point.
>
>> ISTM this raises issues and questions about Guix configuration
>> usability:
>
> Indeed.
>
>> Guix config errors are reported as raw scheme errors which are not
>> user-friendly, except, perhaps, to guile users ;-) Could we improve this
>> situation by adding config troubleshooting guidance to the doc?
>
> Yes, we do try to add helpful error messages, although obviously there
> is a lot more work to be done.
[...]
Toggle quote (31 lines)
>
>> Guix config errors consume meaningful amounts of user and support
>> effort. I say this because a) it took quite a few iterations to figure
>> out what was wrong in my situation, and b) google search for '"no code
>> for module" guix' finds 613 hits, which will no doubt grow linearly with
>> number of Guix users unless something is done. So I wonder, could an
>> error handler that translates into more user-friendly terms reduce user
>> frustration, increase the rate of user self help, reduce support load,
>> and effectively pay for itself?
>
> That would be awesome!
>
>> Are the current Guix config errors usable by the average GNU/Linux
>> distribution user? If not, don't they need to be improved before we call
>> it 1.0?
>
> Based on how much time it's possible to spend on IRC helping people, I'd
> say there is lots of room for improvement in this area.
>
>> Does this mean that package code must not be moved after 1.0?
>
> A couple thoughts... it would be nice if the GuixSD configuration
> example templates used a filename agnostic method of resolving module
> imports. I'm not a strong enough Schemer to evaluate the situation or
> suggest a solution, but I think that the filenames should not be
> relevant at that level. Perhaps one could use
> 'specification->package+output',
> as demonstrated in the documentation of package manifests:
>
> https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-package.html
>
There is a parallel solution
Toggle quote (5 lines)
>> Finally: Should I close bug#29072? ;-)
>
> The problem of the missing QEMU patch is resolved. The broader issue of
> confusing error messages could be continued here, or elsewhere. It's up
> to you :)
L
L
Ludovic Courtès wrote on 7 Nov 2017 11:23
(name . myglc2)(address . myglc2@gmail.com)
87po8u9ylu.fsf@gnu.org
Hello,

myglc2 <myglc2@gmail.com> skribis:

Toggle quote (5 lines)
> My system recently broke when I did an upgrade. I reported what I
> thought was a bug (bug#29072) but it turned out that, because qemu
> package code had been moved, my system configuration had become broken
> ;-(

It should be noted that you were using a “developer setup”, specifically
running Guix from a checkout with ./pre-inst-env and all.

The issue with the stale module wouldn’t happen with “guix pull”, which
is the recommended “user setup.”

While I agree the situation is not ideal, I think we have to admit that
developers can always shoot themselves in the foot, and that was one way
of doing it. ;-)

Thoughts?

Ludo’.
M
M
myglc2 wrote on 7 Nov 2017 19:28
control message for bug #29072
(address . control@debbugs.gnu.org)
86zi7yrlip.fsf@gmail.com
tags 29072 notabug
close 29072
?
Your comment

This issue is archived.

To comment on this conversation send an email to 29072@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 29072
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch