From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Ingram Subject: Re: [GSoC] Draft proposal for an Install Wizard for Guix Date: Sun, 27 Mar 2016 02:50:00 -0400 Message-ID: <56F78298.7060806@mtu.edu> References: <56F1AEF0.60304@mtu.edu> <871t6ypuuk.fsf@gnu.org> <56F55DE4.4000505@mtu.edu> <87mvpl31uk.fsf@gnu.org> 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]:44836) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ak4WT-0007Qn-Ig for guix-devel@gnu.org; Sun, 27 Mar 2016 02:50:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ak4WQ-0003Ev-Bt for guix-devel@gnu.org; Sun, 27 Mar 2016 02:50:05 -0400 Received: from mail-ig0-x230.google.com ([2607:f8b0:4001:c05::230]:37278) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ak4WQ-0003Ea-5Y for guix-devel@gnu.org; Sun, 27 Mar 2016 02:50:02 -0400 Received: by mail-ig0-x230.google.com with SMTP id l20so37265109igf.0 for ; Sat, 26 Mar 2016 23:50:01 -0700 (PDT) In-Reply-To: <87mvpl31uk.fsf@gnu.org> 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: =?UTF-8?Q?Ludovic_Court=c3=a8s?= Cc: guix-devel@gnu.org On 03/26/2016 07:39 AM, Ludovic Courtès wrote: > Personally, I would like to view the “wizard” as a helper, and not as > something that hides everything and turns people into “end users.” > > I don’t know how this could translate in the design of the tool. > Perhaps showing the ‘operating-system’ declaration as you suggest is one > thing, and making it easy to view the section of the manual that > corresponds to a particular item, or to jump to the code that defines a > specific service (say), would be helpful too. Yes as much as it is an installer it should also be an introduction. Something that not only lets a user easily input their options but also shows them how their settings will be put into config.scm, I'm trying to come up with some clever ideas of how to do this in a graceful way. Thinking about this has lead me to think more about Danny Milosavljevic's suggestion > Yeah, personally I'd like to have an emacs form which just displays config.scm (and stores it as a normal file) and has some inline documentation on what is what and maybe a treeview instead of visible S-Expression parens - and a validation process whether the stuff makes sense. When you exit, it just instantiates the system. > > The partitioning & file system type should also be specified in a declarative way in the config [and arguably it already is]. > > Basically not a lot different from now but just more user-friendly and catching more mistakes before instantiation. > > ncurses actually isn't as flexible - although it has the benefit that the average user is familiar with how it looks. Basically I was thinking of doing that with an ncurses UI that shows the user their config.scm with some documentation and then walks users through changing each option. But maybe an emacs installer makes more sense as this is the type of interface emacs does very well. The reason I had avoided proposing an emacs installer previously is I worry about confusion from users who are unfamiliar with emacs and how to use it. Should we be concerned with that when so many of Guix's great features that can be accessed through emacs. Perhaps there could be a simple introduction to emacs in the installer as well? On the other hand if a user has no experience with emacs throwing that at them along with config.scm could be overwhelming. Anyways just some thoughts I had, any more feedback would be greatly appreciated. Thanks Thomas Ingram