<refsect1>
<title>Description</title>
- <para><filename>systemd-vconsole-setup</filename> sets up and configures either all virtual consoles, or — if the
- optional <replaceable>TTY</replaceable> parameter is provided — a specific one. When the system is booting up, it's
- called by <citerefentry><refentrytitle>systemd-udevd</refentrytitle><manvolnum>8</manvolnum></citerefentry> during
- VT console subsystem initialization. Also,
- <citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> invokes
- it as needed when language or console changes are made. Internally, this program calls <citerefentry
- project='mankier'><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry> and <citerefentry
- project='die-net'><refentrytitle>setfont</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
+ <para><filename>systemd-vconsole-setup</filename> sets up and configures either all virtual consoles, or
+ — if the optional <replaceable>TTY</replaceable> parameter is provided — a specific one. When the system
+ is booting up, <filename>systemd-vconsole-setup.service</filename> is called by
+ <citerefentry><refentrytitle>systemd-udevd</refentrytitle><manvolnum>8</manvolnum></citerefentry> during
+ VT console subsystem initialization. Also,
+ <citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+ invokes it as needed when language or console changes are made.
+ Internally, this program calls
+ <citerefentry project='mankier'><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ and
+ <citerefentry project='die-net'><refentrytitle>setfont</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
</para>
<para>Execute <command>systemctl restart systemd-vconsole-setup.service</command> in order to apply any manual
ConditionFirstBoot=yes
DefaultDependencies=no
-After=systemd-remount-fs.service systemd-sysusers.service systemd-tmpfiles-setup.service
+# This service may need to write to the file system:
+After=systemd-remount-fs.service
+# Both systemd-sysusers and systemd-tmpfiles may create the root account
+# (via factory files or credentials), obviating the need for us to do that:
+After=systemd-sysusers.service systemd-tmpfiles-setup.service
+# Let vconsole-setup do its setup before starting user interaction:
+After=systemd-vconsole-setup.service
+
Wants=first-boot-complete.target
Before=first-boot-complete.target sysinit.target
Conflicts=shutdown.target