Bug 1666320

Summary: Fedora Silverblue 29 default quick install via GNOME Boxes in Fedora Workstation 29 fails with: error occurred during reading the kickstart file single argument is expected for the keyboard command
Product: [Fedora] Fedora Reporter: Michael Vorburger <vorburger>
Component: osinfo-dbAssignee: Fabiano Fidêncio <fidencio>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 29CC: berrange, dustymabe, fidencio, jlebon, jonathan, miabbott, vorburger, walters
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: osinfo-db-20190120-1.fc29 osinfo-db-20190218-1.fc28 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-01-24 04:31:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Attachments:
Description Flags
Screenshot of failed installation in GNOME Boxes none

Description Michael Vorburger 2019-01-15 13:55:47 UTC
Created attachment 1520777 [details]
Screenshot of failed installation in GNOME Boxes

I thought I would give Fedora Silverblue 29 a first look when it popped into my face on that screen of GNOME Boxes in Fedora Workstation 29, I choose "quick" or whatever that option for not asking any questions is, gave it a username without password, and waited... but it got stuck and just sat there, and upon clicking "Installing..." in the Boxes UI revealed the console (see attached screenshot) which showed the following error from anaconda:

error occurred during reading the kickstart file single argument is expected for the keyboard command

This was with whatever version of the Silverblue image Boxes downloads; I've not actually grabbed it myself from https://silverblue.fedoraproject.org/download

Version-Release number of selected component (if applicable): 29

Steps to Reproduce:
1. Install Fedora Workstation 29
2. start GNOME Boxes and New VM for Fedora Silverblue 29

Actual results: gets stuck, see attached

Expected results: working Fedora Silverblue 29

Comment 1 Michael Vorburger 2019-01-15 14:01:14 UTC
> This was with whatever version of the Silverblue image Boxes downloads; 
> I've not actually grabbed it myself from https://silverblue.fedoraproject.org/download

have double checked this by grabbing https://download.fedoraproject.org/pub/fedora/linux/releases/29/Silverblue/x86_64/iso/Fedora-Silverblue-ostree-x86_64-29-1.2.iso and confirmed that it's identical to what the GNOME Boxes fetched and put into ~/Downloads, so it's not like it grabbed an old version.

Comment 2 Jonathan Lebon 2019-01-15 14:07:57 UTC
Hmm, this sounds like GNOME Boxes using an incorrect kickstart? Re-assigning to osinfo-db, but with reservations.

Comment 3 Dusty Mabe 2019-01-15 14:14:59 UTC
this sounds like https://pagure.io/teamsilverblue/issue/29 - which should be fixed upstream according to https://pagure.io/teamsilverblue/issue/29#comment-545008 . Doesn't look like it has made it into fedora yet.

Comment 4 Fabiano Fidêncio 2019-01-15 14:24:09 UTC
Michael, may I ask your keyboard layout and language that you're using on your F29? 
I'd like to give it a try with the exactly same config you've faced the issue. 

The issue may be either on osinfo-db (in the kickstart file we have for Silverblue) or on Boxes side where it passes the keyboard config to libosinfo (and then the script is generated with bogus data).

I've given a try here (using en_US keyboard layout on the host machine) and it works as expected, but I'd like to dig a little bit further on that before moving this bug to Boxes.

