Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

image creating fails with vconsole set to true #207

Open
andyrtr opened this issue Feb 16, 2023 · 7 comments
Open

image creating fails with vconsole set to true #207

andyrtr opened this issue Feb 16, 2023 · 7 comments

Comments

@andyrtr
Copy link

andyrtr commented Feb 16, 2023

The Arch booster version fails to create the image when trying to include the vconsole font settings using "vconsole: true" here at FONT_MAP it seems. The booster config here does not include any other entry.

vconsole.conf has

KEYMAP=de-latin1-nodeadkeys                                                                
FONT_MAP=8859-2                                                                            
FONT=spleen-12x24

/usr/lib/booster/regenerate_images
2023/02/16 18:13:19 unable to find file for specified font '8859-2'

@anatol
Copy link
Owner

anatol commented Feb 16, 2023

Hi @andyrtr

Booster is looking for font files at /usr/share/kbd/consolefonts/ directory. Do you have 8859-2 or 8859-2.gz file there?

@andyrtr
Copy link
Author

andyrtr commented Feb 16, 2023

No. There's only /usr/share/i18n/charmaps/ISO-8859-2.gz that looks related here.

@anatol
Copy link
Owner

anatol commented Feb 17, 2023

INteresting.

Currently booster picks /usr/share/kbd/consolefonts/$FONT_MAP.gz file and passes it to setfont -m $FILE during the boot.

I checked mkinitcpio and it seems to ignore the FONT_MAP part completely. @andyrtr which initramfs do you currently use? I want to check how FONT_MAP is handled there.

@andyrtr
Copy link
Author

andyrtr commented Feb 17, 2023

I'm using booster as my main initcpio and some more critical systems still have dracut installed for fallback.

I'm just trying to add the font settings for the first time to try if I can workaround a bug introduced in 6.0 kernel. Up to 5.19 the vconsole.conf font setting is properly taken by the late kernel boot and is kept when switching to greetd-tui. From 6.0 release on I see the first boot msg page switching to my custom font setting but the font is then reset when a 2nd boot message page it written.

tpowa has doing some tests with mkinitcpio that is affected by the same. He found some workaround there to make the kernel reapply the custom font setting.

It would be nice when we could find a way to get the font working in inintrd to get a seemless boot output. The late userspace kernel issue is something different. Please tell me here or at IRC if I can do something for you.

It's not a serious issue but it would be nice to get booster working

@andyrtr
Copy link
Author

andyrtr commented Feb 18, 2023

small note: I've found the console font workaround required for kernel 6.0 and up: it's written down at the Arch wiki (Linux_console/Persistent_configuration) - to avoid the resolution reset it's required to add the video module to the initrd to enable early kms.

But this is not an actual fix for this booster font adding issue.

@anatol
Copy link
Owner

anatol commented Mar 1, 2023

So booster should handle these parameters the same way as systems.

I am looking at systemd code and it essentially calls setfont -C NNN -m 8859-2 spleen-12x24.

Such call fails for me as it cannot find the font files at my computer. Nothing in /usr/share/kbd neither:

➜  kbd pwd
/usr/share/kbd
➜  kbd ls -R | grep spleen
➜  kbd

@andyrtr did you install any extra packages to get that map file? Could you please also call the setfont with strace -e file setfont .... so I can see where exactly setfont looks up for the fontmap file.

@logarrhythmic
Copy link

strace -o strace.txt -e file setfont ter-v32n -m 8859-2
strace.txt
looks like it

  • looks for 8859-2 at the working directory,
  • doesn't find it
  • starts looking through /usr/share/kbd/consoletrans/
  • decides upon /usr/share/kbd/consoletrans/8859-2_to_uni.trans and opens that
  • the rest is other stuff including looking for the font at /usr/share/kbd/consolefonts/
    This is on Arch Linux with xanmod kernel 6.7.6, I think the general idea of the consoletrans directory is what you needed here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants