From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?=E8=97=8D=E6=8C=BA=E7=91=8B?= Subject: bug#27037: systemd service files installed by guix 0.13.0 cannot used by other distributions Date: Mon, 29 May 2017 22:19:58 +0800 Message-ID: References: <20170523161624.GA15379@jasmine> <8c249c24-b33b-3f41-112c-59e04d96803b@gmail.com> <20170524220753.GA27348@jasmine> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:37443) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dFLXg-00084W-Nd for bug-guix@gnu.org; Mon, 29 May 2017 10:21:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dFLXa-00038I-Qt for bug-guix@gnu.org; Mon, 29 May 2017 10:21:08 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:40780) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dFLXa-00038C-JN for bug-guix@gnu.org; Mon, 29 May 2017 10:21:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dFLXa-0001Ia-Ad for bug-guix@gnu.org; Mon, 29 May 2017 10:21:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20170524220753.GA27348@jasmine> Content-Language: en-US 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: Leo Famulari Cc: 27037@debbugs.gnu.org Leo Famulari 於 西元2017年05月25日 06:07 寫道: > On Wed, May 24, 2017 at 11:37:27PM +0800, 藍挺瑋 wrote: >> Leo Famulari 於 西元2017年05月24日 00:16 寫道: >>> I'm a little confused: is there a situation where Guix is not installed >>> but '/usr/bin/guix-daemon' exists? >> >> This can happen with source installation. 'make install' installs >> /usr/bin/guix* but not /var/guix. /var/guix doesn't exist until guix-daemon >> is started. > > I see. We discussed this use case previously, which led to the change > which caused your issue: > > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25852#80 > > In short, we decided to break this for `make install` since we didn't > come up with a better solution at the time. > >>> The path '/var/guix/profiles/per-user/root/guix-profile/bin/guix-daemon' >>> is guaranteed to exist if you followed the instructions in Binary >>> Installation [0], which is, as far as I know, the most common way to >>> install Guix on other distros. So, I think this path is appropriate for >>> the basic service file we provide. >> >> I think you mean that the systemd service files included in Guix are only >> intended to be used with binary installation process. Do you mean that using >> them with traditional 'make install' installation is not supported? > > It's de facto unsupported, since it's not working :) But, I think we > should address this use case, since it is causing problems for > downstream packagers. > >> Yes, I am packaging Guix for Arch and Fedora, and I use the systemd service >> files provided by Guix in my packages since version 0.8.3. If doing so is >> never supported, I can make my own service files like what I did for version >> 0.6 to 0.8.2 and I think this bug can be closed. > > I do think you should look into tailoring a service file to those > systems; you might be able to provide Guix on those systems in a more > integrated or idiomatic way. I updated my packages to install two systemd service files for guix-daemon to allow users to choose between /usr/bin/guix-daemon and /var/guix/profiles/per-user/root/guix-profile/bin/guix-daemon. > > However, we also try to offer upstream service files in the packages > offered by Guix, so I'd like to find a way to support both the binary > installation and `make install` use cases simultaneously. > > Unless somebody proposes a fix in the meantime, I'll look into this more > closely before the next release. > Is it possible to resolve it by providing a configure option to choose between two versions of systemd service files, so guix binary tarballs can use /var/guix/profiles but packages of other distributions can use /usr/bin?