Comment 5 Fabiano Fidêncio 2019-01-15 14:27:46 UTC
(In reply to Dusty Mabe from comment #3)
> this sounds like https://pagure.io/teamsilverblue/issue/29 - which should be
> fixed upstream according to
> https://pagure.io/teamsilverblue/issue/29#comment-545008 . Doesn't look like
> it has made it into fedora yet.

This commit is part of v20181214 and the package is on Fedora already: https://bodhi.fedoraproject.org/updates/FEDORA-2018-ceb45534dd

I'd like to double-check which version of osinfo-db Michael has, just to be sure that's not the case (but it shouldn't be the case).

Comment 6 Michael Vorburger 2019-01-15 14:44:19 UTC
(In reply to Fabiano Fidêncio from comment #4)
> Michael, may I ask your keyboard layout and language that you're using on
> your F29? 

My keyboard layout is ch-de (de-ch ?) and laptop host OS language $LANG = en_IN.UTF-8.

Comment 7 Michael Vorburger 2019-01-15 14:46:19 UTC
> I'd like to double-check which version of osinfo-db Michael has, just to be sure that's not the case (but it shouldn't be the case).

erm... I (barely) know what osinfo-db is.. ;) but isn't this in that ISO?!

Comment 8 Fabiano Fidêncio 2019-01-15 15:49:13 UTC
(In reply to Michael Vorburger from comment #7)
> > I'd like to double-check which version of osinfo-db Michael has, just to be sure that's not the case (but it shouldn't be the case).
> 
> erm... I (barely) know what osinfo-db is.. ;) but isn't this in that ISO?!

osinfo⁻db is a database of OSes that contains info like:
- resources (minimum, recommended)
- supported devices
- ISOs
- installation-scripts ...

Boxes uses libosinfo API to fill and query osinfo-db for info in order to perform the express installations.

I've done a quick test here and seems that the installation would break because en_IN is passed as the keyboard layout and it actually doesn't exist, breaking then the kickstart installation.

I'll try to come up with a good mapping on osinfo-db side in order to have it fixed, but I trully believe that in order to fix it properly we'd also need some changes in Boxes.

As a workaround you could use en_US.UTF-8. If you do that, I'd be still interested to know whether your keyboard layout would be German one or an English one (and that's the part that I think we'd have to change some things on Boxes side).

Thanks for the report and I'll be working on this.

Comment 9 Fabiano Fidêncio 2019-01-15 16:22:57 UTC
(In reply to Fabiano Fidêncio from comment #8)
> (In reply to Michael Vorburger from comment #7)
> > > I'd like to double-check which version of osinfo-db Michael has, just to be sure that's not the case (but it shouldn't be the case).
> > 
> > erm... I (barely) know what osinfo-db is.. ;) but isn't this in that ISO?!
> 
> osinfo⁻db is a database of OSes that contains info like:
> - resources (minimum, recommended)
> - supported devices
> - ISOs
> - installation-scripts ...
> 
> Boxes uses libosinfo API to fill and query osinfo-db for info in order to
> perform the express installations.
> 
> I've done a quick test here and seems that the installation would break
> because en_IN is passed as the keyboard layout and it actually doesn't
> exist, breaking then the kickstart installation. 

Let me correct myself here: "in (eng)" (without the quotes) is what's passed to kickstart and then we see it breaking.
The fix is trivial on osinfo-db side and I'll submit the patch soon (and, most likely, it also affetcs Fedora/RHEL installations, in general).

Apart from that, I've contacted Felipe Borges (Boxes maintainer) and he suggested some changes to be done on Boxes' side in order to properly detect the keyboard layout used by the user, instead of trying to infer it from the language.

For the Boxes' issue, I'll open a upstream issue on their gitlab.

Comment 10 Fabiano Fidêncio 2019-01-15 21:02:04 UTC
Patch has been merged upstream: https://gitlab.com/libosinfo/osinfo-db/commit/630dde7087c5ce4d28bec5f22ecd0ffb23d04265

Comment 11 Fedora Update System 2019-01-20 19:45:41 UTC
osinfo-db-20190120-1.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-0e7003b946

Comment 12 Fedora Update System 2019-01-20 19:53:11 UTC
osinfo-db-20190120-1.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2019-870e8d8234

Comment 13 Fedora Update System 2019-01-21 02:31:37 UTC
osinfo-db-20190120-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-0e7003b946

Comment 14 Fedora Update System 2019-01-21 03:04:26 UTC
osinfo-db-20190120-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-870e8d8234

Comment 15 Fedora Update System 2019-01-24 04:31:04 UTC
osinfo-db-20190120-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2019-02-19 07:07:18 UTC
osinfo-db-20190218-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-37a7efe938

Comment 17 Fedora Update System 2019-03-01 23:10:07 UTC
osinfo-db-20190218-1.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.