New ‘guix_ pull’ /root/.config/current/bin/guix: Permission denied

DoneSubmitted by Pjotr Prins.
Details
5 participants
  • Konrad Hinsen
  • Leo Famulari
  • Ludovic Courtès
  • Pjotr Prins
  • swedebugia
Owner
unassigned
Severity
important
P
P
Pjotr Prins wrote on 17 Jul 2018 10:55
New ‘guix pull ’ /root/.config/current/bin/guix: Permission denied
(address . guix-patches@gnu.org)(address . ludo@gnu.org)
20180717085541.g6nuycopf5kxoin7@thebird.nl
On Fri, Jul 13, 2018 at 02:04:22PM +0200, Ludovic Courtès wrote:
Toggle quote (15 lines)> Hi Pjotr,> > Pjotr Prins <pjotr.public12@thebird.nl> skribis:> > > Fails to build with below /gnu/store/8ahlc84zaj0iw9jpsdpa9wx4ms0s9cma-guix-daemon-0.15.0-1.4876bc8/libexec/guix/download: line 8: /root/.config/current/bin/guix: Permission denied> > Could you figure out why this is the case, perhaps by running attaching> “strace -f” to guix-daemon?> > guix-daemon runs as root, so I wonder why we’re getting EACCES for> /root/.config/current/bin/guix.> > Thanks for reporting the issue,> Ludo’.
It popped up again. On the server:
strace -f /home/pjotr/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild &> /tmp/guix-daemon-strace.log
on the client
penguin2:~/izip/git/opensource/genenetwork/guix-gemma-dev$ ./pre-inst-env guix package -i conda --no-grafts
/gnu/store/8ahlc84zaj0iw9jpsdpa9wx4ms0s9cma-guix-daemon-0.15.0-1.4876bc8/libexec/guix/download: line 8: /root/.config/current/bin/guix: Permission denied /gnu/store/8ahlc84zaj0iw9jpsdpa9wx4ms0s9cma-guix-daemon-0.15.0-1.4876bc8/libexec/guix/download: line 8: exec: /root/.config/current/bin/guix: cannot execute: Permission denied builder for `/gnu/store/s2y18gwgyhsqp6p0kdznxq9qah38cbxv-ruamel.yaml-0.15.35.tar.gz.drv' failed with exit code 126
The strace starts with with a bunch of errors
execve("/home/pjotr/.config/guix/current/bin/guix-daemon", ["/home/pjotr/.config/guix/current"..., "--build-users-group=guixbuild"], [/* 22 vars */]) = 0brk(NULL) = 0x155e000mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8d5cd11000access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/tls", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/tls", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/tls", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/haswell/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/haswell/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/haswell/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/haswell", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/x86_64", 0x7ffdb9f16af0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 '\0\0\0\0\0\0"..., 832) = 832fstat(3, {st_mode=S_IFREG|0555, st_size=121128, ...}) = 0mmap(NULL, 2208128, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f8d5c8d3000mprotect(0x7f8d5c8ed000, 2097152, PROT_NONE) = 0mmap(0x7f8d5caed000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7f8d5caed000close(3) = 0openat(AT_FDCWD, "/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/vla5j7pbkpcp39lsdfsmz7m9azn48lr4-gcc-5.5.0-lib/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/haswell/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/haswell/x86_64", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/haswell/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/haswell", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/x86_64", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/tls", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/haswell/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/haswell/x86_64", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/haswell/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/haswell", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)stat("/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/x86_64", 0x7ffdb9f16ac0) = -1 ENOENT (No such file or directory)openat(AT_FDCWD, "/gnu/store/nrsjkmnh5gqpsyap9pz4hkmmdxxryhdh-sqlite-3.23.0/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = 3
and ends with
[pid 52405] <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 52427[pid 52405] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=52427, si_uid=999, si_status=0, si_utime=0, si_stime=0} ---[pid 52405] statfs("/gnu/store", {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=49254537, f_bfree=30544962, f_bavail=28025538, f_files=12582912, f_ffree=10500341, f_fsid={val=[9367051, 4063534803]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RELATIME}) = 0[pid 52405] statfs("/tmp/guix-build-ruamel.yaml-0.15.35.tar.gz.drv-0", {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=56770171, f_bfree=52693770, f_bavail=49792574, f_files=14491648, f_ffree=14179761, f_fsid={val=[3427961175, 3977194498]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RELATIME}) = 0[pid 52405] lstat("/tmp/guix-build-ruamel.yaml-0.15.35.tar.gz.drv-0", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0[pid 52405] openat(AT_FDCWD, "/tmp/guix-build-ruamel.yaml-0.15.35.tar.gz.drv-0", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 14[pid 52405] fstat(14, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0[pid 52405] getdents(14, /* 2 entries */, 32768) = 48[pid 52405] getdents(14, /* 0 entries */, 32768) = 0[pid 52405] close(14) = 0[pid 52405] unlink("/tmp/guix-build-ruamel.yaml-0.15.35.tar.gz.drv-0") = -1 EISDIR (Is a directory)[pid 52405] rmdir("/tmp/guix-build-ruamel.yaml-0.15.35.tar.gz.drv-0") = 0[pid 52405] futex(0x7f8d5b9ba190, FUTEX_WAKE_PRIVATE, 2147483647) = 0[pid 52405] write(4, "gmlo\0\0\0\0s\0\0\0\0\0\0\0builder for `/gn"..., 136) = 136[pid 52405] close(8) = 0[pid 52405] close(12) = 0[pid 52405] write(4, "gmlo\0\0\0\0\207\0\0\0\0\0\0\0cannot build der"..., 152) = 152[pid 52405] write(4, "gmlo\0\0\0\0y\0\0\0\0\0\0\0cannot build der"..., 144) = 144[pid 52405] write(4, "gmlo\0\0\0\0t\0\0\0\0\0\0\0cannot build der"..., 136) = 136[pid 52405] rt_sigaction(SIGIO, {sa_handler=SIG_IGN, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER, sa_restorer=0x7f8d5b425ac0}, {sa_handler=0x4092e0, sa_mask=~[KILL STOP RTMIN RT_1], sa_flags=SA_RESTORER, sa_restorer=0x7f8d5b425ac0}, 8) = 0[pid 52405] write(4, "ptxc\0\0\0\0I\0\0\0\0\0\0\0build of `/gnu/s"..., 104) = 104[pid 52405] read(4, "", 32768) = 0[pid 52405] close(10) = 0[pid 52405] close(11 <unfinished ...>[pid 52406] <... read resumed> "", 4096) = 0[pid 52405] <... close resumed> ) = 0[pid 52405] close(13) = 0[pid 52405] wait4(52406, <unfinished ...>[pid 52406] read(7, "", 4096) = 0[pid 52406] close(7) = 0[pid 52406] exit_group(0 <unfinished ...>[pid 52424] <... read resumed> ) = ? <unavailable>[pid 52423] <... read resumed> <unfinished ...>) = ?[pid 52422] <... futex resumed>) = ?[pid 52424] +++ exited with 0 +++[pid 52423] +++ exited with 0 +++[pid 52422] +++ exited with 0 +++[pid 52421] <... futex resumed>) = ?[pid 52420] <... futex resumed>) = ?[pid 52419] <... futex resumed>) = ?[pid 52418] <... futex resumed>) = ?[pid 52421] +++ exited with 0 +++[pid 52420] +++ exited with 0 +++[pid 52419] +++ exited with 0 +++[pid 52418] +++ exited with 0 +++[pid 52416] <... futex resumed>) = ?[pid 52415] <... futex resumed>) = ?[pid 52414] <... futex resumed>) = ?[pid 52413] <... futex resumed>) = ?[pid 52416] +++ exited with 0 +++[pid 52415] +++ exited with 0 +++[pid 52414] +++ exited with 0 +++[pid 52413] +++ exited with 0 +++[pid 52412] <... futex resumed>) = ?[pid 52411] <... futex resumed>) = ?[pid 52410] <... futex resumed>) = ?[pid 52409] <... futex resumed>) = ?[pid 52412] +++ exited with 0 +++[pid 52411] +++ exited with 0 +++[pid 52410] +++ exited with 0 +++[pid 52409] +++ exited with 0 +++[pid 52408] <... futex resumed>) = ?[pid 52407] <... futex resumed>) = ?[pid 52406] <... exit_group resumed>) = ?[pid 52408] +++ exited with 0 +++[pid 52407] +++ exited with 0 +++[pid 52406] +++ exited with 0 +++[pid 52405] <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 52406[pid 52405] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=52406, si_uid=0, si_status=0, si_utime=16, si_stime=8} ---[pid 52405] close(9) = 0[pid 52405] unlink("/var/guix/temproots/52405") = 0[pid 52405] stat("/var/guix/db/db.sqlite", {st_mode=S_IFREG|0644, st_size=52448256, ...}) = 0[pid 52405] fcntl(5, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=1073741824, l_len=1}) = 0[pid 52405] fcntl(5, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=1073741826, l_len=510}) = -1 EAGAIN (Resource temporarily unavailable)[pid 52405] munmap(0x7f8d5cd02000, 32768) = 0[pid 52405] munmap(0x7f8d5ccfa000, 32768) = 0[pid 52405] munmap(0x7f8d5ccf2000, 32768) = 0[pid 52405] munmap(0x7f8d5ccea000, 32768) = 0[pid 52405] close(7) = 0[pid 52405] close(6) = 0[pid 52405] fcntl(5, F_SETLK, {l_type=F_UNLCK, l_whence=SEEK_SET, l_start=1073741824, l_len=2}) = 0[pid 52405] fcntl(5, F_SETLK, {l_type=F_UNLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0[pid 52405] fstat(5, {st_mode=S_IFREG|0644, st_size=52448256, ...}) = 0[pid 52405] stat("/var/guix/db/db.sqlite", {st_mode=S_IFREG|0644, st_size=52448256, ...}) = 0[pid 52405] close(5) = 0[pid 52405] close(3) = 0[pid 52405] exit_group(0) = ?[pid 52405] +++ exited with 0 +++<... select resumed> ) = ? ERESTARTNOHAND (To be restarted if no handler)--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=52405, si_uid=0, si_status=0, si_utime=15, si_stime=22} ---wait4(-1, NULL, WNOHANG, NULL) = 52405wait4(-1, NULL, WNOHANG, NULL) = -1 ECHILD (No child processes)rt_sigreturn({mask=[]}) = -1 EINTR (Interrupted system call)select(4, [3], NULL, NULL, NULLstrace: Process 52384 detached <detached ...>
P
P
Pjotr Prins wrote on 17 Jul 2018 11:42
Re: [bug#32183] New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183@debbugs.gnu.org)
20180717094218.5bii4r5p5blgvqtb@thebird.nl
Also, using a year old guix client gives the same error. It is in thedaemon.
P
P
Pjotr Prins wrote on 17 Jul 2018 11:51
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183@debbugs.gnu.org)
20180717095155.onbjxxlljalbkpab@thebird.nl
On Tue, Jul 17, 2018 at 11:42:18AM +0200, Pjotr Prins wrote:
Toggle quote (3 lines)> Also, using a year old guix client gives the same error. It is in the> daemon.
And running an older daemon fixed it:
/gnu/store/4lk7j5693ikj7yiw2qpsbva5vkicxmp4-guix-0.14.0-13.7af5c2a/bin/guix-daemon --build-users-group=guixbuild
L
L
Leo Famulari wrote on 17 Jul 2018 21:15
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183@debbugs.gnu.org)
20180717191554.GA23234@jasmine.lan
On Tue, Jul 17, 2018 at 10:55:41AM +0200, Pjotr Prins wrote:
Toggle quote (2 lines)> > > Fails to build with below /gnu/store/8ahlc84zaj0iw9jpsdpa9wx4ms0s9cma-guix-daemon-0.15.0-1.4876bc8/libexec/guix/download: line 8: /root/.config/current/bin/guix: Permission denied
There must be a typo in the code somewhere. The path should be'/root/.config/guix/current/bin/guix'.Note the extra 'guix' pathcomponent.
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAltOQGcACgkQJkb6MLrKfwh1SxAAmL5ryIXA9p1miX4LX4M1k96vabm3iv06H+R3FT9lhPK0XsOraNES4fKTwNSpNgW712RuXO6vxZYea4rT1ao2owWZSdJOM641dpomAbNKWn7PwL6HVQYVftjZS8sFQzCVNktmmh0ay5nAFM1qrIBX8KVDzOc/BpT2tIwoSBUbypfJQdZWD++oVaAajAzIKm66JA8oLWbWCKJrleTh9wPZNwNKjIpQwaSPGQahUYRwjRvRrAAG9240E5cAuzCvklmv64q2ZfSgncyfcCl/5hieN7lvTHvMEZ+vshhW0Pj7xuXlxksqTxNSTqHyFP10Q2BaaVHoU+fsstPRvSj9Se9JC0x208Yvn7PeIx8d52C5bJYJlUrHF11xhVQKes95Vhg7Va/AxLn9PWNwc5I/eaK2weGc6OiFazFzcRLDjIIt2C1oYO8haQp+4KJKLNwI9tZOdcdGW2lLZbekIIcQiv7oTe4dszryvl8TNR9NBGGoSXVNrpXM0H9WIfn800vVCzIP0OSUMMSXYQG2lkk0ytDgEYLbYtsZT3pKeo7i01StZjXeIv/WW7fxmbIhOYUJt6rVmDqicDf83uVnb6MccTu0TVKE1BBqScrWApHGZkfZsIlcqH+v1QlpuFjCtd8cdV/Mq99aau5N9dpWuSS89mtgzrvn+ss85//muHVkOWOhM2A==Zyn+-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 18 Jul 2018 00:23
control message for bug #32183
(address . control@debbugs.gnu.org)
87bmb5sdqx.fsf@gnu.org
reassign 32183 guix
L
L
Ludovic Courtès wrote on 18 Jul 2018 00:28
Re: [bug#32183] New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Leo Famulari)(address . leo@famulari.name)
877eltsdio.fsf@gnu.org
Leo Famulari <leo@famulari.name> skribis:
Toggle quote (7 lines)> On Tue, Jul 17, 2018 at 10:55:41AM +0200, Pjotr Prins wrote:>> > > Fails to build with below /gnu/store/8ahlc84zaj0iw9jpsdpa9wx4ms0s9cma-guix-daemon-0.15.0-1.4876bc8/libexec/guix/download: line 8: /root/.config/current/bin/guix: Permission denied>> There must be a typo in the code somewhere. The path should be> '/root/.config/guix/current/bin/guix'.Note the extra 'guix' path> component.
Good catch! Fixed in 799dc53e9bfe605613cd2e7cb2c584282847fa84.
Thank you Leo & Pjotr.
Ludo’.
Closed
P
P
Pjotr Prins wrote on 24 Jul 2018 00:28
Re: [bug#32183] New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(address . 32183@debbugs.gnu.org)
20180723222855.osvahab6uo677nfd@thebird.nl
Not completely sorted. Not sure what is going wrong but now startingwith guix 0.14 daemon and client and running guix pull a few timessuccessfully, running guix-daemon from $HOME/.config/guix/current/binand guix from a fresh git checkout using ./pre-inst-env guix I get
substitute: /gnu/store/x02v3j0h5q1d9bl3lwxavp8m9rpm3b7m-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/substitute: line 8: /root/.config/guix/current/bin/guix: No such file or directory
which is funny for two reasons - 1st this is a guix-daemon thatappears to be older (it is the same) referring to a directory thatdoes not exist - guix pull is in my $HOME/.config.
Note that it still downloads binaries, but won't do the finalsymlinks in the profile.
On this machine I am stuck because whatever I do I get this error.Only rolling back to 0.14 allows me to install software againincluding guix. But then it stops in its tracks with above.
Pj.
L
L
Ludovic Courtès wrote on 26 Jul 2018 15:50
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183@debbugs.gnu.org)
87tvomxfzy.fsf@gnu.org
Hi Pjotr,
Pjotr Prins <pjotr.public12@thebird.nl> skribis:
Toggle quote (11 lines)> Not completely sorted. Not sure what is going wrong but now starting> with guix 0.14 daemon and client and running guix pull a few times> successfully, running guix-daemon from $HOME/.config/guix/current/bin> and guix from a fresh git checkout using ./pre-inst-env guix I get>> substitute: /gnu/store/x02v3j0h5q1d9bl3lwxavp8m9rpm3b7m-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/substitute: line 8: /root/.config/guix/current/bin/guix: No such file or directory>> which is funny for two reasons - 1st this is a guix-daemon that> appears to be older (it is the same) referring to a directory that> does not exist - guix pull is in my $HOME/.config.
Since ‘guix-daemon’ runs as root, the ‘guix-daemon’ package¹ assumesthat ~root/.config/guix/current/bin/guix exists. In fact, the only wayyou can install the ‘guix-daemon’ package is by running ‘guix pull’, andif you run ‘guix-daemon’ you run it as root, so ~root/.config/guixnecessarily exists.
Or could it be that you’re running ‘guix-daemon’ from~/.config/guix/current as non-root? That would indeed fail.
In fact it may be enough to do:
exec ~/.config/guix/current/bin/guix …
instead of:
exec ~root/.config/guix/current/bin/guix …
in that ‘install’ phase of ‘guix-daemon’.
Thanks,Ludo’.
¹ https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/package-management.scm#n301
L
L
Ludovic Courtès wrote on 2 Sep 2018 15:55
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183@debbugs.gnu.org)
871sacats5.fsf@gnu.org
Hi Pjotr,
What was the outcome of this bug?
https://bugs.gnu.org/32183
If it wasn’t resolved, could you answer the questions below?
Thanks in advance!
Ludo’.
ludo@gnu.org (Ludovic Courtès) skribis:
Toggle quote (38 lines)> Hi Pjotr,>> Pjotr Prins <pjotr.public12@thebird.nl> skribis:>>> Not completely sorted. Not sure what is going wrong but now starting>> with guix 0.14 daemon and client and running guix pull a few times>> successfully, running guix-daemon from $HOME/.config/guix/current/bin>> and guix from a fresh git checkout using ./pre-inst-env guix I get>>>> substitute: /gnu/store/x02v3j0h5q1d9bl3lwxavp8m9rpm3b7m-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/substitute: line 8: /root/.config/guix/current/bin/guix: No such file or directory>>>> which is funny for two reasons - 1st this is a guix-daemon that>> appears to be older (it is the same) referring to a directory that>> does not exist - guix pull is in my $HOME/.config.>> Since ‘guix-daemon’ runs as root, the ‘guix-daemon’ package¹ assumes> that ~root/.config/guix/current/bin/guix exists. In fact, the only way> you can install the ‘guix-daemon’ package is by running ‘guix pull’, and> if you run ‘guix-daemon’ you run it as root, so ~root/.config/guix> necessarily exists.>> Or could it be that you’re running ‘guix-daemon’ from> ~/.config/guix/current as non-root? That would indeed fail.>> In fact it may be enough to do:>> exec ~/.config/guix/current/bin/guix …>> instead of:>> exec ~root/.config/guix/current/bin/guix …>> in that ‘install’ phase of ‘guix-daemon’.>> Thanks,> Ludo’.>> ¹ https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/package-management.scm#n301
P
P
Pjotr Prins wrote on 2 Sep 2018 16:28
Re: bug#32183: New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(name . Ludovic Courtès)(address . ludo@gnu.org)
20180902142855.llzongao3kraunys@thebird.nl
On Sun, Sep 02, 2018 at 03:55:06PM +0200, Ludovic Courtès wrote:
Toggle quote (8 lines)> Hi Pjotr,> > What was the outcome of this bug?> > https://bugs.gnu.org/32183> > If it wasn’t resolved, could you answer the questions below?
I still face this problem on one or two machines. I am running astandard setup. Not sure what it is.
But since no one else is reporting I think it must be because I amrunning some earlier tree checkout too for deployment. Something gotmessed up.
You can close this issue for now. I'll simply reinstall Guix on thesemachines and start building a recent tree.
Toggle quote (45 lines)> Thanks in advance!> > Ludo’.> > ludo@gnu.org (Ludovic Courtès) skribis:> > > Hi Pjotr,> >> > Pjotr Prins <pjotr.public12@thebird.nl> skribis:> >> >> Not completely sorted. Not sure what is going wrong but now starting> >> with guix 0.14 daemon and client and running guix pull a few times> >> successfully, running guix-daemon from $HOME/.config/guix/current/bin> >> and guix from a fresh git checkout using ./pre-inst-env guix I get> >>> >> substitute: /gnu/store/x02v3j0h5q1d9bl3lwxavp8m9rpm3b7m-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/substitute: line 8: /root/.config/guix/current/bin/guix: No such file or directory> >>> >> which is funny for two reasons - 1st this is a guix-daemon that> >> appears to be older (it is the same) referring to a directory that> >> does not exist - guix pull is in my $HOME/.config.> >> > Since ‘guix-daemon’ runs as root, the ‘guix-daemon’ package¹ assumes> > that ~root/.config/guix/current/bin/guix exists. In fact, the only way> > you can install the ‘guix-daemon’ package is by running ‘guix pull’, and> > if you run ‘guix-daemon’ you run it as root, so ~root/.config/guix> > necessarily exists.> >> > Or could it be that you’re running ‘guix-daemon’ from> > ~/.config/guix/current as non-root? That would indeed fail.> >> > In fact it may be enough to do:> >> > exec ~/.config/guix/current/bin/guix …> >> > instead of:> >> > exec ~root/.config/guix/current/bin/guix …> >> > in that ‘install’ phase of ‘guix-daemon’.> >> > Thanks,> > Ludo’.> >> > ¹ https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/package-management.scm#n301>
L
L
Ludovic Courtès wrote on 2 Sep 2018 22:04
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)(address . 32183-done@debbugs.gnu.org)
87efeb64z3.fsf@gnu.org
Hi,
Pjotr Prins <pjotr.public12@thebird.nl> skribis:
Toggle quote (16 lines)> On Sun, Sep 02, 2018 at 03:55:06PM +0200, Ludovic Courtès wrote:>> Hi Pjotr,>> >> What was the outcome of this bug?>> >> https://bugs.gnu.org/32183>> >> If it wasn’t resolved, could you answer the questions below?>> I still face this problem on one or two machines. I am running a> standard setup. Not sure what it is.>> But since no one else is reporting I think it must be because I am> running some earlier tree checkout too for deployment. Something got> messed up.
OK. Do reopen it if it shows up again.
Thanks,Ludo’.
Closed
K
K
Konrad Hinsen wrote on 5 Sep 2018 17:27
Me too!
(address . 32183@debbugs.gnu.org)
m15zzkq81h.fsf@fastmail.net
Hi Ludo and Pjotr,
I just ran into this bug as well:
./pre-inst-env guix build python-matplotlib @ build-started /gnu/store/33hf690qiwrvr0y59g9xwz6rpf3mmbj6-matplotlib-2.2.3.tar.gz.drv - x86_64-linux /var/log/guix/drvs/33//hf690qiwrvr0y59g9xwz6rpf3mmbj6-matplotlib-2.2.3.tar.gz.drv.bz2 /gnu/store/1w41y8q12r3dw8iphl5rpkr508881y50-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied /gnu/store/1w41y8q12r3dw8iphl5rpkr508881y50-guix-daemon-0.15.0-2.8bbb79c/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied ... (resulting build failure etc., nothing interesting)
This is on recent source code checkout (commitfefe17b0888b467383ea91fed73a9586295c49f0) with a small modification(update of hdf5 to 1.10.3).
My guix-daemon is started via systemd at boot time, so it should run asroot. It's from root's guix, which is about two weeks old and has notcaused any trouble before.
Konrad.
P
P
Pjotr Prins wrote on 6 Sep 2018 23:10
Re: bug#32183: New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(name . Ludovic Courtès)(address . ludo@gnu.org)
20180906211033.nszav6ubctku737d@thebird.nl
On Sun, Sep 02, 2018 at 10:04:32PM +0200, Ludovic Court�s wrote:
Toggle quote (2 lines)> OK. Do reopen it if it shows up again.
Just to report that I did a successful install on one of thosemachines. Starting with a 0.14 guix as root
guix pull
restarted daemon using the new one in /root/.config/current/bin/
switched to normal user using the guix pointed in that directory
/gnu/store/47hhyj0l4nk4na09qx1b66sz1wvpx95i-guix-command pull
Next I could run
~/.config/current/bin/guix ...
everything appeared hunky dory until I need to build a package
/gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied builder for `/gnu/store/2q486ivskp2vm2rq10rs4pq949zkcz8h-evaluate_0.11.tar.gz.drv' failed with exit code 126 cannot build derivation `/gnu/store/qaaf8i893x0ivfnw6q19l0rq5gkmlbmj-r-evaluate-0.11.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/frxjc6iwwflasmj3wcm5s2934mgziaj6-r-fansi-0.3.0.drv': 1 dependencies couldn't be built cannot build derivation `/gnu/store/p3d9km0fi423nl66q5ncvkxcnj2kz6bv-r-rsqlite-2.1.1.drv': 1 dependencies couldn't be built guix package: error: build failed: build of `/gnu/store/p3d9km0fi423nl66q5ncvkxcnj2kz6bv-r-rsqlite-2.1.1.drv' failed
Again as root I did another guix pull. It instates the same daemon
/root/.config/guix/current/bin/guix-daemon -> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/bin/guix-daemon
Now guix pull fails in $USER
which guix /home/wrk/.config/guix/current/bin/guix
guix pull
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... Building from this channel: guix https://git.savannah.gnu.org/git/guix.git 91cc2a3 guile: warning: failed to install locale substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0% substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0% Downloading https://mirror.hydra.gnu.org/guix/nar/gzip/xw7kc681ivcls1lpp0qy0xljljzd70dr-groff-1.22.3... groff-1.22.3 2.7MiB 1.2MiB/s 00:02 [##################] 100.0%
/gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied builder for `/gnu/store/24ag580271wa640529ycykdwj0lk0g6z-curl-7.61.1.tar.xz.drv' failed with exit code 126 cannot build derivation `/gnu/store/17lw3svpjqygpj739yynyz6b8abddikx-curl-7.61.1.drv': 1 dependencies couldn't be built Backtrace: 18 (primitive-load "/gnu/store/blfsj798qh4i2pmrcvyaidmsdiz?") In ice-9/eval.scm: 155:9 17 (_ _)
Can you think of a way of getting out of this loop? What am I doing wrong here?
Pj.
Closed
P
P
Pjotr Prins wrote on 9 Sep 2018 09:20
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
20180909072004.nxdwhrtyob53uznz@thebird.nl
Dear Ludo,
If I understand 'guix pull' correctly below should simply not bepossible, right? I mean, once you do a guix pull you have the latestand the greatest and there should be no interference? Intriguinglythis does not happen on all my systems, just on 2 - notably my laptopI am using in Southern France ;)
Pj.
On Thu, Sep 06, 2018 at 11:10:33PM +0200, Pjotr Prins wrote:
Toggle quote (61 lines)> On Sun, Sep 02, 2018 at 10:04:32PM +0200, Ludovic Court�s wrote:> > OK. Do reopen it if it shows up again.> > Just to report that I did a successful install on one of those> machines. Starting with a 0.14 guix as root> > guix pull> > restarted daemon using the new one in /root/.config/current/bin/> > switched to normal user using the guix pointed in that directory> > /gnu/store/47hhyj0l4nk4na09qx1b66sz1wvpx95i-guix-command pull> > Next I could run > > ~/.config/current/bin/guix ...> > everything appeared hunky dory until I need to build a package> > /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied> builder for `/gnu/store/2q486ivskp2vm2rq10rs4pq949zkcz8h-evaluate_0.11.tar.gz.drv' failed with exit code 126> cannot build derivation `/gnu/store/qaaf8i893x0ivfnw6q19l0rq5gkmlbmj-r-evaluate-0.11.drv': 1 dependencies couldn't be built> cannot build derivation `/gnu/store/frxjc6iwwflasmj3wcm5s2934mgziaj6-r-fansi-0.3.0.drv': 1 dependencies couldn't be built> cannot build derivation `/gnu/store/p3d9km0fi423nl66q5ncvkxcnj2kz6bv-r-rsqlite-2.1.1.drv': 1 dependencies couldn't be built> guix package: error: build failed: build of `/gnu/store/p3d9km0fi423nl66q5ncvkxcnj2kz6bv-r-rsqlite-2.1.1.drv' failed> > Again as root I did another guix pull. It instates the same daemon> > /root/.config/guix/current/bin/guix-daemon -> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/bin/guix-daemon> > Now guix pull fails in $USER> > which guix> /home/wrk/.config/guix/current/bin/guix> > guix pull> > Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...> Building from this channel:> guix https://git.savannah.gnu.org/git/guix.git 91cc2a3> guile: warning: failed to install locale> substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0%> substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0%> Downloading https://mirror.hydra.gnu.org/guix/nar/gzip/xw7kc681ivcls1lpp0qy0xljljzd70dr-groff-1.22.3...> groff-1.22.3 2.7MiB 1.2MiB/s 00:02 [##################] 100.0%> > /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied> builder for `/gnu/store/24ag580271wa640529ycykdwj0lk0g6z-curl-7.61.1.tar.xz.drv' failed with exit code 126> cannot build derivation `/gnu/store/17lw3svpjqygpj739yynyz6b8abddikx-curl-7.61.1.drv': 1 dependencies couldn't be built> Backtrace:> 18 (primitive-load "/gnu/store/blfsj798qh4i2pmrcvyaidmsdiz?")> In ice-9/eval.scm:> 155:9 17 (_ _)> > Can you think of a way of getting out of this loop? What am I doing wrong here?> > Pj.>
Closed
P
P
Pjotr Prins wrote on 9 Sep 2018 16:02
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
20180909140225.ggrygcwf7l6jnxsw@thebird.nl
It is working now. After a guix pull I did a guix package -i guix in anew profile. Restarting the daemon from there it stopped complaining!
I don't know why the deamon from guix pull straight was not working,but at least guix is building again.
Pj.
Closed
L
L
Ludovic Courtès wrote on 9 Sep 2018 16:44
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
87zhwq91dc.fsf@gnu.org
Hello,
Pjotr Prins <pjotr.public12@thebird.nl> skribis:
Toggle quote (22 lines)> guix pull>> Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...> Building from this channel:> guix https://git.savannah.gnu.org/git/guix.git 91cc2a3> guile: warning: failed to install locale> substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0%> substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0%> Downloading https://mirror.hydra.gnu.org/guix/nar/gzip/xw7kc681ivcls1lpp0qy0xljljzd70dr-groff-1.22.3...> groff-1.22.3 2.7MiB 1.2MiB/s 00:02 [##################] 100.0%>> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied> builder for `/gnu/store/24ag580271wa640529ycykdwj0lk0g6z-curl-7.61.1.tar.xz.drv' failed with exit code 126> cannot build derivation `/gnu/store/17lw3svpjqygpj739yynyz6b8abddikx-curl-7.61.1.drv': 1 dependencies couldn't be built> Backtrace:> 18 (primitive-load "/gnu/store/blfsj798qh4i2pmrcvyaidmsdiz?")> In ice-9/eval.scm:> 155:9 17 (_ _)>> Can you think of a way of getting out of this loop? What am I doing wrong here?
I don’t think you’re doing anything wrong. Could anyone of you whoexperience this problem strace guix-daemon? I’ve thought about this anddon’t understand where that EACCES (“Permission denied”) comes from.
Specifically, you’d have to run something along these lines as root:
strace -f -p $(pidof guix-daemon) -o log
and then, as root or non-root (it doesn’t matter), run, say:
guix build curl -S --no-substitutes
Thanks in advance!
Ludo’.
K
K
Konrad Hinsen wrote on 11 Sep 2018 11:34
(address . 32183@debbugs.gnu.org)
m1y3c89y3a.fsf@fastmail.net
Hi Ludo,
Toggle quote (12 lines)> I don’t think you’re doing anything wrong. Could anyone of you who> experience this problem strace guix-daemon? I’ve thought about this and> don’t understand where that EACCES (“Permission denied”) comes from.>> Specifically, you’d have to run something along these lines as root:>> strace -f -p $(pidof guix-daemon) -o log>> and then, as root or non-root (it doesn’t matter), run, say:>> guix build curl -S --no-substitutes
The log file (compressed) is attached.
In doing this I noticed that I have two guix-daemon processes running:
root 1583 0.0 0.0 33156 2412 ? Ss 08:55 0:00 /root/.config/guix/current/bin/guix-daemon --build-users-group=guixbuildroot 13003 0.0 0.0 36028 6256 ? Ss 11:28 0:00 /root/.config/guix/current/bin/guix-daemon 12770
I ran strace on the first one.
Konrad.
L
L
Ludovic Courtès wrote on 11 Sep 2018 12:12
(name . Konrad Hinsen)(address . konrad.hinsen@fastmail.net)
87zhwo9wcg.fsf@gnu.org
Hi Konrad,
Konrad Hinsen <konrad.hinsen@fastmail.net> skribis:
Toggle quote (17 lines)>> Specifically, you’d have to run something along these lines as root:>>>> strace -f -p $(pidof guix-daemon) -o log>>>> and then, as root or non-root (it doesn’t matter), run, say:>>>> guix build curl -S --no-substitutes>> The log file (compressed) is attached.>> In doing this I noticed that I have two guix-daemon processes running:>> root 1583 0.0 0.0 33156 2412 ? Ss 08:55 0:00 /root/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild> root 13003 0.0 0.0 36028 6256 ? Ss 11:28 0:00 /root/.config/guix/current/bin/guix-daemon 12770>> I ran strace on the first one.
Ooh, I see. The log shows this:
Toggle snippet (18 lines)13795 setgroups(1, [999]) = 013795 setgid(999) = 013795 getgid() = 99913795 getegid() = 99913795 setuid(499) = 013795 getuid() = 49913795 geteuid() = 499
[...]
13795 execve("/gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download", ["download", "/gnu/store/j3swd19y4wzv6nrr13bv7"..., "/gnu/store/rdlndkf50sn0jq7bqkbhm"...], 0xa26f60 /* 17 vars */) = 0
[...]
13795 execve("/root/.config/guix/current/bin/guix", ["/root/.config/guix/current/bin/g"..., "perform-download", "/gnu/store/j3swd19y4wzv6nrr13bv7"..., "/gnu/store/rdlndkf50sn0jq7bqkbhm"...], 0x6c0530 /* 19 vars */) = -1 EACCES (Permission denied)13795 stat("/root/.config/guix/current/bin/guix", 0x7fffffffe1d0) = -1 EACCES (Permission denied)
The download process is running as a build user, not as root, hence thepermission issue (silly me!).
Now we need to find a way to use ‘guix’ from root’s~/.config/guix/current. A solution may be to expose that profile under/var/guix/profiles. Needs more thought…
Thanks for helping out!
Ludo’.
L
L
Ludovic Courtès wrote on 11 Sep 2018 12:13
control message for bug #32183
(address . control@debbugs.gnu.org)
87wors9wax.fsf@gnu.org
severity 32183 important
P
P
Pjotr Prins wrote on 11 Sep 2018 15:23
Re: bug#32183: New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(name . Ludovic Courtès)(address . ludo@gnu.org)
20180911132313.7qtypjdc6y5ykjxd@thebird.nl
On Tue, Sep 11, 2018 at 12:12:15PM +0200, Ludovic Courtès wrote:
Toggle quote (7 lines)> The download process is running as a build user, not as root, hence the> permission issue (silly me!).> > Now we need to find a way to use ‘guix’ from root’s> ~/.config/guix/current. A solution may be to expose that profile under> /var/guix/profiles. Needs more thought…
Great! Any quick hacks to fix this? Even when I set all permissions open I get in the latest tree
./pre-inst-env guix package -i r-rqda -p ~/opt/rqda --substitute-urls="https://berlin.guixsd.org" --verbose
Building /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - x86_64-linux/gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied/gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission deniedbuilder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code 126Build failed: /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - 1 builder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code
P
P
Pjotr Prins wrote on 11 Sep 2018 15:58
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
20180911135839.kffwkj7hmwe3f2w5@thebird.nl
On Tue, Sep 11, 2018 at 03:23:13PM +0200, Pjotr Prins wrote:
Toggle quote (18 lines)> On Tue, Sep 11, 2018 at 12:12:15PM +0200, Ludovic Courtès wrote:> > The download process is running as a build user, not as root, hence the> > permission issue (silly me!).> > > > Now we need to find a way to use ‘guix’ from root’s> > ~/.config/guix/current. A solution may be to expose that profile under> > /var/guix/profiles. Needs more thought…> > Great! Any quick hacks to fix this? Even when I set all permissions open I get in the latest tree> > ./pre-inst-env guix package -i r-rqda -p ~/opt/rqda --substitute-urls="https://berlin.guixsd.org" --verbose> > Building /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - x86_64-linux> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied> builder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code 126> Build failed: /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - 1 builder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code
Hmmm. It fixed itself when I added the mirror substitute URL again.After that it successfully built ghostscript. Looks like the buildingproblem only exists in the pre-building track of guix where it buildspackages for its own use?
L
L
Ludovic Courtès wrote on 11 Sep 2018 16:26
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
87in3c9kkc.fsf@gnu.org
Pjotr Prins <pjotr.public12@thebird.nl> skribis:
Toggle quote (10 lines)> On Tue, Sep 11, 2018 at 12:12:15PM +0200, Ludovic Courtès wrote:>> The download process is running as a build user, not as root, hence the>> permission issue (silly me!).>> >> Now we need to find a way to use ‘guix’ from root’s>> ~/.config/guix/current. A solution may be to expose that profile under>> /var/guix/profiles. Needs more thought…>> Great! Any quick hacks to fix this?
A quick workaround is to run ‘guix-daemon’ from the ‘guix’ package. So,as root, you’d do:
guix pull # if you haven’t done it recently guix package -i guix # to install or upgrade guix
Then make sure your systemd (or whatever) config file returns to/var/guix/profiles/per-user/root/guix-profile/bin/guix-daemon as itdoes when you install Guix from the binary tarball.
HTH!
Ludo’.
L
L
Ludovic Courtès wrote on 11 Sep 2018 16:27
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
87efe09kj8.fsf@gnu.org
Pjotr Prins <pjotr.public12@thebird.nl> skribis:
Toggle quote (24 lines)> On Tue, Sep 11, 2018 at 03:23:13PM +0200, Pjotr Prins wrote:>> On Tue, Sep 11, 2018 at 12:12:15PM +0200, Ludovic Courtès wrote:>> > The download process is running as a build user, not as root, hence the>> > permission issue (silly me!).>> > >> > Now we need to find a way to use ‘guix’ from root’s>> > ~/.config/guix/current. A solution may be to expose that profile under>> > /var/guix/profiles. Needs more thought…>> >> Great! Any quick hacks to fix this? Even when I set all permissions open I get in the latest tree>> >> ./pre-inst-env guix package -i r-rqda -p ~/opt/rqda --substitute-urls="https://berlin.guixsd.org" --verbose>> >> Building /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - x86_64-linux>> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: /root/.config/guix/current/bin/guix: Permission denied>> /gnu/store/sf84mb2y5vcykwq9fv02l2nipp34qng2-guix-daemon-0.15.0-3.3d43017/libexec/guix/download: line 8: exec: /root/.config/guix/current/bin/guix: cannot execute: Permission denied>> builder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code 126>> Build failed: /gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv - 1 builder for `/gnu/store/nknybsl5a9wnfgd9bs13fzmjwa382ys2-libgcrypt-1.8.3.tar.bz2.drv' failed with exit code>> Hmmm. It fixed itself when I added the mirror substitute URL again.> After that it successfully built ghostscript. Looks like the building> problem only exists in the pre-building track of guix where it builds> packages for its own use?
The issue affects downloads only (fixed-output derivations, notsubstitutes.)
Ludo’.
L
L
Ludovic Courtès wrote on 11 Oct 2018 18:32
(name . Pjotr Prins)(address . pjotr.public12@thebird.nl)
87o9c030mj.fsf@gnu.org
Hi there!
I believe commit ed9d7cb4d95f8f4776e6fee2778ab52bc2852969 fixes it.
That is, if you run ‘guix pull’ as root and then start~/.config/guix/current/bin/guix-daemon, everything should be fine.
Thanks,Ludo’.
Closed
K
K
Konrad Hinsen wrote on 12 Oct 2018 08:59
Re: bug#32183: New ‘guix pull’ /root/.con fig/current/bin/guix: Permission denied
(address . 32183-done@debbugs.gnu.org)
8ee7a13c-5c91-0165-4b4e-5c54ec1cc7c4@fastmail.net
Hi Ludo,
Toggle quote (4 lines)> I believe commit ed9d7cb4d95f8f4776e6fee2778ab52bc2852969 fixes it.>> That is, if you run ‘guix pull’ as root and then start> ~/.config/guix/current/bin/guix-daemon, everything should be fine.
Let's say the bug seems to be elsewhere now ;-)
When I try to build something after following your instructions, I get the error message
/gnu/store/bkkf11ixn67cwcw05nw9w9yd68i4jf23-guix-daemon-0.15.0-5.1d0be47/libexec/guix/download: line 8: /var/guix/profiles/per-user/root/current-guix/bin/guix: No such file or directory
And indeed there is no guix at that place. I guess it should be
/var/guix/profiles/per-user/root/guix-profile/bin/guix
I can try fixing the download script and testing again, but not before next week, sorry!
Konrad.
Closed
L
L
Ludovic Courtès wrote on 12 Oct 2018 14:57
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Konrad Hinsen)(address . konrad.hinsen@fastmail.net)
87o9bziapa.fsf@gnu.org
Hello,
Konrad Hinsen <konrad.hinsen@fastmail.net> skribis:
Toggle quote (13 lines)>> I believe commit ed9d7cb4d95f8f4776e6fee2778ab52bc2852969 fixes it.>>>> That is, if you run ‘guix pull’ as root and then start>> ~/.config/guix/current/bin/guix-daemon, everything should be fine.> Let's say the bug seems to be elsewhere now ;-)>> When I try to build something after following your instructions, I get> the error message>> /gnu/store/bkkf11ixn67cwcw05nw9w9yd68i4jf23-guix-daemon-0.15.0-5.1d0be47/libexec/guix/download:> line 8: /var/guix/profiles/per-user/root/current-guix/bin/guix: No> such file or directory
Hmm you might need to run, say, ‘guix pull -l’, to make this scriptmagically appear. :-)
Concretely, the new ‘guix pull’ migrates things from ~/.config/guix to/var/guix/profiles the first time you run it, but it may be that youhaven’t yet run the *new* ‘guix pull’.
HTH,Ludo’.
Closed
P
P
Pjotr Prins wrote on 14 Oct 2018 20:12
Re: bug#32183: New ‘guix p ull’ /root/.config/current/bin/guix: Permission denied
(name . Ludovic Courtès)(address . ludo@gnu.org)
20181014181218.qeu7sctebqacqhlp@thebird.nl
On Thu, Oct 11, 2018 at 06:32:20PM +0200, Ludovic Courtès wrote:
Toggle quote (7 lines)> Hi there!> > I believe commit ed9d7cb4d95f8f4776e6fee2778ab52bc2852969 fixes it.> > That is, if you run ‘guix pull’ as root and then start> ~/.config/guix/current/bin/guix-daemon, everything should be fine.
It works on one problematic machine. Thanks!
Pj.
Closed
K
K
Konrad Hinsen wrote on 15 Oct 2018 13:59
Re: bug#32183: New ‘guix pull’ /root/.con fig/current/bin/guix: Permission denied
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 32183-done@debbugs.gnu.org)
28305e01-cf3e-0731-4aaf-34eb516fb958@fastmail.net
Hi Ludo,
Toggle quote (7 lines)> Hmm you might need to run, say, ‘guix pull -l’, to make this script> magically appear. :-)>> Concretely, the new ‘guix pull’ migrates things from ~/.config/guix to> /var/guix/profiles the first time you run it, but it may be that you> haven’t yet run the *new* ‘guix pull’.
That looks like the right direction, since running "guix pull -l" starts by saying
   Migrating profile generations to '/var/guix/profiles/per-user/root'...
Unfortunately, its next statement is just as magic but less pleasant:
Backtrace:            6 (primitive-load "/root/.config/guix/current/bin/guix")In guix/ui.scm:   1583:12  5 (run-guix-command _ . _)In ice-9/boot-9.scm:     829:9  4 (catch srfi-34 #<procedure 337dc80 at guix/ui.scm:615:…> …)     829:9  3 (catch system-error #<procedure 337dd20 at guix/script…> …)     829:9  2 (catch git-error #<procedure 337dbe0 at guix/scripts/p…> …)     829:9  1 (catch system-error #<procedure 3391a60 at guix/script…> …)In unknown file:            0 (raise #<condition &profile-not-found-error [profile: "…>)
ERROR: In procedure raise:Wrong type (expecting exact integer): #<condition &profile-not-found-error [profile: "/var/guix/profiles/per-user/root/current-guix"] 338b460>

This looks like an error in an error-raising procedure, something like  a meta-error ;-)
Looking at
  ~# ls -l /var/guix/profiles/per-user/root/current-guix    lrwxrwxrwx 1 root root 14 oct.  15 13:51 /var/guix/profiles/per-user/root/current-guix -> current-4-link
yields  a link that is indeed missing. What I do have is current-guix-4-link, but not a plain current-4-link.
Konrad.
Closed
L
L
Ludovic Courtès wrote on 15 Oct 2018 21:33
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . Konrad Hinsen)(address . konrad.hinsen@fastmail.net)(address . 32183-done@debbugs.gnu.org)
87h8hnc8dr.fsf@gnu.org
Hi Konrad,
Konrad Hinsen <konrad.hinsen@fastmail.net> skribis:
Toggle quote (3 lines)> This looks like an error in an error-raising procedure, something> like  a meta-error ;-)
The horror bug department worked hard to deliver this one. :-)
Toggle quote (9 lines)> Looking at>>   ~# ls -l /var/guix/profiles/per-user/root/current-guix>    lrwxrwxrwx 1 root root 14 oct.  15 13:51> /var/guix/profiles/per-user/root/current-guix -> current-4-link>> yields  a link that is indeed missing. What I do have is> current-guix-4-link, but not a plain current-4-link.
Yes, it’s one of the thinkos I made, fixed inaa227b3be3d7728331a08dbd139c47c9b271dc23.
If you’re familiar with Dired in Emacs, I’d suggest opening/var/guix/profiles/per-user/root and fixing the symlink targets fromthere (with C-c C-q).
If not I can try and come up with a script to do that.
Apologies for the mess!
Ludo’.
Closed
K
K
Konrad Hinsen wrote on 16 Oct 2018 12:41
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 32183-done@debbugs.gnu.org)
m1efcqxjgi.fsf@fastmail.net
Hi Ludo,
Toggle quote (4 lines)> If you’re familiar with Dired in Emacs, I’d suggest opening> /var/guix/profiles/per-user/root and fixing the symlink targets from> there (with C-c C-q).
Done. And after rebooting, guix seems to work fine for root, includingthe download phase. Meaning that I consider this bug fixed.
But there still seems to be some collateral damage, since I could notuse "guix pull" any more on my standard user account:
$ guix pull Migrating profile generations to '/var/guix/profiles/per-user/hinsen'... guix pull: error: rename-file: Invalid cross-device link
This looks like guix is trying to use a hard link instead of a symboliclink somewhere. I found a way around which I describe here for thebenefit of others who might find themselves in the same situation:
- check out a local copy of the Guix repository - configure and make as described in the manual - ./pre-inst-env guix pull
That does the profile migration using the very latest code. After thatthe standard guix command seems to work fine again.
Konrad.
Closed
L
L
Ludovic Courtès wrote on 17 Oct 2018 10:44
(name . Konrad Hinsen)(address . konrad.hinsen@fastmail.net)(address . 32183-done@debbugs.gnu.org)
87tvlldktg.fsf@gnu.org
Hello Konrad,
Konrad Hinsen <konrad.hinsen@fastmail.net> skribis:
Toggle quote (7 lines)> But there still seems to be some collateral damage, since I could not> use "guix pull" any more on my standard user account:>> $ guix pull> Migrating profile generations to '/var/guix/profiles/per-user/hinsen'...> guix pull: error: rename-file: Invalid cross-device link
This was fixed in a subsequent commit:
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=8036b0942b89022147aaf9cd9940988fdbcc19ef
To work around it, you can pull from an older generation, along theselines:
~/.config/guix/current-42-link/bin/guix pull
(This will work because this older guix won’t attempt to move yourgenerations to /var/guix/profiles, so it allows you to “jump over” thebug.)
Let me know how it goes!
It’s terrible that a function like this that looks trivial has beencausing so much trouble. Sorry about that. :-/
Ludo’.
Closed
K
K
Konrad Hinsen wrote on 17 Oct 2018 11:17
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 32183-done@debbugs.gnu.org)
m1efcpylsq.fsf@fastmail.net
Hi Ludo,
Toggle quote (11 lines)> To work around it, you can pull from an older generation, along these> lines:>> ~/.config/guix/current-42-link/bin/guix pull>> (This will work because this older guix won’t attempt to move your> generations to /var/guix/profiles, so it allows you to “jump over” the> bug.)>> Let me know how it goes!
I cannot try any more because I already used another workaround, meaningthat my profiles are properly migrated.
Toggle quote (3 lines)> It’s terrible that a function like this that looks trivial has been> causing so much trouble. Sorry about that. :-/
Lesson learned: avoid messing around with mutable state. How aboutcreating a functional package manager? ;-)
Konrad.
Closed
L
L
Ludovic Courtès wrote on 18 Oct 2018 01:06
(name . Konrad Hinsen)(address . konrad.hinsen@fastmail.net)(address . 32183-done@debbugs.gnu.org)
87murc9nqp.fsf@gnu.org
Konrad Hinsen <konrad.hinsen@fastmail.net> skribis:
Toggle quote (14 lines)>> To work around it, you can pull from an older generation, along these>> lines:>>>> ~/.config/guix/current-42-link/bin/guix pull>>>> (This will work because this older guix won’t attempt to move your>> generations to /var/guix/profiles, so it allows you to “jump over” the>> bug.)>>>> Let me know how it goes!>> I cannot try any more because I already used another workaround, meaning> that my profiles are properly migrated.
Good.
Toggle quote (6 lines)>> It’s terrible that a function like this that looks trivial has been>> causing so much trouble. Sorry about that. :-/>> Lesson learned: avoid messing around with mutable state. How about> creating a functional package manager? ;-)
That’s an idea worth pondering. :-)
Ludo’.
Closed
S
S
swedebugia wrote on 2 Nov 2018 15:38
Re: bug#32183: New ‘guix pull’ /root/.con fig/current/bin/guix: Permission denied
(address . 32183-done@debbugs.gnu.org)
3a0b6575-0def-bd64-b725-01190797f794@riseup.net
Hi
On 2018-10-17 11:17, Konrad Hinsen wrote:
Toggle quote (3 lines)>> Lesson learned: avoid messing around with mutable state. How about> creating a functional package manager? ;-)
LOL
This whole update to guix pull was somewhat a breaking change, but unfortunately it was very hard to imagine the repercussions (horrible bugs) down the line...
Could it have been completely avoided by introducing it as such and forced people to reinstall/upgrade by reinstall (overwriting all files and invalidating the store etc.)?
-- CheersSwedebugia
Closed
L
L
Ludovic Courtès wrote on 3 Nov 2018 15:13
Re: bug#32183: New ‘guix pull’ /root/.config/current/bin/guix: Permission denied
(name . swedebugia)(address . swedebugia@riseup.net)
87efc2p7ud.fsf@gnu.org
Hello,
swedebugia <swedebugia@riseup.net> skribis:
Toggle quote (8 lines)> This whole update to guix pull was somewhat a breaking change, but> unfortunately it was very hard to imagine the repercussions (horrible> bugs) down the line...>> Could it have been completely avoided by introducing it as such and> forced people to reinstall/upgrade by reinstall (overwriting all files> and invalidating the store etc.)?
Fundamentally, it’s just about moving files from ~/.config/guix to/var/guix/profiles/per-user/$USER, which I thought was fairly harmless.
Also, the bug was around for a few days. Those who were away duringthose days didn’t notice.
That said, I agree this was poorly handled. One way to improve it wouldbe to have several people run the code on their machine before it goesto master (it’s the kind of code for which we can hardly write unittests, and it’s single-use code.)
Thanks,Ludo’.
Closed
?
Your comment

This issue is archived.

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