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: Ricardo Wurmus
Subject: Re: [GSoC] Draft proposal for an Install Wizard for Guix
Date: Wed, 23 Mar 2016 12:29:22 +0100

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.

> 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.

~~ Ricardo



reply via email to

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