chiark / gitweb /
man/sd_journal_get_data: fix variable naming in example
[elogind.git] / man / systemd.unit.xml
index b337bb42bcfc593d9b05f0fce3097b9737982ed5..960fb90dbd1d8080bbb97958327b0574b5270300 100644 (file)
                                 <term><varname>ConditionSecurity=</varname></term>
                                 <term><varname>ConditionCapability=</varname></term>
                                 <term><varname>ConditionACPower=</varname></term>
                                 <term><varname>ConditionSecurity=</varname></term>
                                 <term><varname>ConditionCapability=</varname></term>
                                 <term><varname>ConditionACPower=</varname></term>
+                                <term><varname>ConditionNeedsUpdate=</varname></term>
                                 <term><varname>ConditionPathExists=</varname></term>
                                 <term><varname>ConditionPathExistsGlob=</varname></term>
                                 <term><varname>ConditionPathIsDirectory=</varname></term>
                                 <term><varname>ConditionPathExists=</varname></term>
                                 <term><varname>ConditionPathExistsGlob=</varname></term>
                                 <term><varname>ConditionPathIsDirectory=</varname></term>
                                 all AC connectors are disconnected
                                 from a power source.</para>
 
                                 all AC connectors are disconnected
                                 from a power source.</para>
 
+                                <para><varname>ConditionNeedsUpdate=</varname>
+                                takes one of <filename>/var</filename>
+                                or <filename>/etc</filename> as
+                                argument, possibly prefixed with a
+                                <literal>!</literal> (for inverting
+                                the condition). This condition may be
+                                used to conditionalize units on
+                                whether the specified directory
+                                requires an update because
+                                <filename>/usr</filename>'s
+                                modification time is newer than the
+                                stamp file
+                                <filename>.updated</filename> in the
+                                specified directory. This is useful to
+                                implement offline updates of the
+                                vendor operating system resources in
+                                <filename>/usr</filename> that require
+                                updating of <filename>/etc</filename>
+                                or <filename>/var</filename> on the
+                                next following boot. Units making use
+                                of this condition should order
+                                themselves before
+                                <citerefentry><refentrytitle>systemd-update-done.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+                                to make sure they run before the stamp
+                                files's modification time gets reset
+                                indicating a completed update.</para>
+
                                 <para>With
                                 <varname>ConditionPathExists=</varname>
                                 a file existence condition is
                                 <para>With
                                 <varname>ConditionPathExists=</varname>
                                 a file existence condition is
                                 useful for implementation of generator
                                 tools that convert configuration from
                                 an external configuration file format
                                 useful for implementation of generator
                                 tools that convert configuration from
                                 an external configuration file format
-                                into native unit files. Thus
+                                into native unit files. This
                                 functionality should not be used in
                                 normal units.</para></listitem>
                         </varlistentry>
                                 functionality should not be used in
                                 normal units.</para></listitem>
                         </varlistentry>
                         <varlistentry>
                                 <term><varname>DefaultInstance=</varname></term>
 
                         <varlistentry>
                                 <term><varname>DefaultInstance=</varname></term>
 
-                                <listitem><para>In template unit files
+                                <listitem><para>In template unit files,
                                 this specifies for which instance the
                                 unit shall be enabled if the template
                                 is enabled without any explicitly set
                                 this specifies for which instance the
                                 unit shall be enabled if the template
                                 is enabled without any explicitly set