From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: statedir locations Date: Tue, 28 Jan 2014 10:23:16 +0100 Message-ID: <87wqhke9yz.fsf@gnu.org> References: <20140127115015.GA13396@jocasta.intra> <87ha8pk2ew.fsf@gnu.org> <87bnyxhwil.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:44402) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W84y4-00024Q-8C for guix-devel@gnu.org; Tue, 28 Jan 2014 04:28:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W84xv-0005v9-4h for guix-devel@gnu.org; Tue, 28 Jan 2014 04:28:28 -0500 Received: from hera.aquilenet.fr ([141.255.128.1]:48909) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W84xu-0005v3-UB for guix-devel@gnu.org; Tue, 28 Jan 2014 04:28:19 -0500 In-Reply-To: <87bnyxhwil.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 27 Jan 2014 23:48:02 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: John Darrington Cc: guix-devel@gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > >> John Darrington skribis: >> >>> It has come to my attention that guix packages (at least those with gnu= build system) >>> default their statedirs to directories under /nix/store/. Recall that = the statedirs (ie:=20 >>> sharedstatedir localstatedir and runstatedir) are for installing data f= iles *which the programs >>> modify while they run* [1]. Obviously a program cannot modify anythin= g under /nix/store >>> I think we need to update the default configure flags. >> >> Yes. We actually have a number of local modifications: >> >> $ grep -e --localstatedir gnu/packages/*.scm | wc -l >> 5 >> >> I think we should change gnu-build-system.scm to pass >> --localstatedir=3D/var, unless =E2=80=98configure-flags=E2=80=99 specify= another setting. >> >> I=E2=80=99ll do that in =E2=80=98core-updates=E2=80=99. > > Done in 65529e49ff5b9052544271b1b7923feed4312849. I was overconfident: the patch broke everything, because Automake-generated makefiles typically try to mkdir $localstatedir: http://hydra.gnu.org/eval/45514 So I just reverted it, and I think we=E2=80=99re stuck with the status quo = until someone has a better idea. For the longer term, we could submit an Automake patch such that it doesn=E2=80=99t insist on creating $localstatedir et al. Ludo=E2=80=99.