Если вы работаете в системе, использующей GNU Coreutils (почти любой Linux), вы можете попробовать stdbuf
:
… | stdbuf -oL cut -d '@' -f 1 | …
-oL
делает его строковым буфером, что похоже на то, что вы хотите.
sessionCommands = ''
${xorg.xkbcomp}/bin/xkbcomp ${layout} $DISPLAY &
'';
};
Это временная проблема. Исправление есть в systemd, но версии systemd пока нет в NixOS:
https://github.com/systemd/systemd/commit/5016eb56352a7ea1f61ea106fa4f5639fbf6ddd8
Я знаю, что вы говорите! "Это не ответ!" и я согласен! К счастью, у нас есть опция services.udev.extraHwdb
, где мы можем добавить свои собственные правила udev в configuartion.nix
.
Вот последнее исправление, над которым я сейчас работаю:
services.udev.extraHwdb = ''
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnPurism*:pn*Librem13v4*:pvr*
KEYBOARD_KEY_56=backslash
''