Bug 1872922 - xkb-converted console layouts that cannot input ASCII not stripped due to grep / zgrep -L bug ; causes several languages to have broken console layouts
Summary: xkb-converted console layouts that cannot input ASCII not stripped due to gre...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kbd
Version: 33
Hardware: All
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: Vitezslav Crhonek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: openqa AcceptedFreezeException Accept...
Depends On: 1863830 1872913
Blocks: F33BetaFreezeException F33FinalBlocker
TreeView+ depends on / blocked
 
Reported: 2020-08-26 23:21 UTC by Adam Williamson
Modified: 2020-09-02 19:48 UTC (History)
3 users (show)

Fixed In Version: kbd-2.3.0-2.fc33
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-09-02 19:48:48 UTC
Type: Bug


Attachments (Terms of Use)

Description Adam Williamson 2020-08-26 23:21:34 UTC
In kbd-2.3.0-1.fc33 , all xkb-converted console layouts that cannot input ASCII were left in, not stripped as intended. This is because of a bug in zgrep -L caused by a grep change in 3.4:

https://bugzilla.redhat.com/show_bug.cgi?id=1872913

because of that bug, the line in kbd %install that's intended to strip all non-ASCII-capable converted layouts didn't work:

# wipe converted layouts which cannot input ASCII (#1031848)
zgrep -L "U+0041" $RPM_BUILD_ROOT%{kbd_datadir}/keymaps/xkb/* | xargs rm -f

and they all stayed in the package. This means that, for instance, we have a /usr/lib/kbd/keymaps/xkb/ru.map.gz which cannot input ASCII characters, only Russian ones. This is a big problem, because that layout actually "wins" over /usr/lib/kbd/keymaps/legacy/i386/qwerty/ru.map.gz when we go to load a layout called 'ru', and that makes a Russian install virtually unusable at the console because you can't type any ASCII characters. For an encrypted install, this renders the system pretty much unbootable, because you will have the broken layout when attempting to enter your encryption passphrase, so you just won't be able to do it.

Proposing as a Final blocker as a violation of Final criterion "If a particular keyboard layout has been configured for the system, that keyboard layout must be used: When unlocking encrypted storage volumes during boot (but see footnotes)". We expect the switchable legacy 'ru' layout in ASCII input mode during decryption, not the non-switchable xkb-converted one.

I'm currently working to get a grep build done with the fix for the zgrep bug, after which we'll be able to rebuild kbd and get the layouts stripped properly again. It's hard sledding, though, because there's another bug causing the grep test suite to crash on some arches...

Comment 1 Adam Williamson 2020-08-28 18:37:43 UTC
OK, I got this fixed for Rawhide with https://koji.fedoraproject.org/koji/taskinfo?taskID=50341727 - grep is rebuilt now, and I've examined the kbd-misc from that build and confirmed its contents are much more like kbd-misc-2.2.0-3.fc33 than kbd-misc-2.3.0-1.fc33, with just the changes you'd expect from 2.3.0 (a few layouts updated, a few added).

Will do the same for F33, but can only do it when the new gcc build (https://koji.fedoraproject.org/koji/buildinfo?buildID=1601225 ) finally completes as we need that to rebuild grep.

Comment 2 Fedora Update System 2020-08-28 21:36:25 UTC
FEDORA-2020-81fea835a4 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2020-81fea835a4

Comment 3 Fedora Update System 2020-08-31 14:27:37 UTC
FEDORA-2020-81fea835a4 has been pushed to the Fedora 33 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-81fea835a4`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-81fea835a4

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 4 Adam Williamson 2020-08-31 16:38:34 UTC
we should actually make this a Beta FE as well as fixing it for Beta is obviously desirable. proposing.

Comment 5 Geoffrey Marr 2020-08-31 17:30:39 UTC
Discussed during the 2020-08-31 blocker review meeting: [0]

The decision to classify this bug as both an "AcceptedBlocker (Final)" and an "AcceptedFreezeException (Beta)" was made as a violation of the following blocker criterion:

"If a particular keyboard layout has been configured for the system, that keyboard layout must be used: When unlocking encrypted storage volumes during boot (but see footnotes)"

Also accepted as a Beta FE as a significant bug for affected languages which cannot be fixed with a post-release update.

[0] https://meetbot.fedoraproject.org/fedora-blocker-review/2020-08-31/f33-blocker-review.2020-08-31-16.00.txt

Comment 6 Fedora Update System 2020-09-02 19:48:48 UTC
FEDORA-2020-81fea835a4 has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.