From mboxrd@z Thu Jan 1 00:00:00 1970 From: myglc2@gmail.com Subject: Re: website: say what Guix is at the very top Date: Sun, 28 Jan 2018 23:14:15 -0500 Message-ID: <86zi4xb8tk.fsf@gmail.com> References: <87inc0gzoz.fsf@elephly.net> <863732wf9z.fsf@gmail.com> <87efmm70re.fsf@elephly.net> <87r2qm3rfv.fsf@gnu.org> <87r2qj1d6o.fsf@elephly.net> <87a7x31gm6.fsf@gnu.org> <86372sdxz0.fsf@gmail.com> <87h8r71dp9.fsf@gnu.org> <867es3cgeq.fsf@gmail.com> <87bmhet0hc.fsf@elephly.net> 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]:42003) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eg0pp-0005ps-JN for guix-devel@gnu.org; Sun, 28 Jan 2018 23:14:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eg0pm-0003IV-C1 for guix-devel@gnu.org; Sun, 28 Jan 2018 23:14:21 -0500 In-Reply-To: <87bmhet0hc.fsf@elephly.net> (Ricardo Wurmus's message of "Sun, 28 Jan 2018 17:24:47 +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" To: Ricardo Wurmus Cc: guix-devel@gnu.org, sirgazil Hi Ricardo,=20 On 01/28/2018 at 17:24 Ricardo Wurmus writes: > Hi George, > >> You misunderstand. I do not propose changing names. I do propose that >> you present Guix + GuixSD to the outside world in a unified way. I meant >> "GuixE" as a "handle" to that idea. Sorry if that was misleading. > > I understand the idea, and I recognize that this is a possible means to > address the overlap between Guix and the distribution. > > Since you can build virtual machine images of GuixSD even if you don=E2= =80=99t > have GuixSD installed yourself, the difference between Guix and GuixSD > may seem blurry. > > However, *installing* GuixSD and using it as distribution is *very > different* from using Guix as a tool to build and share reproducible > environments (be that as a Docker image, as a tarball, as a temporary > environment, as a virtual machine image, or just by installing packages > into a profile). > > GuixSD is both a natural extension of the ideas and features of Guix, > but it is also a variant of the GNU system that you can install on > your workstation, server, or laptop. Agreed. But let's face it, distros are a dime a dozen. Distrowatch shows 306 distros. GuixSD is number 175. This is hardly surprising given how difficult it is to gain user mind-share for "yet another distro". For anyone already running a distro with a graphical package manager on a single-user laptop or workstation, GuixSD is a hard sell. For someone already running another distro on servers, as you alluded to elsewhere, Guix is more mature and probably a better pitch. So I am saying: Let's not kill ourselves pitching GuixSD separately. Where you say "may seem blurry" I say "is blurry". Why? AFAICT every guix command except 'guix reconfigure' runs everywhere.=20=20 You say *very different*. I would say it is subtle. I wouldn't pitch the difference hard to a prospect. I would say to them: we don't care which you buy: You can buy a) Guix and keep using your existing distro and familiar package manager or b) you can buy GuixSD and use 'system reconfigure' and gain benefits you may like. In either case, the primary benefits are the same, users are freed from the sysadmin and the sysadmin is freed from nonstop user package requests. >> PRODUCT DESCRIPTION: >> >> The Guix software environment manager creates user environments that >> are completely and independently specified by users. Guix users are >> never stuck needing software that a Sysadmin can't, won't, or hasn't >> installed. A Guix user can run multiple, differing environments >> simultaneously and can replicate any environment on any Guix run-time >> platform. > > I wouldn=E2=80=99t write it like this, but explicitly mentioning that use= rs can > specify any number of reproducible environments is a good idea, in my > opinion. My goal was to express the essence of the per-user Guix experience in a few lines. Happy to hear edits/improvements if you have them. >> Guix provides system-wide environment management when >> appropriate to the run-time platform. > > This sounds *really* vague, and it shows that is done just to avoid > speaking of GuixSD as a separate entity :) But it is a true statement, isn't it? I didn't say more because adding GuixSD-specific features here duplicates features already described or injects features described later in the paragraph. What would you add here? =20 >> Creation, modification, and >> upgrade are atomic and roll-back is instantaneous, so Guix users and >> sysadmins are never stuck with a broken user environment or system. > > =E2=80=9Cinstantaneous=E2=80=9D is not true for GuixSD where a reboot is = required. I don't follow you. I was thinking of =E2=80=98guix system roll-back=E2=80= =99 and =E2=80=98guix system switch-generation=E2=80=99 here. Are you referring to the occasional= need to reboot GuxiSD to effect a change. If so expects to occasionally reboot an OS. Compared to restoring a backup, rebooting and choosing a different system generation is instantaneous IMO. >> Guix implements a functional specification of package, user, and system >> configurations using the Scheme language. Guix complies with the FSF >> Four Essential Freedoms and Free System Distribution Guidelines and >> provides easy and immediate access to the exact source being run. > >> By >> default, Guix uses pre-built package substitutes from the Guix build >> farm and mirrors but users may build any package, or a complete system, >> from package developer sources. > > I don=E2=80=99t think this feels at home in an introduction. It doesn=E2= =80=99t seem > like much of a feature; in my opinion this is an implementation > detail. I know but this is here because I wanted to introduce the central Guix concept of "substitutes" and because I wanted to mention what AFAICS is a unique feature: the ability to easily and completely reinflate a user or system environment from only developer source. >> Guix is available on multiple run-time platforms including bare metal >> (GuixSD), Virtual Machines (QEMU image), and any GNU/Linux distro (Guix >> Binary). > > I don=E2=80=99t know about this. I still feel that GuixSD (be it on bare= metal > or on virtual machines) is a different beast; different enough to > deserve separate intros, each with more detail than one could achieve > by glossing over the differences. OK. I think it helps to imagine that our prospective user has read the intro paragraph above and decided they want to try Guix. Now what more do they need to know to chose a download? ISTM we could show this info in a "download comparison" table. E.g., | Run Mode | Platform support | Delivery Format | Ins= tall by | x86_64 | i686 | armhf | aarch64 | |-----------+---------------------------------------+-----------------+----= ----------+--------+------+-------+---------| | Native | Bare Metal (Note 2) | ISO image | USB= or DVD | x | x | | | | VM | KVM, Xen, VirtualBox, Hyper-V, VMware | qcow2 image | not= required | x | x | | | | VM | VirtualBox, Hyper-V, VMware (Note 3) | qcow2 image | not= required | x | x | | | | Distro | any GNU/Linux distro | binary tarball | man= ual setup | x | x | x | x | | Source | (Note 1) | source tarball | GNU= build | x | x | x | x | | Developer | (Note 1) | git repo | GNU= build | x | x | x | x | - Note 1: Minimum source build platform: GNU Guile, version 2.0.9+ or 2.2.x= +, GNU libgcrypt; GnuTLS Guile bindings; Guile-Git, GNU Make - Note 2: Currently in Beta. This GNU/Linux distro runs on any hardware supported by the linux libre kernel (Ref: libreboot HW and a= ll HW that runs Debian) - Note 3: Via 'qemu-img convert qcow2.img' ref: https://docs.openstack.org/= image-guide/convert-images.html - Guix and GuixSD installation requires root or su >> SALES MESSAGE: >> >> Introducing Guix - the first software environment manager that solves >> the problems of both sysadmins and users of GNU/Linux: >> >> - sysadmin problems: >> >> - Because I have to modify the system to meet user needs and these are >> risky, I have to prototype every change on a test system >> >> - because system changes takes time, I can't keep up with user software >> requests and users are unhappy >> >> - Users request conflicting packages, so I can't make everyone happy >> >> - user problems: >> >> - I need software that sysops won't or hasn't provided >> >> - sysops changes stuff and my environment breaks >> >> - I need software that sysops can't provide because it conflicts with >> other user requirements > > I=E2=80=99m not a fan of sales messages and that kind of language > (=E2=80=9Cintroducing=E2=80=9D, =E2=80=9Cthe first foo to do bar=E2=80=9D= , etc); I also don=E2=80=99t like that > these are all worded negatively, which is something we should avoid. OK but keep in mind that we have very little time to capture a prospective user's attention. You normally do this by saying what is unique about a product and what problem it solves. This is my attempt at points that might convince a sysadmin and/or user to try Guix/GuixSD. We can make it less salesy. But are the points wrong? Is something missing? Are there better points to make? > I agree that we can speak of Guix in a little wider terms > (e.g. =E2=80=9Csoftware environment manager=E2=80=9D instead of just =E2= =80=9Cpackage > manager=E2=80=9D), but I feel even more strongly that trying to smoothen = over > the differences between Guix and GuixSD would not be a good idea. I believe you. Can you please translate this feeling into a tangible problem that a user that downloads without understanding the differences will encounter? > I do agree, though, that we could describe GuixSD as a special case of > other Guix features: it=E2=80=99s a bare-metal deployment of these virtual > systems that =E2=80=9Cguix system=E2=80=9D can produce. > > I still think that moving the introduction and the screenshots of GuixSD > to a sub-page would be an improvement, as it reduces confusion and keeps > the focus on the features of Guix (which also include =E2=80=9Cguix syste= m=E2=80=9D, > which has GuixSD as a special case). Agreed. Maybe we can both be happy if we visualize putting GuixSD screenshots on the GuixSD download page ;-) As for the home page, it seems like screenshots and/or a video of the Guix CLI in action would be good. Screen shots and video of emacs-guix would be good. A video of dropping into Guile and/or Geiser and doing something cool would be good. A diagram conveying the multitude of Guix run-time environments would be good.