'tarball' jobs on ci.guix.gnu.org install the wrong profile

DoneSubmitted by Julien Lepiller.
Details
4 participants
  • Julien Lepiller
  • Leo Famulari
  • Mathieu Othacehe
  • Vincent Legoll
Owner
unassigned
Severity
normal
J
J
Julien Lepiller wrote on 17 Apr 15:29 +0200
[release 1.2.1] could not install on foreign distro
(address . bug-guix@gnu.org)
20210417152927.3a98fe21@tachikoma.lepiller.eu
Hi Guix!
I tried using the latest tarball to install guix, by modifying thecurrent script. To do that, I downloaded the latest installation scriptfrom savannah and modified it a bit:
In guix_get_bin, I removed the tar.xz extension and the download of thesignature. I also commented out the verification with gpg.
In main, I commented out the call to guix_get_bin_list and replace thecall to guix_get_bin with
guix_get_bin "https://ci.guix.gnu.org/download/""114" "$tmp_path"
(114 being obtained by looking at the latest build of the tarball:https://ci.guix.gnu.org/jobset/tarball).
After these changes, I was able to run:
sudo -i $HOME/guix-install.sh
which initially asked me to get the key, then managed to download thetarball, but failed like so:
https://www.gnu.org/software/guix/Press return to continue...Starting installation (Sat Apr 17 08:59:36 AM EDT 2021)[ PASS ] verification of required commands completed[ INFO ] init system is: systemd[ WARN ] We recommend installing and/or starting your distribution'nscd' service[ WARN ] Please read 'info guix "Application Setup"' about "NameService Switch"[ INFO ] system is x86_64-linux[ INFO ] Downloading Guix release archive 114100%[===================>] 85.11M 4.27MB/s in 19s [ PASS ] download completed.[ PASS ] unpacked archive[ INFO ] Installing /var/guix and /gnu...[ INFO ] Linking the root user's profile/home/roptat/guix-install.sh: line 317:/root/.config/guix/current/etc/profile: No such file or directory
Indeed, the tarball only has the following in var/guix:
/var/guix//var/guix/db//var/guix/db/db.sqlite/var/guix/gcroots//var/guix/gcroots/profiles/var/guix/profiles//var/guix/profiles/per-user//var/guix/profiles/per-user/root//var/guix/profiles/per-user/root/guix-profile/var/guix/profiles/per-user/root/guix-profile-1-link

whereas the release (1.2.0) tarball contains:
/var/guix//var/guix/db//var/guix/db/db.sqlite/var/guix/gcroots//var/guix/gcroots/profiles/var/guix/profiles//var/guix/profiles/per-user//var/guix/profiles/per-user/root//var/guix/profiles/per-user/root/current-guix/var/guix/profiles/per-user/root/current-guix-1-link
Note guix-profile <> current-guix
The manual still suggests to create a symlink to/var/guix/profiles/per-user/root/current-guix and source the profilefrom it.
L
L
Leo Famulari wrote on 17 Apr 19:42 +0200
(no subject)
(address . control@debbugs.gnu.org)
YHseD/BX24lkFdIu@jasmine.lan
block 47297 with 47841
L
L
Leo Famulari wrote on 17 Apr 20:57 +0200
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)
YHsvs/5MeWYjoJAn@jasmine.lan
retitle 47841 'tarball' jobs on ci.guix.gnu.org install the wrong profile
L
L
Leo Famulari wrote on 17 Apr 20:59 +0200
Re: bug#47841: 'tarball' jobs on ci.guix.gnu.org install the wrong profile
(name . Julien Lepiller)(address . julien@lepiller.eu)(address . 47841@debbugs.gnu.org)
YHswCyBKu70FLCYL@jasmine.lan
On Sat, Apr 17, 2021 at 03:29:27PM +0200, Julien Lepiller wrote:
Toggle quote (2 lines)> (114 being obtained by looking at the latest build of the tarball:> https://ci.guix.gnu.org/jobset/tarball).
[...]
Toggle quote (2 lines)> /root/.config/guix/current/etc/profile: No such file or directory
I built the tarball as it's done by `make release` [0]:
`./pre-inst-env guix pack -C xz --fallback -s x86_64-linux --localstatedir --profile-name=current-guix guix`
And, this tarball seems right:
------var/guixvar/guix/dbvar/guix/db/db.sqlitevar/guix/gcrootsvar/guix/gcroots/profilesvar/guix/profilesvar/guix/profiles/per-uservar/guix/profiles/per-user/rootvar/guix/profiles/per-user/root/current-guixvar/guix/profiles/per-user/root/current-guix-1-link------
So, I guess that the CI job for these tarballs needs to be adjusted.
I'm going to test installing with this tarball in a Debian ISO now.
[0] https://git.savannah.gnu.org/cgit/guix.git/tree/Makefile.am?id=b18f45c21f5d697d384a7bd5c9d3ee314bba9e35#n739
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAmB7MAgACgkQJkb6MLrKfwgDdQ//RAAOrs0SIqGvoTIUgZLUkmCCeOGcz98tlkI+I9lZGI/oyogxlXElyxYoaQfdg2PCps5QYubK46+W/gqSRhOzA4C/TQsM2bVu7R5fjtudcBGQfOiuhqHDLEM3e62rEaq6cLm1H2yeF6tzcgEscrRTs7iKvmGKNfN4i+YWPrFrnej9DzvepW/THfR8J/1O36dqd/PMp8AB049FdKupyHzda0sFFb2AcoXsbKLFUzCs6le8uMjRttUhP9tc5vB17L5IGnWhAfG+y9JBmC9TI3M5jYiIaBuvYOMMHmdiW/5qqCcGixbLotEureKHRklynf77RvL/oNk3PiOOTewk+FcwJMaUjX1ZqGkJJQwIAA5CR5MY5LZ1Qc4uQnfkeP+eo2l8c297+YySkaz1/9IlYj9/tG5EjNcDI8Ot4BZIGSfT3DYA07r7G/Ra1nCjEb6Q4oj7zMLxsZeHmOxJh7TO4VHnRssq/JLJv+h+LE3416v4pKPjUHXzbUfKo2OfPzgV297a/QkzGgZ7DCCmXhywzV91OQFLcvO662A8O6Y3uetBUDSfdFqqzeb9UTtD+VCo89oCOy5c8lNuDMmYlYKdSr7ck40GPIdl5XzoYQrqNE/5anCE9CdYDXhJ0ccewulAJ0BHojkomFDzVIeQx26vFFvyFwcaGYZZwCQc47uV+hyckrk==8FBw-----END PGP SIGNATURE-----

L
L
Leo Famulari wrote on 17 Apr 21:22 +0200
Re: bug#47841: [release 1.2.1] could not install on foreign distro
(name . Julien Lepiller)(address . julien@lepiller.eu)(address . 47841@debbugs.gnu.org)
YHs1fRU2n5btE7V2@jasmine.lan
On Sat, Apr 17, 2021 at 03:29:27PM +0200, Julien Lepiller wrote:
Toggle quote (15 lines)> I tried using the latest tarball to install guix, by modifying the> current script. To do that, I downloaded the latest installation script> from savannah and modified it a bit:> > In guix_get_bin, I removed the tar.xz extension and the download of the> signature. I also commented out the verification with gpg.> > In main, I commented out the call to guix_get_bin_list and replace the> call to guix_get_bin with> > guix_get_bin "https://ci.guix.gnu.org/download/" "114" "$tmp_path"> > (114 being obtained by looking at the latest build of the tarball:> https://ci.guix.gnu.org/jobset/tarball).
Can you share your diff? I tried to alter guix-install.sh to downloadthe tarball I built from my server, but it's easier said than done.
L
L
Leo Famulari wrote on 17 Apr 22:17 +0200
Re: bug#47841: 'tarball' jobs on ci.guix.gnu.org install the wrong profile
(name . Julien Lepiller)(address . julien@lepiller.eu)
YHtCa3o1ajSKDDcM@jasmine.lan
On Sat, Apr 17, 2021 at 02:59:23PM -0400, Leo Famulari wrote:
Toggle quote (2 lines)> I'm going to test installing with this tarball in a Debian ISO now.
I installed "by hand" using this tarball, and it worked fine.
Since this bug is really about a broken CI job, and not the releaseartifacts, I'm removing it from the list of release blockers.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAmB7QmsACgkQJkb6MLrKfwhImBAA50aBQ5s/4UdQkzOrDgKwaaw6/Zgf58R8W05eGHA3noT2kxaIhV/waFY8zvS4jkPw5/7OtsJMgsSE9kyO7Xg7cIuhJApovPSRN84n8HQxjNbh0zOXpH0ztPD2H9fUWlwqbO3Fu3Uk1bIv/O6/Lc+EfAoCCVwTxDvE+ZO31bHn690NzmoezohYP1KrMbQMB4eS8HcQBUwLjtZPFOs7eqCBx7M///P5SER3t8N/5Jez+28Ze4Gb+GheSAfrvivpdNyAIVfiYbFtGvFathIw8uge/S8scUzDQNtDvs4OH8jll/wvSfw8xxFv271H6GtWczbNvbX+UQQfsxQzO5IqKHr9Z8XcVp3pxeNXfJvp6/DzxI2+065O/arVOGOE0lq0hJLo38uldGsJcyc9QC3v1qlcPM8hd7cfUitaP22CjeXd9d9kGoitIxFJwwSOUu2bWsSSeX/NUdrovrH/wH+6KhG5sb0kGaPY6e5rZk45bqFSDOYSw9wLVBgtYgEs8DF5RCcEw/GYwfSssljv568UTKbm8M+88Poh5lbytqFgOEdW+2VN9AjpQyFbMkFIjegirZQaYv0uw/fM+6c5h48R9iGQ1cJRNQehKU53a6ouaxnDvUoVWMZkBy2yiYMaSs08V0NIVPxBQ7vb73Uzfdap8pzzEmTF5lmDeaqEfryTaeA+lFY==f6Ms-----END PGP SIGNATURE-----

L
L
Leo Famulari wrote on 17 Apr 22:18 +0200
(no subject)
(address . control@debbugs.gnu.org)
YHtCguEVebJsu9bc@jasmine.lan
unblock 47297 with 47841
L
L
Leo Famulari wrote on 17 Apr 23:54 +0200
Re: bug#47841: [release 1.2.1] could not install on foreign distro
(name . Julien Lepiller)(address . julien@lepiller.eu)(address . 47841@debbugs.gnu.org)
YHtY+VkTPoY8uiRe@jasmine.lan
On Sat, Apr 17, 2021 at 03:22:37PM -0400, Leo Famulari wrote:
Toggle quote (3 lines)> Can you share your diff? I tried to alter guix-install.sh to download> the tarball I built from my server, but it's easier said than done.
Julien shared a diff on #guix, and I adapted it a bit, as attached.
I named the binary tarball that I built 'guix-binary-0.tar.xz', so ifyou choose another name, adjust guix-install.sh appropriately.
And of course, change the URL used in the invocation of guix_get_bin().The example.com URL will not work.
--- guix-install.sh.bak 2021-04-17 16:54:16.653305552 -0400+++ guix-install.sh 2021-04-17 17:53:30.704684525 -0400@@ -267,7 +267,7 @@ wget --help | grep -q '\--show-progress' && \ _PROGRESS_OPT="-q --show-progress" || _PROGRESS_OPT=""- wget $_PROGRESS_OPT -P "$dl_path" "${url}/${bin_ver}.tar.xz" "${url}/${bin_ver}.tar.xz.sig"+ wget $_PROGRESS_OPT -P "$dl_path" "${url}/${bin_ver}.tar.xz" if [[ "$?" -eq 0 ]]; then _msg "${PAS}download completed."@@ -276,15 +276,15 @@ exit 1 fi - pushd "${dl_path}" >/dev/null- gpg --verify "${bin_ver}.tar.xz.sig" >/dev/null 2>&1- if [[ "$?" -eq 0 ]]; then- _msg "${PAS}Signature is valid."- popd >/dev/null- else- _err "${ERR}could not verify the signature."- exit 1- fi+# pushd "${dl_path}" >/dev/null+# gpg --verify "${bin_ver}.tar.xz.sig" >/dev/null 2>&1+# if [[ "$?" -eq 0 ]]; then+# _msg "${PAS}Signature is valid."+# popd >/dev/null+# else+# _err "${ERR}could not verify the signature."+# exit 1+# fi } sys_create_store()@@ -296,7 +296,7 @@ cd "$tmp_path" tar --extract \- --file "$pkg" &&+ --file "guix-binary-0.tar.xz" && _msg "${PAS}unpacked archive" if [[ -e "/var/guix" || -e "/gnu" ]]; then@@ -544,7 +544,7 @@ chk_term chk_require "${REQUIRE[@]}"- chk_gpg_keyring+# chk_gpg_keyring chk_init_sys chk_sys_arch chk_sys_nscd@@ -554,8 +554,9 @@ umask 0022 tmp_path="$(mktemp -t -d guix.XXX)" - guix_get_bin_list "${GNU_URL}"- guix_get_bin "${GNU_URL}" "${BIN_VER}" "$tmp_path"+# guix_get_bin_list "${GNU_URL}"+# guix_get_bin "${GNU_URL}" "${BIN_VER}" "$tmp_path"+ guix_get_bin "https://example.com" "guix-binary-0" "$tmp_path" sys_create_store "${BIN_VER}.tar.xz" "${tmp_path}" sys_create_build_user
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAmB7WPYACgkQJkb6MLrKfwiPiA//c2MSge0m1uaXIsk8Kq3oJi9BTFX9W7ca4/nAncTJmeedMpOcPQ3e9w5aPDxee/VG1DOZdDPFqlFVRBPfXDKNj9adT2ZsteHwF5C/xHQbm0HXGcf3sgiJWGoQrQGrmhjKsqkqkwOCfs7n7G4hQlOJzlgngXeNeuETbsqsSW4MgYZ6O5QIb+lApx2vc0bUhLLujA6+gKMRXuez7eR8/gbIkbbFLbJVaNAvC5t+qtemvg5kq1fbGwfani1ayWnLsi97t+VL4VpU0unagNLE9dnHvOCoYulZ2FAUaJQQ39oy1E+XrQGcoIXv3OATH3lPuRbe/bmeftPH/qasv0tXIiulzsDDeVjwxeiMbWM6kxn5KbLfsmQ0wkKxtb0h+ywDOij2uKsh7rWWKO7vr9yAoc1ZDaA932VIUwLIjDXvWFylQfTaGnb4zd7zA+yV+NbPM4JrVkcIVmS+fofqj0PlMSyfJH+5KrrMml+DkQb2jf9h8UAwGeYXTEAqlb4l3C6Y9ET7mcy8yeBK6NH4ifvwPSVeadNfsZZ2HEmcxRZ1W4UFdNXHC3WcqPAE+NSkJqsnwU5cJiF+D6JJ0F/L6iRkemEQ1JSCBIOrJkO5tEyMML7oecI7asldqemMK5pUh0MbGxqd0uf9FPehTyoJzL3nREa0r3mSkqB3Htp/zQmw3as3Krg==B4Pp-----END PGP SIGNATURE-----

M
M
Mathieu Othacehe wrote on 18 Apr 09:36 +0200
Re: bug#47841: 'tarball' jobs on ci.guix.gnu.org install the wrong profile
(name . Leo Famulari)(address . leo@famulari.name)
87tuo4rqma.fsf@gnu.org
Hello,
Toggle quote (5 lines)> I installed "by hand" using this tarball, and it worked fine.>> Since this bug is really about a broken CI job, and not the release> artifacts, I'm removing it from the list of release blockers.
There's indeed a discrepancy between the Makefile and the (gnu ci)release job. I'm testing this fix right now: 68a11045.
Thanks,
Mathieu
V
V
Vincent Legoll wrote on 18 Apr 10:59 +0200
guix foreign installer
(address . 47841@debbugs.gnu.org)
CAEwRq=q0r_mQf7SWEh0zfGjEm7c4gA_m7VAU75nnGdsbPJyUVQ@mail.gmail.com
Hello,
there's a few enhancements to the installerscript waiting for review, comments and/ormerge there:
https://issues.guix.gnu.org/40601
That may make the kind of testing you'vedone here easier.
The separate commits should be fairlyorthogonal and cherry-pickable independently.
I can resume working on those if there'sconsensus about their usefulness.
Those patches also would probably help settingup CI testing jobs to catch problems earlier in the release cycle.
Thanks
-- Vincent Legoll
L
L
Leo Famulari wrote on 18 Apr 19:15 +0200
Re: bug#47841: 'tarball' jobs on ci.guix.gnu.org install the wrong profile
(name . Mathieu Othacehe)(address . othacehe@gnu.org)
YHxpSv18Bn/PiTQS@jasmine.lan
On Sun, Apr 18, 2021 at 09:36:29AM +0200, Mathieu Othacehe wrote:
Toggle quote (11 lines)> > Hello,> > > I installed "by hand" using this tarball, and it worked fine.> >> > Since this bug is really about a broken CI job, and not the release> > artifacts, I'm removing it from the list of release blockers.> > There's indeed a discrepancy between the Makefile and the (gnu ci)> release job. I'm testing this fix right now: 68a11045.
Okay, thanks! By the way, what is that '68a11045'? If it's a Git commit,I can't figure out where it is.
M
M
Mathieu Othacehe wrote on 20 Apr 14:17 +0200
(name . Leo Famulari)(address . leo@famulari.name)
874kg1p2uw.fsf@gnu.org
Hey,
Toggle quote (3 lines)> Okay, thanks! By the way, what is that '68a11045'? If it's a Git commit,> I can't figure out where it is.
Yeah, but it disappeared when I removed the wip branch. I pushed it onmaster: 2ccb715ab3ebef5ddbc53d706cbc42b3b765d613.
I tried to install a CI produced tarball(https://ci.guix.gnu.org/build/213975/details)on a foreign distributionVM with success.
Closing this one,
Thanks,
Mathieu
Closed
?