Vilgour <vilgour@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Debbugs Internal Request <help-debbugs@HIDDEN>
to internal_control <at> debbugs.gnu.org
.
Full text available.Received: (at 22588-done) by debbugs.gnu.org; 8 Feb 2016 22:49:19 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 17:49:19 2016 Received: from localhost ([127.0.0.1]:60629 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSucR-0002Cu-Kl for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 17:49:19 -0500 Received: from eggs.gnu.org ([208.118.235.92]:41803) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <ludo@HIDDEN>) id 1aSucQ-0002Cg-6I for 22588-done <at> debbugs.gnu.org; Mon, 08 Feb 2016 17:49:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSucH-00067G-Uo for 22588-done <at> debbugs.gnu.org; Mon, 08 Feb 2016 17:49:13 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:39326) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSucH-00067C-RF; Mon, 08 Feb 2016 17:49:09 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:48434 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from <ludo@HIDDEN>) id 1aSucG-0007eN-U3; Mon, 08 Feb 2016 17:49:09 -0500 From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver <mhw@HIDDEN> Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> <87r3gnilmk.fsf@HIDDEN> <87twljjorf.fsf@HIDDEN> <87pow7cfn0.fsf@HIDDEN> <87io1zjdhq.fsf@HIDDEN> Date: Mon, 08 Feb 2016 23:49:06 +0100 In-Reply-To: <87io1zjdhq.fsf@HIDDEN> (Mark H. Weaver's message of "Mon, 08 Feb 2016 12:52:49 -0500") Message-ID: <87mvrau8bh.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 22588-done Cc: 22588-done <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -5.3 (-----) Mark H Weaver <mhw@HIDDEN> skribis: > Okay, I must admit that's a pretty great little hack, and a nice demo of > how easy it is to hack something together like this in Guile. It=E2=80=99s fun to think we have a compiler from a subset of Bourne shell = to the Guile VM. :-) > Let's do it :) Done in 6eb4390! Thanks, Ludo=E2=80=99.
Mark H Weaver <mhw@HIDDEN>
:ludo@HIDDEN (Ludovic Courtès)
:Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 19:42:54 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 14:42:54 2016 Received: from localhost ([127.0.0.1]:60504 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSri2-0004XR-K7 for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 14:42:54 -0500 Received: from dustycloud.org ([50.116.34.160]:59344) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <cwebber@HIDDEN>) id 1aSri1-0004XJ-BZ for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 14:42:53 -0500 Received: from oolong (localhost [127.0.0.1]) by dustycloud.org (Postfix) with ESMTPS id 886AE26676; Mon, 8 Feb 2016 14:42:51 -0500 (EST) References: <874mdk2p40.fsf@HIDDEN> <87r3gnilmk.fsf@HIDDEN> <87twljjorf.fsf@HIDDEN> <87pow7cfn0.fsf@HIDDEN> User-agent: mu4e 0.9.13; emacs 24.5.1 From: Christopher Allan Webber <cwebber@HIDDEN> To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN> Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY In-reply-to: <87pow7cfn0.fsf@HIDDEN> Date: Mon, 08 Feb 2016 11:42:50 -0800 Message-ID: <87mvrbxa2t.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.3 (/) X-Debbugs-Envelope-To: 22588 Cc: Mark H Weaver <mhw@HIDDEN>, 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.3 (/) Ludovic Courtès writes: > OTOH, hacking it is very tempting, like: > > --8<---------------cut here---------------start------------->8--- > scheme@(guile-user)> ,use (guix build bournish) > scheme@(guile-user)> ,bournish > Happy hacking with Bournish! To switch back, type `,L scheme'. > bournish@(guile-user)> ls > . gnu-dist.go r-build-system.go > .. gnu-dist.scm r-build-system.scm > activation.scm~ gnu-dist.scm~ relocate.scm~ > bournish.scm gnu.scm~ rpath.go > bournish.scm~ graft.go rpath.scm > cmake-build-system.go graft.scm rpath.scm~ > cmake-build-system.scm graft.scm~ ruby-build-system.go > cvs.go graft.scm.115 ruby-build-system.scm > cvs.scm graft.scm.bak ruby-build-system.scm.orig > download.go gremlin.go ruby-build-system.scm.rej > download.scm gremlin.scm store-copy.go > download.scm~ gremlin.scm~ store-copy.scm > download.scm.bak haskell-build-system.go store-copy.scm~ > emacs-build-system.go haskell-build-system.scm svn.go > emacs-build-system.scm http.scm~ svn.scm > emacs-utils.go install.scm~ syscalls.go > emacs-utils.scm linux-initrd.scm~ syscalls.scm > ftp.scm~ perl-build-system.go syscalls.scm~ > git.go perl-build-system.scm union.go > git.scm perl-build-system.scm~ union.scm > git.scm~ profile.go union.scm~ > glib-or-gtk-build-system.gprofile.scm~ url.scm~ > glib-or-gtk-build-system.sprofiles.go utils.go > gnome-build-system.scm profiles.scm utils.scm > gnome-build-system.scm~ profiles.scm~ utils.scm~ > gnu-build-system.go pull.go vm.scm~ > gnu-build-system.scm pull.scm waf-build-system.go > gnu-build-system.scm~ pull.scm~ waf-build-system.scm > gnu-build-system.scm.bak python-build-system.go > gnu-cross-build.scm~ python-build-system.scm > bournish@(guile-user)> cd / > bournish@(guile-user)> pwd > $2 = "/" > bournish@(guile-user)> echo $PATH $LANGUAGE > $3 = ("/home/ludo/soft/bin:/home/ludo/.opam/system/bin:/home/ludo/.guix-profile/bin:/home/ludo/.guix-profile/sbin:/run/setuid-programs:/run/current-system/profile/bin:/run/current-system/profile/sbin" "eo") > bournish@(guile-user)> touch --version > touch (GNU coreutils) 8.24 > Copyright © 2015 Free Software Foundation, Inc. > Ĉi tiu estas libera programaro: vi rajtas ĝin ŝanĝi kaj redistribui. > La ĝusta permesilo estas GPLv3+: GNU GPL versio 3 aŭ sekva; > por la kompleta (angla) teksto vidu <http://gnu.org/licenses/gpl.html>. > Ĉi tiu programaro ne garantiatas, ene de la limoj de la leĝo. > > Verkita de Paul Rubin, Arnold Robbins, Jim Kingdon, > David MacKenzie kaj Randy Smith. > $4 = 0 > bournish@(guile-user)> ,L scheme > Happy hacking with Scheme! To switch back, type `,L bournish'. > --8<---------------cut here---------------end--------------->8--- > > :-) > > The point is, if we can allow users to avoid typing in parentheses and > long procedure names and quoted argument lists when all they want is to > run fsck, we should do that. Wowee! Yeah, this is pretty neat :) It's a cool demo, and also seems like a much more comfortable "emergency shell" to drop users into. +1 from me.
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 18:22:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 13:22:11 2016 Received: from localhost ([127.0.0.1]:60393 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSqRu-0000vu-Vp for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 13:22:11 -0500 Received: from world.peace.net ([50.252.239.5]:57653 ident=hope6) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <mhw@HIDDEN>) id 1aSqRu-0000vl-2s for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 13:22:10 -0500 Received: from c-73-253-48-168.hsd1.ma.comcast.net ([73.253.48.168] helo=jojen) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from <mhw@HIDDEN>) id 1aSpzh-0002Od-Ty; Mon, 08 Feb 2016 12:53:02 -0500 From: Mark H Weaver <mhw@HIDDEN> To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> <87r3gnilmk.fsf@HIDDEN> <87twljjorf.fsf@HIDDEN> <87pow7cfn0.fsf@HIDDEN> Date: Mon, 08 Feb 2016 12:52:49 -0500 In-Reply-To: <87pow7cfn0.fsf@HIDDEN> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 08 Feb 2016 17:48:19 +0100") Message-ID: <87io1zjdhq.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22588 Cc: 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.0 (/) ludo@HIDDEN (Ludovic Court=C3=A8s) writes: > Mark H Weaver <mhw@HIDDEN> skribis: > >> ludo@HIDDEN (Ludovic Court=C3=A8s) writes: > > [...] > >>> Currently there=E2=80=99s no Bash in the initrd. Should we add one? O= ur >>> =E2=80=98bash-static=E2=80=99 package takes 1.4 MiB (I don=E2=80=99t th= ink we can make it >>> smaller.) >> >> I'm not sure it would help much without also adding 'coreutils'. > > Good point. > >>> Another idea that comes to mind: what about providing a =E2=80=9Cshell= =E2=80=9D language >>> in Guile? It would automatically tokenize what the user types in and >>> convert it to (system* =E2=80=A6), plus it would have a few built-in co= mmands >>> like =E2=80=98cd=E2=80=99 and =E2=80=98ls=E2=80=99. >> >> I like the idea of having something like this in Guile, but I'm not sure >> we should rush to implement a half-baked solution. > > OTOH, hacking it is very tempting, like: > > scheme@(guile-user)> ,use (guix build bournish) > scheme@(guile-user)> ,bournish > Happy hacking with Bournish! To switch back, type `,L scheme'. > bournish@(guile-user)> ls > . gnu-dist.go r-build-system.go=20= =20=20=20=20=20=20=20=20 > .. gnu-dist.scm r-build-system.scm=20= =20=20=20=20=20=20=20 > activation.scm~ gnu-dist.scm~ relocate.scm~=20=20= =20=20=20=20=20=20=20=20=20=20=20 > bournish.scm gnu.scm~ rpath.go=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 > bournish.scm~ graft.go rpath.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > cmake-build-system.go graft.scm rpath.scm~=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > cmake-build-system.scm graft.scm~ ruby-build-system.go= =20=20=20=20=20=20 > cvs.go graft.scm.115 ruby-build-system.scm= =20=20=20=20=20 > cvs.scm graft.scm.bak ruby-build-system.scm= .orig > download.go gremlin.go ruby-build-system.scm= .rej=20 > download.scm gremlin.scm store-copy.go=20=20= =20=20=20=20=20=20=20=20=20=20=20 > download.scm~ gremlin.scm~ store-copy.scm=20=20= =20=20=20=20=20=20=20=20=20=20 > download.scm.bak haskell-build-system.go store-copy.scm~=20=20= =20=20=20=20=20=20=20=20=20 > emacs-build-system.go haskell-build-system.scm svn.go=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > emacs-build-system.scm http.scm~ svn.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > emacs-utils.go install.scm~ syscalls.go=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20 > emacs-utils.scm linux-initrd.scm~ syscalls.scm=20=20=20= =20=20=20=20=20=20=20=20=20=20=20 > ftp.scm~ perl-build-system.go syscalls.scm~=20=20= =20=20=20=20=20=20=20=20=20=20=20 > git.go perl-build-system.scm union.go=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 > git.scm perl-build-system.scm~ union.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > git.scm~ profile.go union.scm~=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > glib-or-gtk-build-system.gprofile.scm~ url.scm~=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 > glib-or-gtk-build-system.sprofiles.go utils.go=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 > gnome-build-system.scm profiles.scm utils.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > gnome-build-system.scm~ profiles.scm~ utils.scm~=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 > gnu-build-system.go pull.go vm.scm~=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > gnu-build-system.scm pull.scm waf-build-system.go= =20=20=20=20=20=20=20 > gnu-build-system.scm~ pull.scm~ waf-build-system.scm= =20=20=20=20=20=20 > gnu-build-system.scm.bak python-build-system.go=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > gnu-cross-build.scm~ python-build-system.scm=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 > bournish@(guile-user)> cd / > bournish@(guile-user)> pwd > $2 =3D "/" > bournish@(guile-user)> echo $PATH $LANGUAGE > $3 =3D ("/home/ludo/soft/bin:/home/ludo/.opam/system/bin:/home/ludo/.guix= -profile/bin:/home/ludo/.guix-profile/sbin:/run/setuid-programs:/run/curren= t-system/profile/bin:/run/current-system/profile/sbin" "eo") > bournish@(guile-user)> touch --version > touch (GNU coreutils) 8.24 > Copyright =C2=A9 2015 Free Software Foundation, Inc. > =C4=88i tiu estas libera programaro: vi rajtas =C4=9Din =C5=9Dan=C4=9Di k= aj redistribui. > La =C4=9Dusta permesilo estas GPLv3+: GNU GPL versio 3 a=C5=AD sekva; > por la kompleta (angla) teksto vidu <http://gnu.org/licenses/gpl.html>. > =C4=88i tiu programaro ne garantiatas, ene de la limoj de la le=C4=9Do. > > Verkita de Paul Rubin, Arnold Robbins, Jim Kingdon, > David MacKenzie kaj Randy Smith. > $4 =3D 0 > bournish@(guile-user)> ,L scheme > Happy hacking with Scheme! To switch back, type `,L bournish'. > > :-) > > The point is, if we can allow users to avoid typing in parentheses and > long procedure names and quoted argument lists when all they want is to > run fsck, we should do that. > >> When we have something decent along the lines of Scsh, then >> definitely! > > Scsh makes it super easy to deal with Unix processes, redirections, and > all that (it would be awesome to use it on the build side), but AFAIK it > doesn=E2=80=99t try to provide a Bourne-like interface, which is what we = need > here. > > So, WDYT? :-) Okay, I must admit that's a pretty great little hack, and a nice demo of how easy it is to hack something together like this in Guile. Let's do it :) Mark
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 18:12:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 13:12:08 2016 Received: from localhost ([127.0.0.1]:60322 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSqIB-0000cU-RK for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 13:12:08 -0500 Received: from eggs.gnu.org ([208.118.235.92]:43544) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <ludo@HIDDEN>) id 1aSqIA-0000b7-4m for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 13:12:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSozA-00033C-G8 for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 11:48:28 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.5 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60769) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSozA-000336-CK; Mon, 08 Feb 2016 11:48:24 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:45238 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from <ludo@HIDDEN>) id 1aSoz8-0004zG-0i; Mon, 08 Feb 2016 11:48:23 -0500 From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver <mhw@HIDDEN> Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> <87r3gnilmk.fsf@HIDDEN> <87twljjorf.fsf@HIDDEN> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 20 =?utf-8?Q?Pluvi=C3=B4se?= an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Mon, 08 Feb 2016 17:48:19 +0100 In-Reply-To: <87twljjorf.fsf@HIDDEN> (Mark H. Weaver's message of "Mon, 08 Feb 2016 08:49:24 -0500") Message-ID: <87pow7cfn0.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 22588 Cc: 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -5.3 (-----) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mark H Weaver <mhw@HIDDEN> skribis: > ludo@HIDDEN (Ludovic Court=C3=A8s) writes: [...] >> Currently there=E2=80=99s no Bash in the initrd. Should we add one? Our >> =E2=80=98bash-static=E2=80=99 package takes 1.4 MiB (I don=E2=80=99t thi= nk we can make it >> smaller.) > > I'm not sure it would help much without also adding 'coreutils'. Good point. >> Another idea that comes to mind: what about providing a =E2=80=9Cshell= =E2=80=9D language >> in Guile? It would automatically tokenize what the user types in and >> convert it to (system* =E2=80=A6), plus it would have a few built-in com= mands >> like =E2=80=98cd=E2=80=99 and =E2=80=98ls=E2=80=99. > > I like the idea of having something like this in Guile, but I'm not sure > we should rush to implement a half-baked solution. OTOH, hacking it is very tempting, like: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> ,use (guix build bournish) scheme@(guile-user)> ,bournish Happy hacking with Bournish! To switch back, type `,L scheme'. bournish@(guile-user)> ls . gnu-dist.go r-build-system.go=20=20= =20=20=20=20=20=20=20 .. gnu-dist.scm r-build-system.scm=20= =20=20=20=20=20=20=20 activation.scm~ gnu-dist.scm~ relocate.scm~=20=20=20= =20=20=20=20=20=20=20=20=20=20 bournish.scm gnu.scm~ rpath.go=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 bournish.scm~ graft.go rpath.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 cmake-build-system.go graft.scm rpath.scm~=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20 cmake-build-system.scm graft.scm~ ruby-build-system.go=20= =20=20=20=20=20 cvs.go graft.scm.115 ruby-build-system.scm= =20=20=20=20=20 cvs.scm graft.scm.bak ruby-build-system.scm.o= rig download.go gremlin.go ruby-build-system.scm.r= ej=20 download.scm gremlin.scm store-copy.go=20=20=20= =20=20=20=20=20=20=20=20=20=20 download.scm~ gremlin.scm~ store-copy.scm=20=20=20= =20=20=20=20=20=20=20=20=20 download.scm.bak haskell-build-system.go store-copy.scm~=20=20= =20=20=20=20=20=20=20=20=20 emacs-build-system.go haskell-build-system.scm svn.go=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 emacs-build-system.scm http.scm~ svn.scm=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 emacs-utils.go install.scm~ syscalls.go=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20 emacs-utils.scm linux-initrd.scm~ syscalls.scm=20=20=20= =20=20=20=20=20=20=20=20=20=20=20 ftp.scm~ perl-build-system.go syscalls.scm~=20=20=20= =20=20=20=20=20=20=20=20=20=20 git.go perl-build-system.scm union.go=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 git.scm perl-build-system.scm~ union.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 git.scm~ profile.go union.scm~=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20 glib-or-gtk-build-system.gprofile.scm~ url.scm~=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 glib-or-gtk-build-system.sprofiles.go utils.go=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 gnome-build-system.scm profiles.scm utils.scm=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20 gnome-build-system.scm~ profiles.scm~ utils.scm~=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20 gnu-build-system.go pull.go vm.scm~=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20 gnu-build-system.scm pull.scm waf-build-system.go=20= =20=20=20=20=20=20 gnu-build-system.scm~ pull.scm~ waf-build-system.scm=20= =20=20=20=20=20 gnu-build-system.scm.bak python-build-system.go=20=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 gnu-cross-build.scm~ python-build-system.scm=20=20=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 bournish@(guile-user)> cd / bournish@(guile-user)> pwd $2 =3D "/" bournish@(guile-user)> echo $PATH $LANGUAGE $3 =3D ("/home/ludo/soft/bin:/home/ludo/.opam/system/bin:/home/ludo/.guix-p= rofile/bin:/home/ludo/.guix-profile/sbin:/run/setuid-programs:/run/current-= system/profile/bin:/run/current-system/profile/sbin" "eo") bournish@(guile-user)> touch --version touch (GNU coreutils) 8.24 Copyright =C2=A9 2015 Free Software Foundation, Inc. =C4=88i tiu estas libera programaro: vi rajtas =C4=9Din =C5=9Dan=C4=9Di kaj= redistribui. La =C4=9Dusta permesilo estas GPLv3+: GNU GPL versio 3 a=C5=AD sekva; por la kompleta (angla) teksto vidu <http://gnu.org/licenses/gpl.html>. =C4=88i tiu programaro ne garantiatas, ene de la limoj de la le=C4=9Do. Verkita de Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie kaj Randy Smith. $4 =3D 0 bournish@(guile-user)> ,L scheme Happy hacking with Scheme! To switch back, type `,L bournish'. --8<---------------cut here---------------end--------------->8--- :-) The point is, if we can allow users to avoid typing in parentheses and long procedure names and quoted argument lists when all they want is to run fsck, we should do that. > When we have something decent along the lines of Scsh, then > definitely! Scsh makes it super easy to deal with Unix processes, redirections, and all that (it would be awesome to use it on the build side), but AFAIK it doesn=E2=80=99t try to provide a Bourne-like interface, which is what we ne= ed here. So, WDYT? :-) Ludo=E2=80=99. --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline; filename=bournish.scm Content-Transfer-Encoding: quoted-printable Content-Description: Bournish! ;;; GNU Guix --- Functional package management for GNU ;;; Copyright =C2=A9 2016 Ludovic Court=C3=A8s <ludo@HIDDEN> ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (guix build bournish) #:use-module (system base language) #:use-module (system base compile) #:use-module (system repl command) #:use-module (system repl common) #:use-module (ice-9 rdelim) #:use-module (ice-9 match) #:use-module (ice-9 ftw) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:export (%bournish-language)) (define (expand-variable str) ;; XXX: No support for "${VAR}". (if (string-prefix? "$" str) (or (getenv (string-drop str 1)) "") str)) (define* (display-tabulated lst #:key (columns 3) (column-width (/ 78 columns))) "Display the list of string LST in COLUMNS columns of COLUMN-WIDTH characters." (define len (length lst)) (define pad (if (zero? (modulo len columns)) 0 columns)) (define items-per-column (quotient (+ len pad) columns)) (define items (list->vector lst)) (let loop ((indexes (unfold (cut >=3D <> columns) (cut * <> items-per-column) 1+ 0))) (unless (>=3D (first indexes) items-per-column) (for-each (lambda (index) (let ((item (if (< index len) (vector-ref items index) ""))) (display (string-pad-right item column-width)))) indexes) (newline) (loop (map 1+ indexes))))) (define builtin-ls (case-lambda (() (display-tabulated (scandir "."))) (files (let ((files (filter (lambda (file) (catch 'system-error (lambda () (lstat file)) (lambda args (let ((errno (system-error-errno args))) (format (current-error-port) "~a: ~a~%" file (strerror errno)) #f)))) files))) (display-tabulated files))))) (define %not-colon (char-set-complement (char-set #\:))) (define (executable-path) (match (getenv "PATH") (#f '()) (str (string-tokenize str %not-colon)))) (define (read-bournish port env) (match (map expand-variable (string-tokenize (read-line port))) (("echo" strings ...) `',strings) (("cd" dir) `(chdir ,dir)) (("pwd") `(getcwd)) (("ls" args ...) `((@@ (guix build bournish) builtin-ls) ,@args)) (("which" command) `(search-path ((@@ (guix build bournish) executable-path)) ,command)) (("help" _ ...) (display "\ Hello, this is Bournish, a minimal Bourne-like shell in Guile! The shell is good enough to navigate the file system and run commands but n= ot much beyond that. It is meant to be used as a rescue shell in the initial = RAM disk and is probably not very useful apart from that. It has a few built-in commands such as 'ls' and 'cd'; it lacks globbing, pipes---everything.\n")) ((command args ...) (let ((command (if (string-prefix? "\\" command) (string-drop command 1) command))) `(system* ,command ,@args))))) (define %bournish-language (let ((scheme (lookup-language 'scheme))) (make-language #:name 'bournish #:title "Bournish" #:reader read-bournish #:compilers (language-compilers scheme) #:decompilers (language-decompilers scheme) #:evaluator (language-evaluator scheme) #:printer (language-printer scheme) #:make-default-environment (language-make-default-environment scheme)))) ;; XXX: ",L bournish" won't work unless we call our module (language bourni= sh ;; spec), which is kinda annoying, so provide another meta-command. (define-meta-command ((bournish guix) repl) "bournish Switch to the Bournish language." (let ((current (repl-language repl))) (format #t "Happy hacking with ~a! To switch back, type `,L ~a'.\n" (language-title %bournish-language) (language-name current)) (current-language %bournish-language) (set! (repl-language repl) %bournish-language))) --=-=-=--
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 13:49:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 08:49:36 2016 Received: from localhost ([127.0.0.1]:38147 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSmC8-0001cZ-KD for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 08:49:36 -0500 Received: from world.peace.net ([50.252.239.5]:56183 ident=hope5) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <mhw@HIDDEN>) id 1aSmC6-0001cL-9q for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 08:49:34 -0500 Received: from [10.1.10.78] (helo=jojen) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from <mhw@HIDDEN>) id 1aSmBy-0001Nn-Ed; Mon, 08 Feb 2016 08:49:26 -0500 From: Mark H Weaver <mhw@HIDDEN> To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> <87r3gnilmk.fsf@HIDDEN> Date: Mon, 08 Feb 2016 08:49:24 -0500 In-Reply-To: <87r3gnilmk.fsf@HIDDEN> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 08 Feb 2016 10:42:27 +0100") Message-ID: <87twljjorf.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22588 Cc: 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.0 (/) ludo@HIDDEN (Ludovic Court=C3=A8s) writes: > Mark H Weaver <mhw@HIDDEN> skribis: > >> I've been bitten by this once before, and a user on #guix did as well. >> When there are problems in the root filesystem that fsck doesn't want to >> fix automatically, the user is dumped into a guile prompt where PATH is >> not set, and it's very inconvenient to run fsck manually. > > AFAICS, =E2=80=98PATH=E2=80=99 is set in =E2=80=98base-initrd=E2=80=99 in= (gnu system linux-initrd), and > =E2=80=98check-file-system=E2=80=99 in (gnu build file-systems) indeed ex= pects it to be > set. Ah, good! >> This is what I just suggested that the user type, with apologies: >> >> (use-modules (ice-9 ftw) (srfi srfi-26)) >> (define dirs (scandir "/gnu/store" (cut string-suffix? "e2fsprogs-1.42= .13" <>))) >> (define e2fsck (string-append "/gnu/store/" (car dirs) "/sbin/e2fsck")) >> (system* e2fsck "/dev/XXX") >> >> Is there a better way? > > I think one can run: > > (system* "fsck.ext4" "/foo/bar") Okay, this is much better than I expected. I asked the user to try running "e2fsck", and when it wasn't found in PATH, I incorrectly assumed that PATH wasn't set. > What about changing the message to explicitly mention this command? Sure, that would be helpful. >> Speaking from personal experience, it's very painful to do anything >> non-trivial in that REPL. Even just adding readline would help a lot. > > The statically-linked Guile in the initrd lacks Readline support. We > could maybe work around that, but the initrd would become much larger. Okay, nevermind then. >> We should probably also handle errors from fsck specially. > > Currently there=E2=80=99s no Bash in the initrd. Should we add one? Our > =E2=80=98bash-static=E2=80=99 package takes 1.4 MiB (I don=E2=80=99t thin= k we can make it > smaller.) I'm not sure it would help much without also adding 'coreutils'. Adding busybox might be worth considering, though. > Another idea that comes to mind: what about providing a =E2=80=9Cshell=E2= =80=9D language > in Guile? It would automatically tokenize what the user types in and > convert it to (system* =E2=80=A6), plus it would have a few built-in comm= ands > like =E2=80=98cd=E2=80=99 and =E2=80=98ls=E2=80=99. I like the idea of having something like this in Guile, but I'm not sure we should rush to implement a half-baked solution. When we have something decent along the lines of Scsh, then definitely! IMO, anyway, but I don't feel strongly about it. More thoughts? Thanks! Mark
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 09:44:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 04:44:04 2016 Received: from localhost ([127.0.0.1]:37976 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSiMW-0002ke-IN for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:44:04 -0500 Received: from eggs.gnu.org ([208.118.235.92]:55514) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <ludo@HIDDEN>) id 1aSiMV-0002k5-Dh for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:44:03 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSiMN-0004RT-81 for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:43:58 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52692) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSiMN-0004RP-4k; Mon, 08 Feb 2016 04:43:55 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:56014 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from <ludo@HIDDEN>) id 1aSiML-0001Sp-R1; Mon, 08 Feb 2016 04:43:54 -0500 From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver <mhw@HIDDEN> Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> Date: Mon, 08 Feb 2016 10:43:52 +0100 In-Reply-To: <874mdk2p40.fsf@HIDDEN> (Mark H. Weaver's message of "Sun, 07 Feb 2016 16:21:35 -0500") Message-ID: <87mvrbilk7.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 22588 Cc: 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -5.3 (-----) Another idea that comes to mind: what about providing a =E2=80=9Cshell=E2= =80=9D language in Guile? It would automatically tokenize what the user types in and convert it to (system* =E2=80=A6), plus it would have a few built-in comman= ds like =E2=80=98cd=E2=80=99 and =E2=80=98ls=E2=80=99. Ludo=E2=80=99.
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at 22588) by debbugs.gnu.org; 8 Feb 2016 09:42:41 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 04:42:41 2016 Received: from localhost ([127.0.0.1]:37971 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSiLB-0002i9-7g for submit <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:42:41 -0500 Received: from eggs.gnu.org ([208.118.235.92]:55204) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <ludo@HIDDEN>) id 1aSiL9-0002hx-KM for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:42:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSiL1-0003kG-Ab for 22588 <at> debbugs.gnu.org; Mon, 08 Feb 2016 04:42:34 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52588) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <ludo@HIDDEN>) id 1aSiL1-0003kC-7K; Mon, 08 Feb 2016 04:42:31 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:55756 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from <ludo@HIDDEN>) id 1aSiL0-0001Ms-2K; Mon, 08 Feb 2016 04:42:30 -0500 From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Mark H Weaver <mhw@HIDDEN> Subject: Re: bug#22588: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY References: <874mdk2p40.fsf@HIDDEN> Date: Mon, 08 Feb 2016 10:42:27 +0100 In-Reply-To: <874mdk2p40.fsf@HIDDEN> (Mark H. Weaver's message of "Sun, 07 Feb 2016 16:21:35 -0500") Message-ID: <87r3gnilmk.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 22588 Cc: 22588 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -5.3 (-----) Mark H Weaver <mhw@HIDDEN> skribis: > I've been bitten by this once before, and a user on #guix did as well. > When there are problems in the root filesystem that fsck doesn't want to > fix automatically, the user is dumped into a guile prompt where PATH is > not set, and it's very inconvenient to run fsck manually. AFAICS, =E2=80=98PATH=E2=80=99 is set in =E2=80=98base-initrd=E2=80=99 in (= gnu system linux-initrd), and =E2=80=98check-file-system=E2=80=99 in (gnu build file-systems) indeed expe= cts it to be set. > This is what I just suggested that the user type, with apologies: > > (use-modules (ice-9 ftw) (srfi srfi-26)) > (define dirs (scandir "/gnu/store" (cut string-suffix? "e2fsprogs-1.42.= 13" <>))) > (define e2fsck (string-append "/gnu/store/" (car dirs) "/sbin/e2fsck")) > (system* e2fsck "/dev/XXX") > > Is there a better way? I think one can run: (system* "fsck.ext4" "/foo/bar") What about changing the message to explicitly mention this command? > Speaking from personal experience, it's very painful to do anything > non-trivial in that REPL. Even just adding readline would help a lot. The statically-linked Guile in the initrd lacks Readline support. We could maybe work around that, but the initrd would become much larger. > Maybe we should at least set PATH to include the available /bin and > /sbin directories before entering the REPL. Done, AFAICS. > We should probably also handle errors from fsck specially. Currently there=E2=80=99s no Bash in the initrd. Should we add one? Our =E2=80=98bash-static=E2=80=99 package takes 1.4 MiB (I don=E2=80=99t think = we can make it smaller.) Thanks, Ludo=E2=80=99.
bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.Received: (at submit) by debbugs.gnu.org; 7 Feb 2016 21:21:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 07 16:21:58 2016 Received: from localhost ([127.0.0.1]:37623 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1aSWmM-000222-BZ for submit <at> debbugs.gnu.org; Sun, 07 Feb 2016 16:21:58 -0500 Received: from eggs.gnu.org ([208.118.235.92]:41229) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from <mhw@HIDDEN>) id 1aSWmL-00021p-3Q for submit <at> debbugs.gnu.org; Sun, 07 Feb 2016 16:21:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <mhw@HIDDEN>) id 1aSWmF-00020S-AA for submit <at> debbugs.gnu.org; Sun, 07 Feb 2016 16:21:52 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:37903) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mhw@HIDDEN>) id 1aSWmF-00020O-78 for submit <at> debbugs.gnu.org; Sun, 07 Feb 2016 16:21:51 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60433) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <mhw@HIDDEN>) id 1aSWmE-00030W-BJ for bug-guix@HIDDEN; Sun, 07 Feb 2016 16:21:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <mhw@HIDDEN>) id 1aSWmB-0001zu-66 for bug-guix@HIDDEN; Sun, 07 Feb 2016 16:21:50 -0500 Received: from world.peace.net ([50.252.239.5]:53411) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mhw@HIDDEN>) id 1aSWmB-0001zq-2G for bug-guix@HIDDEN; Sun, 07 Feb 2016 16:21:47 -0500 Received: from [10.1.10.78] (helo=jojen) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from <mhw@HIDDEN>) id 1aSWm5-0006Yt-1S; Sun, 07 Feb 2016 16:21:41 -0500 From: Mark H Weaver <mhw@HIDDEN> To: bug-guix@HIDDEN Subject: root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY Date: Sun, 07 Feb 2016 16:21:35 -0500 Message-ID: <874mdk2p40.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -5.0 (-----) I've been bitten by this once before, and a user on #guix did as well. When there are problems in the root filesystem that fsck doesn't want to fix automatically, the user is dumped into a guile prompt where PATH is not set, and it's very inconvenient to run fsck manually. This is what I just suggested that the user type, with apologies: (use-modules (ice-9 ftw) (srfi srfi-26)) (define dirs (scandir "/gnu/store" (cut string-suffix? "e2fsprogs-1.42.13" <>))) (define e2fsck (string-append "/gnu/store/" (car dirs) "/sbin/e2fsck")) (system* e2fsck "/dev/XXX") Is there a better way? Speaking from personal experience, it's very painful to do anything non-trivial in that REPL. Even just adding readline would help a lot. Maybe we should at least set PATH to include the available /bin and /sbin directories before entering the REPL. We should probably also handle errors from fsck specially. Thoughts? Mark
Mark H Weaver <mhw@HIDDEN>
:bug-guix@HIDDEN
.
Full text available.bug-guix@HIDDEN
:bug#22588
; Package guix
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.