I am trying to set a different default console font for my new Arch Linux installation (using systemd).

I set up my vconsole.conf in /etc as so:


I rebooted and saw my newly set console font appear, only for it to reset just before the login prompt.

Things to note:

  • running /usr/lib/systemd/systemd-vconsole-setup manually works fine
  • systemctl status systemd-vconsole-setup.service tells me that it has loaded and is "active (exited)"
  • I have indeed included the consolefont hook in mkinitcpio.conf

I spent the better part of tonight solving this same issue, even though it's 2 years later! So to avoid a DenverCoder9 moment for future visitors, here's what solved my issue.

From this email thread:

  1. As root, edit /usr/lib/systemd/system/systemd-vconsole-setup.service
  2. Change the After= and Before= lines to:

  3. Save & Quit

  4. Reboot

Your console font should now be correctly applied.

| improve this answer | |
  • 1
    OMG finally someone figured this one out! I am very glad and allso sad that noone on Archlinux forum has posted this solution... – 71GA Sep 22 '14 at 16:57
  • 2
    Instead of editing, I guess it would be better to override: askubuntu.com/questions/659267/… – equaeghe Apr 12 '16 at 21:18
  • And 3 years later still the same issue with this. Where do you put After/Before directives? In Unit or Service groups? – kodeart Jan 31 '17 at 21:30
  • systemd-vconsole-setup.service has changed a bit. – 71GA Oct 5 '17 at 11:28
  • 1
    @71GA please feel free to edit the answer, make a new one, or otherwise make sure this question has the most relevant and correct answer – Austin Hyde Oct 5 '17 at 17:24

Do you have your graphics drivers set in the MODULES array in mkinitcpio.conf? For instance here is mine from my laptop with Intel graphics.

MODULES="i915 ahci sd_mod ext4"

AMD will need radeon, Nvidia will need nouveau.

You will also want to be sure that your locale is set properly. Such as LANG=en_US.UTF-8 in /etc/locale.conf.

Relevant wiki pages:

| improve this answer | |
  • 1
    This is not a good solution. – 71GA Sep 22 '14 at 16:58
  • For future adventurers, this isn't a great solution because changing the initial ramdisk means you're guaranteed to need to rebuild the ramdisk later when graphics drivers are updated. If you're okay with the occasional (and likely inconvenient) task of using mkinitcpio or dracut to rebuild your ramdisk image... fare thee well, brave soul. Otherwise, figure out the ordering of systemd units that's causing the vconsole configuration to be overridden. – Wesley May 14 '19 at 15:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.