[Top][All Lists]

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

System installation from a USB stick

From: Ludovic Courtès
Subject: System installation from a USB stick
Date: Tue, 03 Jun 2014 22:39:28 +0200
User-agent: Gnus/5.130009 (Ma Gnus v0.9) Emacs/24.3 (gnu/linux)


There’s been some progress towards having an image for installing the
GNU system from a USB stick.  Here’s a summary of the things recently
introduced toward that goal:

  • ‘guix system disk-image FILE’ generates a raw disk image of the
    operating system declared in FILE (info "(guix) Using the
    Configuration System").

    The image contains a DOS partition table and a single partition,
    ext4-formatted.  The idea is that it can be copied as is on a USB
    stick that is large enough:

      sudo dd if=$(guix system disk-image FILE) of=/dev/sdXX

  • The (guix system install) module provides a (very basic) operating
    system declaration corresponding to the system that would run on the
    installation USB stick: it has all the useful packages (Guix, disk
    partitioning tools, networking, etc.), tty2 has the Info reader
    opened on the right section of the manual (though it needs to be
    expanded), etc.

  • ‘guix system init FILE DIR’ populates DIR with the store and
    additional files corresponding to the operating system declaration
    in FILE (info "(guix) Invoking guix system").

  • The boot/initrd code has been improved.  For instance, it’s able to
    mount file systems specified by label instead of by device node,
    which is useful for the USB stick.  (And it does that all in Scheme,
    without resorting to libblkid. :-))

I plan to upload an image for the brave with a spare machine to
sacrifice for testing purposes.  :-)

Note that it’s also possible to GNUify an existing system by running
‘guix system init FILE /’, which basically installs GRUB with a menu
entry pointing to a kernel, initrd, etc. from /gnu/store.

There’s more work ahead, but it’s becoming pretty exciting.


reply via email to

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