summer-of-code
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GSoC] Draft proposal for an Install Wizard for Guix


From: Chris Marusich
Subject: Re: [GSoC] Draft proposal for an Install Wizard for Guix
Date: Wed, 23 Mar 2016 07:33:21 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ricardo Wurmus <address@hidden> writes:

> Chris Marusich <address@hidden> writes:
>
>>> Partitioning will allow for custom setups and also offer several
>>> default "most common" options such as:
>>>
>>>   Simple all in one big partition on one disk
>>>   Separate root and home
>>>   LVM/LVM encrypted (this would probably be more difficult to add)
>>
>> Is this different from LUKS?
>
> No.  LUKS is used at the bottom across the whole device (e.g. /dev/sda)
> and LVM is used on top of it.  You’d first unlock the LUKS partition
> with
>
>     cryptsetup luksOpen /dev/sda1 root
>
> and then create a PV on /dev/mapper/root, add the PV to a volume group
> (VG), and then create one or more logical volumes (LV) inside of the VG,
> such as /dev/mapper/vg-{home,root,swap}.
>
> Our problem is that the initrd in GuixSD currently does not have any
> support for LVM.  I’m using LUKS+LVM for my home directory and I
> manually unlock and mount the home directory after booting.

I see.  Thank you for clarifying that!

>> One more thing to consider.  While you write this installer, you might
>> want to think about how we can make the installation process itself as
>> reproducible as possible.  One of Guix's features is reproducible
>> software builds.  Shouldn't GuixSD also make it possible to reproduce
>> the process of partitioning the system's disks, making its filesystems,
>> and configuring the system for the first time?
>>
>> Some existing software attempts to solve this specific problem.  For
>> example, RedHat's Kickstart installation process provides a way to
>> automate the installation of RedHat's brand of GNU/Linux.  Something
>> that solves this same problem for GuixSD would be great!  Even if this
>> is out of scope for your project this year, it would be great if in the
>> future we could stand on the shoulders of what you create to add such a
>> feature with minimal additional effort.
>
> I like that idea.  It would be great if we could pass a kernel parameter
> at boot time to initialise the system from a given “operating-system”
> configuration file.  Kickstart is very convenient in this manner, but it
> relies on terrible macros that nobody seems to really understand.  With
> Kickstart I can boot from a thumb drive or a network image, edit the
> kernel boot line to add a line like this:
>
>     ks=http://server/config.ks
>
> to install the system according to the configuration outlined in the
> Kickstart file “config.ks”.
>
> With GuixSD we would append something like this to the kernel line:
>
>     guix=http://server/config.scm
>
> to fetch “config.scm” over HTTP and instantiate the operating system
> configuration it contains.

Yes, something like that might be useful.  By the way, I didn't mention
Kickstart because I think it's a good example that we should follow
(although I'm sure we can learn from the way Kickstart and other
existing software solves the problem); it's just the first example that
came into my head.

-- 
Chris

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]