From owner-freebsd-geom@FreeBSD.ORG Fri Apr 9 18:25:52 2010 Return-Path: Delivered-To: freebsd-geom@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2F0291065674; Fri, 9 Apr 2010 18:25:52 +0000 (UTC) (envelope-from yanefbsd@gmail.com) Received: from qw-out-2122.google.com (qw-out-2122.google.com [74.125.92.27]) by mx1.freebsd.org (Postfix) with ESMTP id 8D4918FC15; Fri, 9 Apr 2010 18:25:51 +0000 (UTC) Received: by qw-out-2122.google.com with SMTP id 5so1176602qwi.7 for ; Fri, 09 Apr 2010 11:25:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=k4JAVSGcbsMdH8xHdtxZTh6I+PY9Hi9IXkm4HkBxV6k=; b=u991YrYzZQwNfePnbT3vZFCeQZZbEWDstTQyOcg4wxDAJY12Gs7M5K8A6dNKdT1Vyi t/ZOzcWpHJgS9/s5e+vvmwP15QHfnJL9A/bcheYWgJK2eazgUFkdhNg5IpOErKerhsye X6AOgRfE9RnK0BWDT4YvOKsxTiNKdfuhvIsLk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=B3IAfxB2BVHNXQkMjAftAIkpEOLJ4+hQ4LBCfLXbcQ5W7eUvImMclShqFFHP9Qbce6 xmoRSBWadLFl838Wvq5uofb3ZQIlYlEdZMSIzROL1SfLoAHYB58wOCzLo4xhpjY5Ziwv M1yrV9geFmvoeKDCgkSCw5qLYjiCyj/GxAuyM= MIME-Version: 1.0 Received: by 10.229.33.72 with HTTP; Fri, 9 Apr 2010 11:20:00 -0700 (PDT) In-Reply-To: <86fx356ku1.fsf@ds4.des.no> References: <55861270658151@web135.yandex.ru> <20100408103809.13496s9i6ny03ocg@webmail.leidinger.net> <867hoi8gbl.fsf@ds4.des.no> <201004080849.12151.jhb@freebsd.org> <86r5mqt4aj.fsf@ds4.des.no> <86sk75ol54.fsf@ds4.des.no> <86fx356ku1.fsf@ds4.des.no> Date: Fri, 9 Apr 2010 11:20:00 -0700 Received: by 10.229.211.204 with SMTP id gp12mr444117qcb.59.1270837200788; Fri, 09 Apr 2010 11:20:00 -0700 (PDT) Message-ID: From: Garrett Cooper To: =?ISO-8859-1?Q?Dag=2DErling_Sm=F8rgrav?= Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Bruce Cran , John Baldwin , freebsd-geom@freebsd.org, Teske , Randi Harper , freebsd-current@freebsd.org, "Andrey V. Elsukov" , Alexander Leidinger Subject: Re: [RFC] Rewriting sade(8) X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Apr 2010 18:25:52 -0000 2010/4/9 Dag-Erling Sm=F8rgrav : > Garrett Cooper writes: >> Dag-Erling Sm=F8rgrav writes: >> > Garrett Cooper writes: >> > > Dag-Erling Sm=F8rgrav writes: >> > > > [restored relevant context which was removed earlier in the thread= ] >> > > > ...which is exactly what I said - but in the sysinstall case, you = may >> > > > want to ask some additional questions ("are you sure you want to p= roceed >> > > > without a swap partition?") or place some additional constraints (= such >> > > > as "don't allow the user to mount something on top of /mnt or /res= cue"), >> > > > and sysinstall needs to know the outcome. >> > > If the user shoots him or herself in the foot, that's their own >> > > problem. >> > That kind of attitude is why people choose Linux over FreeBSD... >> Where do you draw the line though? /media, /libexec, /proc, /sys, etc? >> I think it's better to educate users than build in more complexity to >> the install application. > > I draw the line at mounting something - anything - on top of directories > that contain files that are critical to sysinstall's operation. =A0IIRC, > /mnt is where the installation CD is mounted. Ok... rather than hardcoding this list into sysinstall or sade, it would be nice if it was in some kind of flexible metadata. > In sysinstall mode, sade's role is to 1) make sure that something > sensible is mounted in the location where sysinstall is going to install > the OS, 2) assist the user in making the correct disk, slice, partition > or what-have-you bootable, What is sensible today, may not be sensible for all cases or sensible tomorrow. For instance, there have been some reports about the `Auto defaults' in sysinstall completely screwing up the size as the default was way too low for /, and thus a user shot himself in the foot when doing a binary upgrade via freebsd-update. This `smart default' needs to exist as a minimum and maximum defined in some kind of metadata, and it would definitely help if one knew what the use-case would be for the machine, but one doesn't know this data from the way that things have been setup. > 3) within reasonable limits, prevent the user > from doing something that will break sysinstall, Point being, how do you qualify the act of not `break[ing] sysinstall'? > and 4) optionally allow > the user to prepare additional filesystems that sysinstall doesn't care > about (e.g. /usr/obj), as long as this does not conflict with 3). > > I think the easiest way to achieve this is for sysinstall to provide an > empty directory (e.g. /inst) and have sade operate with that directory > as root, so what the user sees is how things will look when the system > reboots after installation; when the user asks sade to create /usr/obj, > sade actually creates /inst/usr/obj. Now you're making a dangerous assumption that /inst isn't being used by the end-user for any predefined purpose. > Last but not least, sade should report what it did to sysinstall - > perhaps in fstab format, since sysinstall needs to populate > (/inst)/etc/fstab anyway. Ok. Or maybe since `we're here' sade needs to be populating $DESTDIR/etc/fstab, not sysinstall ? Ideally sysinstall should be a thin wrapper over a number of different utilities which would provide the code for thinking things together, not doing a bunch of operations. That way the code itself could be divorced from the activities it's performing a bit better and people could swap in other solutions as they feel fit (say the PCBSD QT installer, or the myriad of different installers available today for FreeBSD in GTK, QT, etc format). Thanks, -Garrett