nixos/auto-upgrade: add persistent option

main
Milan Svoboda 3 years ago committed by lassulus
parent ac83e58d62
commit a5fb565bf5
  1. 8
      nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
  2. 4
      nixos/doc/manual/release-notes/rl-2205.section.md
  3. 39
      nixos/modules/tasks/auto-upgrade.nix

@ -1506,6 +1506,14 @@
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>
The auto-upgrade service now accepts persistent (default:
true) parameter. By default auto-upgrade will now run
immediately if it would have been triggered at least once
during the time when the timer was inactive.
</para>
</listitem>
<listitem>
<para>
If you are using Wayland you can choose to use the Ozone

@ -520,6 +520,10 @@ In addition to numerous new and upgraded packages, this release has the followin
- Support for older versions of hadoop have been added to the module
- Overriding and extending site XML files has been made easier
- The auto-upgrade service now accepts persistent (default: true) parameter.
By default auto-upgrade will now run immediately if it would have been triggered at least
once during the time when the timer was inactive.
- If you are using Wayland you can choose to use the Ozone Wayland support
in Chrome and several Electron apps by setting the environment variable
`NIXOS_OZONE_WL=1` (for example via

@ -63,13 +63,16 @@ in {
};
dates = mkOption {
default = "04:40";
type = types.str;
default = "04:40";
example = "daily";
description = ''
Specification (in the format described by
How often or when upgrade occurs. For most desktop and server systems
a sufficient upgrade frequency is once a day.
The format is described in
<citerefentry><refentrytitle>systemd.time</refentrytitle>
<manvolnum>7</manvolnum></citerefentry>) of the time at
which the update will occur.
<manvolnum>7</manvolnum></citerefentry>.
'';
};
@ -123,6 +126,22 @@ in {
});
};
persistent = mkOption {
default = true;
type = types.bool;
example = false;
description = ''
Takes a boolean argument. If true, the time when the service
unit was last triggered is stored on disk. When the timer is
activated, the service unit is triggered immediately if it
would have been triggered at least once during the time when
the timer was inactive. Such triggering is nonetheless
subject to the delay imposed by RandomizedDelaySec=. This is
useful to catch up on missed runs of the service when the
system was powered down.
'';
};
};
};
@ -217,11 +236,17 @@ in {
'';
startAt = cfg.dates;
};
systemd.timers.nixos-upgrade.timerConfig.RandomizedDelaySec =
cfg.randomizedDelaySec;
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
};
systemd.timers.nixos-upgrade = {
timerConfig = {
RandomizedDelaySec = cfg.randomizedDelaySec;
Persistent = cfg.persistent;
};
};
};
}

Loading…
Cancel
Save