Hi, Danny Milosavljevic <[email protected]> skribis:
> On Mon, 26 Feb 2018 18:09:53 +0100 > [email protected] (Ludovic Courtès) wrote: > >> 1. status quo, i.e., tcsetattr without %G in the ‘term-ttyN’ services; >> >> 2. remove the tcsetattr call, write “1” to >> /sys/module/vt/parameters/default_utf8; >> >> 3. do nothing (no tcsetattr, no /sys, no %G). >> >> It seems that systemd does everything: %G, tcsetattr, and /sys. > > We have the following options as a distribution: > > (a) Hope that the user sets up everything as he should - iff they set up > the kernel as non-utf8, they also must set up an non-utf-8 console font. > (b) Force their hand by decreeing that GuixSD is utf-8 only. That's what > we are doing now I think - and a lot of projects (GNOME etc) assume UTF-8 > nowadays anyway. > > Since we just want to fix the bug and leave everything else as it is (b), > I'd vote for your (2.). > > (2.) needs to be done early before the VTs are actually there. OK, makes sense, I agree. > default_utf8 is a default, and it will be read only when defaulting, so > in this case it will be read when Linux is constructing a tty. > > %base-services contain both console-font-service and mingetty-service which > both access the ttys. Linux VTs are created on demand. > > Once the VTs are created, us setting default_utf8 is too late. > > We should set default_utf8 before anyone touches tty[123456]. > > Where will that be? > > Should we just set it in boot-system ? That's probably a nice way - > also since I think this setting is quite Linux-specific. Alternately we could introduce a ‘virtual-terminal’ service that every ‘term-*’ service would depend on. That ‘virtual-terminal’ service would simply write “1” to /sys/…/default_utf8. How does that sound? Ludo’.
