all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Chris Marusich <cmmarusich@gmail.com>
Cc: guix-devel@gnu.org, 36855@debbugs.gnu.org
Subject: bug#36855: guix system switch-generation doesn't
Date: Mon, 26 Aug 2019 12:07:29 +0200	[thread overview]
Message-ID: <874l241bq6.fsf__35802.4716888153$1566814098$gmane$org@gnu.org> (raw)
In-Reply-To: <87h86ry5j5.fsf@gmail.com> (Chris Marusich's message of "Thu, 08 Aug 2019 09:40:30 -0700")

Hey Chris & Jakob,

Chris Marusich <cmmarusich@gmail.com> skribis:

> zerodaysfordays@sdf.lonestar.org (Jakob L. Kreuze) writes:
>
>> 'switch-to-system-generation' doesn't call out to
>> 'upgrade-shepherd-services'. I'm not sure if this was an intentional
>> decision or not
>
> It is intentional, but only because there is currently no way to call
> upgrade-shepherd-services when switching system generations.

[...]

> FYI, last I checked (about 3 years ago), in NixOS they took a slightly
> different approach: instead of storing state describing the previous
> system generation and relying on the current system's logic to correctly
> parse it and use it to revert the system to a prior configuration, they
> just dump everything into a self-contained script that knows how to
> update the entire system to one specific configuration.  That approach
> is nice in some ways because switching generations is dead simple - you
> just run the switching script belonging to the generation you want to
> switch to - but it also has downsides.

Jakob, now that we generate scripts for the effectful bits of system
reconfiguration (one of these bits being service upgrades), couldn’t we
take it one step further and store those scripts in the “system”
derivation so we can run them eventually, notably upon
‘switch-generation’?

> For example, if the target generation is old enough compared to the
> current system, then the target generation's old switching script might
> not understand how to deal with the current system correctly.  Instead,
> if you only store the bare minimum of state required to take the right
> actions, and you implement the meat of the logic in the current Guix
> installation, you are more likely to be able to switch generations even
> to very old ones where the world was very different, since the current
> Guix can be taught how to deal gracefully with the old world.  But it
> seems more complicated.  It's all about trade-offs.

Indeed.  The important thing to me is that from the GRUB menu you can
really switch to any generation.  I’ve actually never used
‘switch-generations’ on my laptop, but technically, I feel like storing
the “switch-to-system” script would be the easiest way.

Thanks,
Ludo’.

  parent reply	other threads:[~2019-08-26 10:08 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-30 10:00 bug#36855: guix system switch-generation doesn't Robert Vollmert
2019-07-30 16:16 ` Jakob L. Kreuze
2019-08-06 21:21 ` Robert Vollmert
2019-08-06 21:25 ` Robert Vollmert
2019-08-07 19:37   ` bug#36855: " Christopher Lemmer Webber
2019-08-07 19:57     ` Jakob L. Kreuze
2019-08-07 19:57     ` Jakob L. Kreuze
2019-08-08 16:40       ` Chris Marusich
2019-08-08 16:40       ` Chris Marusich
2019-08-08 17:03         ` Robert Vollmert
2019-08-09  7:35           ` Chris Marusich
2019-08-09  7:35           ` Chris Marusich
2019-08-08 17:03         ` Robert Vollmert
2019-08-26 10:07         ` Ludovic Courtès [this message]
2019-08-26 18:51           ` Mark H Weaver
2019-08-28  0:34             ` Mark H Weaver
2019-08-28 18:33               ` Jakob L. Kreuze
2019-08-28 18:33               ` Jakob L. Kreuze
2019-08-28 18:46                 ` Mark H Weaver
2019-08-29  0:08                   ` Jakob L. Kreuze
2019-08-28 18:46                 ` Mark H Weaver
2019-08-26 18:51           ` Mark H Weaver
2019-08-26 10:07         ` Ludovic Courtès
2019-08-28 18:28           ` Jakob L. Kreuze
2019-08-06 21:25 ` Robert Vollmert
2021-03-09  7:01 ` bug#36855: bug#37596: 'guix system switch-generation' does not reload Shepherd services Brice Waegeneire

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='874l241bq6.fsf__35802.4716888153$1566814098$gmane$org@gnu.org' \
    --to=ludo@gnu.org \
    --cc=36855@debbugs.gnu.org \
    --cc=cmmarusich@gmail.com \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.