mbox series

[bug#73927,v4,00/18] Installer support for (cross) installing the Hurd.

Message ID cover.1730296564.git.janneke@gnu.org
Headers show
Series Installer support for (cross) installing the Hurd. | expand

Message

Janneke Nieuwenhuizen Oct. 30, 2024, 2:30 p.m. UTC
From: "Janneke Nieuwenhuizen" <janneke@gnu.org>

New in this series:

  * reconfigure: Use native bootloader package for running the installer,
  * default to "msdos" partion table,
  * do not suggest/create boot partition,
  * remove "--skip-checks" from guix system init call,
  * default to part:1:device:wd0 instead of failing when no permission to read
    /dev (resurrecting tests/guix-system.sh),

which lead to the first fresh install that actually boots without any extra
tinkering on my x60 using this

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix system image -t iso9660 --system=i686-linux gnu/system/install.scm
--8<---------------cut here---------------end--------------->8---

installer.  I've updated the hurd-team branch.

Greetings,
Janneke

Janneke Nieuwenhuizen (18):
  gnu: guile-fibers: Fix cross-build for the Hurd.
  reconfigure: Use native bootloader package for running the installer.
  guix system: When installing the Hurd, create essential devices.
  bootloader: grub: Remove hardcoded partition number for the Hurd.
  system: hurd: Remove qemu networking from %base-services/hurd.
  system: hurd: Add swap-services to hurd-default-essential-services.
  gnu: hurd: Support second boot.
  hurd-boot: Support second boot.
  maint: Add installer dependencies to the manifest.
  installer: Remove unused (newt) imports.
  installer: Align comments.
  installer: Use "partitioning-page" consistently.
  installer: Fix file-name typos.
  installer: Use `%' for parameter %run-command-in-installer.
  installer: Add dry-run?
  installer: Add "Kernel" page to select the Hurd.
  installer: Add static-networking template.
  installer: Support dry-run from Guile via store.

 gnu/bootloader/grub.scm                 |  19 ++-
 gnu/build/file-systems.scm              |  58 +++++++
 gnu/build/hurd-boot.scm                 |  21 ++-
 gnu/installer.scm                       | 207 ++++++++++++++++++------
 gnu/installer/final.scm                 |   9 +-
 gnu/installer/kernel.scm                |  41 +++++
 gnu/installer/newt.scm                  |  24 ++-
 gnu/installer/newt/ethernet.scm         |   1 -
 gnu/installer/newt/final.scm            |  20 ++-
 gnu/installer/newt/kernel.scm           |  45 ++++++
 gnu/installer/newt/keymap.scm           |   6 +-
 gnu/installer/newt/locale.scm           |   7 +-
 gnu/installer/newt/page.scm             |   7 +-
 gnu/installer/newt/parameters.scm       |   1 -
 gnu/installer/newt/partition.scm        |  11 +-
 gnu/installer/newt/services.scm         |  32 ++--
 gnu/installer/parted.scm                | 141 ++++++++++------
 gnu/installer/record.scm                |   8 +-
 gnu/installer/services.scm              |  68 ++++++--
 gnu/installer/steps.scm                 |  30 ++--
 gnu/installer/tests.scm                 |  11 ++
 gnu/installer/utils.scm                 |  17 +-
 gnu/local.mk                            |   3 +
 gnu/packages/guile-xyz.scm              |  11 +-
 gnu/packages/hurd.scm                   |   6 +-
 gnu/packages/patches/hurd-startup.patch |  82 ++++++++++
 gnu/services/base.scm                   |  20 ++-
 gnu/services/virtualization.scm         |   4 +-
 gnu/system.scm                          |  13 +-
 gnu/system/examples/bare-hurd.tmpl      |  10 +-
 gnu/system/hurd.scm                     |  26 +--
 gnu/system/images/hurd.scm              |   2 +-
 gnu/tests/install.scm                   |   6 +-
 guix/scripts/system.scm                 |   6 +-
 guix/scripts/system/reconfigure.scm     |   3 +-
 manifest.scm                            |   7 +-
 36 files changed, 775 insertions(+), 208 deletions(-)
 create mode 100644 gnu/installer/kernel.scm
 create mode 100644 gnu/installer/newt/kernel.scm
 create mode 100644 gnu/packages/patches/hurd-startup.patch


base-commit: d6f775c30c6f47e174f6110d1089edc6315600e4

Comments

Janneke Nieuwenhuizen Nov. 11, 2024, 6:37 a.m. UTC | #1
Mathieu Othacehe writes:

Hello,

> Janneke Nieuwenhuizen writes:
>> From: "Janneke Nieuwenhuizen" <janneke@gnu.org>
>>
>> New in this series:
>>
>>   * reconfigure: Use native bootloader package for running the installer,
>>   * default to "msdos" partion table,
>>   * do not suggest/create boot partition,
>>   * remove "--skip-checks" from guix system init call,
>>   * default to part:1:device:wd0 instead of failing when no permission to read
>>     /dev (resurrecting tests/guix-system.sh),
>>
>> which lead to the first fresh install that actually boots without any extra
>> tinkering on my x60 using this
>>
>> ./pre-inst-env guix system image -t iso9660 --system=i686-linux gnu/system/install.scm
>>
>> installer.  I've updated the hurd-team branch.

> I remember resorting to a similar hack, back in 2018 when writing the
> installer. Maybe we should go the extra mile and integrate that one to a
> proper guix command, such as `guix system installer` that would call
> `run-installer` with dry-run set to #t. WDYT?

Yes, I still think this is a nice idea.  Better to open a new bug for
that when someone wants to write a patch?

Pushed to master as 035e5f0c743d80be3d4029f9daba90cb8b657782.

Thanks!
Janneke