all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#53063] [PATCH wip-harden-installer 00/14] General improvements to the installer
@ 2022-01-06 22:45 Josselin Poiret via Guix-patches via
  2022-01-06 22:47 ` [bug#53063] [PATCH wip-harden-installer 01/14] installer: Use define instead of let at top-level Josselin Poiret via Guix-patches via
                   ` (13 more replies)
  0 siblings, 14 replies; 40+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2022-01-06 22:45 UTC (permalink / raw)
  To: 53063; +Cc: Josselin Poiret

Hello everyone,

Here are some miscellaneous improvements to the installer.  Here is a
run down of the bigger changes:

* Patches 2 to 4 move logging from simply putting everything in syslog
  to a more flexible approach, logging lines to multiple targets.  One
  new target is a per-install /tmp/installer.{DATETIME}.log.

* Patches 5 and 6 add a new alternative to invoke (or system*), which
  forks to a new child process with a pipe back to the main process,
  sets stdout and stderr to that pipe followed by execlp'ing the
  command, while the main process reads from the pipe and applies some
  configurable procedures to each line of output.  This lets us log
  all external command output using the same facility as the installer
  itself, while displaying everything to the user.  Patch 6 is
  "optional", as it is there simply to avoid getting "Error in
  finalization thread: Success".

* Patches 7 to 9 add a parameter run-command-in-installer, that is an
  installer-specific way of running external commands.  Here, the Newt
  installer one simply suspends newt and runs the command in the
  terminal.

* Patch 13 modifies the installer step aborting mechanism to
  use general prompts instead of the exception system.  This was done
  so that a following patchset (which will hopefully be coming soon)
  is able to abort an installer step from an exception handling code
  that is outside of the run-installer-steps.  You could also say that
  it is cleaner :).

* Patch 14 adds a new confirmation page before running any external
  command, with the possibility to abort the current installer step.

The next step should be moving installer-program in (gnu installer) to
use SRFI-34/35 exception handling over the current throw/catch one, as
the current code doesn't display those properly.

Josselin Poiret (14):
  installer: Use define instead of let at top-level.
  installer: Generalize logging facility.
  installer: Use new installer-log-line everywhere.
  installer: Un-export syslog syntax.
  installer: Capture external commands output.
  installer: Disable automatic finalization for child thread.
  installer: Add installer-specific run command process.
  installer: Use run-command-in-installer in (gnu installer parted).
  installer: Use the command capturing facility for guix init.
  installer: Raise condition when mklabel fails.
  installer: Fix run-file-textbox-page when edit-button is #f.
  installer: Replace run-command by invoke in newt/page.scm.
  installer: Use named prompt to abort or break installer steps.
  installer: Add confirmation page when running external commands.

 gnu/installer.scm                |  15 ++-
 gnu/installer/final.scm          |  23 +---
 gnu/installer/newt.scm           |  22 ++-
 gnu/installer/newt/ethernet.scm  |   8 +-
 gnu/installer/newt/final.scm     |  22 +--
 gnu/installer/newt/keymap.scm    |   8 +-
 gnu/installer/newt/locale.scm    |  25 ++--
 gnu/installer/newt/network.scm   |  16 +--
 gnu/installer/newt/page.scm      |  22 +--
 gnu/installer/newt/partition.scm |  10 +-
 gnu/installer/newt/services.scm  |  16 +--
 gnu/installer/newt/timezone.scm  |   4 +-
 gnu/installer/newt/user.scm      |   5 +-
 gnu/installer/newt/welcome.scm   |   2 +-
 gnu/installer/newt/wifi.scm      |   4 +-
 gnu/installer/parted.scm         | 104 +++++++-------
 gnu/installer/record.scm         |   7 +-
 gnu/installer/steps.scm          | 127 ++++++++---------
 gnu/installer/utils.scm          | 225 +++++++++++++++++++++++++++----
 19 files changed, 389 insertions(+), 276 deletions(-)

-- 
2.34.0





^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2022-02-02 17:57 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-06 22:45 [bug#53063] [PATCH wip-harden-installer 00/14] General improvements to the installer Josselin Poiret via Guix-patches via
2022-01-06 22:47 ` [bug#53063] [PATCH wip-harden-installer 01/14] installer: Use define instead of let at top-level Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 02/14] installer: Generalize logging facility Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 03/14] installer: Use new installer-log-line everywhere Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 04/14] installer: Un-export syslog syntax Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 05/14] installer: Capture external commands output Josselin Poiret via Guix-patches via
2022-01-07 13:47   ` [bug#53063] [PATCH wip-harden-installer 00/14] General improvements to the installer Ludovic Courtès
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 06/14] installer: Disable automatic finalization for child thread Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 07/14] installer: Add installer-specific run command process Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 08/14] installer: Use run-command-in-installer in (gnu installer parted) Josselin Poiret via Guix-patches via
2022-01-07 10:58   ` Mathieu Othacehe
2022-01-07 11:46     ` Josselin Poiret via Guix-patches via
2022-01-15 13:49     ` [bug#53063] [PATCH v2 wip-harden-installer 00/18] General improvements to the installer Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 01/18] installer: Use define instead of let at top-level Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 02/18] installer: Generalize logging facility Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 03/18] installer: Use new installer-log-line everywhere Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 04/18] installer: Un-export syslog syntax Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 05/18] installer: Keep PATH inside the install container Josselin Poiret via Guix-patches via
2022-01-15 13:49       ` [bug#53063] [PATCH v2 wip-harden-installer 06/18] installer: Remove specific logging code Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 07/18] installer: Capture external commands output Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 08/18] installer: Add installer-specific run command process Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 09/18] installer: Use run-command-in-installer in (gnu installer parted) Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 10/18] installer: Raise condition when mklabel fails Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 11/18] installer: Fix run-file-textbox-page when edit-button is #f Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 12/18] installer: Replace run-command by invoke in newt/page.scm Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 13/18] installer: Add nano to PATH Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 14/18] installer: Use named prompt to abort or break installer steps Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 15/18] installer: Add error page when running external commands Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 16/18] installer: Use dynamic-wind to setup installer Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 17/18] installer: Turn passwords into opaque records Josselin Poiret via Guix-patches via
2022-01-15 13:50       ` [bug#53063] [PATCH v2 wip-harden-installer 18/18] installer: Make dump archive creation optional and selective Josselin Poiret via Guix-patches via
2022-01-17 10:16       ` [bug#53063] [PATCH wip-harden-installer 00/14] General improvements to the installer Mathieu Othacehe
2022-01-31 17:45         ` [bug#53063] [PATCH] installer: Use system-wide guix for system init Josselin Poiret via Guix-patches via
2022-02-02 15:50           ` bug#53063: " Mathieu Othacehe
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 09/14] installer: Use the command capturing facility for guix init Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 10/14] installer: Raise condition when mklabel fails Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 11/14] installer: Fix run-file-textbox-page when edit-button is #f Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 12/14] installer: Replace run-command by invoke in newt/page.scm Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 13/14] installer: Use named prompt to abort or break installer steps Josselin Poiret via Guix-patches via
2022-01-06 22:48 ` [bug#53063] [PATCH wip-harden-installer 14/14] installer: Add confirmation page when running external commands Josselin Poiret via Guix-patches via

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.