From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxim Cournoyer Subject: bug#31825: guix offload fails with guix-authenticate error Date: Wed, 13 Jun 2018 23:54:15 -0400 Message-ID: <87y3firpjs.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48099) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fTJLl-0001iw-SD for bug-guix@gnu.org; Wed, 13 Jun 2018 23:55:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fTJLi-00008J-PJ for bug-guix@gnu.org; Wed, 13 Jun 2018 23:55:05 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:39295) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fTJLi-00007y-KG for bug-guix@gnu.org; Wed, 13 Jun 2018 23:55:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fTJLi-0005U3-DL for bug-guix@gnu.org; Wed, 13 Jun 2018 23:55:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:47900) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fTJL2-0001SR-Pk for bug-guix@gnu.org; Wed, 13 Jun 2018 23:54:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fTJKz-0007ux-MY for bug-guix@gnu.org; Wed, 13 Jun 2018 23:54:20 -0400 Received: from mail-io0-x236.google.com ([2607:f8b0:4001:c06::236]:43451) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fTJKz-0007us-HJ for bug-guix@gnu.org; Wed, 13 Jun 2018 23:54:17 -0400 Received: by mail-io0-x236.google.com with SMTP id t6-v6so5737697iob.10 for ; Wed, 13 Jun 2018 20:54:17 -0700 (PDT) Received: from apteryx ([45.72.197.2]) by smtp.gmail.com with ESMTPSA id i189-v6sm2209177itf.22.2018.06.13.20.54.15 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 13 Jun 2018 20:54:16 -0700 (PDT) List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: 31825@debbugs.gnu.org Hello! I've read the documentation carefully many times, but I still can't make `guix offload' work. It always fails like so: --8<---------------cut here---------------start------------->8--- guix offload test guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'... guix offload: '192.168.1.105' is running guile (GNU Guile) 2.2.3 guix offload: Guix is usable on '192.168.1.105' (test returned "/gnu/store/883yjkl46dxw9mzykykmbs0yzwyxm17z-test") sending 1 store item to '192.168.1.105'... exporting path `/gnu/store/wrv01knf5xa76j73afscj066pbqq1na3-export-test' guix offload: error: build failed: program `guix-authenticate' failed with exit code 1 --8<---------------cut here---------------end--------------->8--- In GDB, I've attempted to follow the forks but without success. The most useful hint I've got was the following message about guix-authenticate not being found: --8<---------------cut here---------------start------------->8--- sudo gdb --args guix-daemon --build-users-group=guixbuild GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1 [...] (gdb) r Starting program: /home/mcournoyer/src/guix/guix-daemon --build-users-group=guixbuild [Thread debugging using libthread_db enabled] Using host libthread_db library "/gnu/store/4sqaib7c2dfjv62ivrg9b8wa7bh226la-glibc-2.26.105-g0890d5379c/lib/libthread_db.so.1". accepted connection from pid 2241, user mcournoyer accepted connection from pid 29024, user mcournoyer accepted connection from pid 2241, user mcournoyer accepted connection from pid 29068, user mcournoyer error: executing `guix-authenticate': No such file or directory --8<---------------cut here---------------end--------------->8--- Things I've tried without success: 1. Installing guix into my user's profile and then this to the ~/.bashrc on the remote machine: --8<---------------cut here---------------start------------->8--- GUIX_PROFILE=$HOME/.guix-profile source $GUIX_PROFILE/etc/profile # Hack to make guix-authenticate available export PATH=$PATH:$GUIX_PROFILE/libexec --8<---------------cut here---------------end--------------->8--- 2. Noticing that the guix-daemon I was debugging (the one at ~/src/guix/guix-daemon) was using nixLibexecDir = "/usr/local/libexec" and that the guix-daemon has code doing this in guix-daemon.cc:469: --8<---------------cut here---------------start------------->8--- /* Hackily help 'local-store.cc' find our 'guix-authenticate' program, which is known as 'OPENSSL_PATH' here. */ std::string search_path; search_path = settings.nixLibexecDir; if (getenv ("PATH") != NULL) { search_path += ":"; search_path += getenv ("PATH"); } setenv ("PATH", search_path.c_str (), 1); --8<---------------cut here---------------end--------------->8--- I tried: --8<---------------cut here---------------start------------->8--- sudo ln -s /var/guix/profiles/per-user/mcournoyer/guix-profile/libexec /usr/local/libexec --8<---------------cut here---------------end--------------->8--- I'm motivated to get this working; would be pleased to debug further given fresh ideas. Thanks, Maxim