xkbcommon not functional in FreeBSD CI image
Closed, ResolvedPublic

Description

xkbcommon seems to have a problem in the kwin autotests. It fails to create a keymap and because of that the tests fail. This is something FreeBSD experts might have a look it.

It is related to the crash we had with 5.10.

Restricted Application added a subscriber: sysadmin. · View Herald TranscriptJul 26 2017, 2:52 PM

It seems [1] the ports are built without default values for model/options/rules/variant

CONFIGURE_ARGS= --without-default-layout \
                --without-default-model \
                --without-default-options \
                --without-default-rules \
                --without-default-variant \
                --without-doxygen \
                --with-x-locale-root=${PREFIX}/lib/X11/locale

[1] https://svnweb.freebsd.org/ports/head/x11/libxkbcommon/Makefile?revision=432645&view=markup#l20

Configuring libxkbcommon with default values set gives:

autotests/integration  %  ./testGlobalShortcuts
********* Start testing of GlobalShortcutsTest *********
Config: Using QtTest library 5.7.1, Qt 5.7.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by Clang 5.0.0 (trunk 308421))
X-Server started on display :1
QWARN  : GlobalShortcutsTest::initTestCase() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QDEBUG : GlobalShortcutsTest::initTestCase() Configuring Lock Action
QWARN  : GlobalShortcutsTest::initTestCase() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::initTestCase() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::initTestCase() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::initTestCase() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
PASS   : GlobalShortcutsTest::initTestCase()
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-script.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-script.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-script.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-script.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-script.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QWARN  : GlobalShortcutsTest::testConsumedShift() kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/Tobias/.qttest/share", "/usr/share", "/usr/local/share", "/usr/local/share/gnome")
QDEBUG : GlobalShortcutsTest::testConsumedShift() Session path: "/org/freedesktop/ConsoleKit/Session1"
FAIL!  : GlobalShortcutsTest::testConsumedShift() Compared values are not the same
   Actual   (((triggeredSpy.count()))): 0
   Expected (1)                       : 1
   Loc: [/wrkdirs/usr/ports/x11-wm/plasma5-kwin/work/kwin-5.10.4/autotests/integration/globalshortcuts_test.cpp(102)]
FAIL!  : GlobalShortcutsTest::testRepeatedTrigger() Compared values are not the same
   Actual   (((triggeredSpy.count()))): 0
   Expected (1)                       : 1
   Loc: [/wrkdirs/usr/ports/x11-wm/plasma5-kwin/work/kwin-5.10.4/autotests/integration/globalshortcuts_test.cpp(131)]
FAIL!  : GlobalShortcutsTest::testUserActionsMenu() '(workspace()->userActionsMenu()->isShown())' returned FALSE. ()
   Loc: [/wrkdirs/usr/ports/x11-wm/plasma5-kwin/work/kwin-5.10.4/autotests/integration/globalshortcuts_test.cpp(168)]
FAIL!  : GlobalShortcutsTest::testMetaShiftW() Compared values are not the same
   Actual   (input()->keyboardModifiers()): 167772160
   Expected (Qt::MetaModifier)            : 268435456
   Loc: [/wrkdirs/usr/ports/x11-wm/plasma5-kwin/work/kwin-5.10.4/autotests/integration/globalshortcuts_test.cpp(186)]
PASS   : GlobalShortcutsTest::cleanupTestCase()
Totals: 2 passed, 4 failed, 0 skipped, 0 blacklisted, 48411ms
********* Finished testing of GlobalShortcutsTest *********
QSocketNotifier: Invalid socket 24 with type Read, disabling...
The X11 connection broke (error 1). Did the X11 server die?
Speicherschutzverletzung(core dumped)

That is the test still fails ^^ -- but at least no Xkb warnings.

Wasn't there something that evdev.xml is not yet used on FreeBSD?

Ping to all involved, what's the status of this? I'm not sure if there is anything for Sysadmin to do here?

I assume the FreeBSD xorg-people will update the port soon to set defaults. I will ping them later today about it.

bcooksley edited projects, added build.kde.org; removed Sysadmin.Aug 12 2017, 9:00 AM

Perfect, thanks for the update.
Transferring this to the separate CI Board.

bcooksley changed the visibility from "Custom Policy" to "Public (No Login Required)".Aug 12 2017, 9:00 AM
bcooksley changed the edit policy from "Custom Policy" to "All Users".
bcooksley moved this task from Backlog to In Progress on the build.kde.org board.

The libxkbcommon port has been updated by rezny on sunday:
https://svnweb.freebsd.org/ports?view=revision&revision=448434

All three ci-builders should now have this version.

great, I'll check what we have to change now ;-)

Any news on this Martin?

Just had a look.

On Linux where the modifier only shortcut test passes we have:

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: Could not create xkb keymap from configuration
QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling from RMLVO: rules 'evdev', model 'pc105', layout 'us', variant '(null)', options '(null)'

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling from KcCGST: keycodes 'evdev+aliases(qwerty)', types 'complete', compat 'complete', symbols 'pc+us+inet(evdev)'

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_keycodes "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_types "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_compatibility "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "indicatorDrivesKeyboard" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Shift Lock" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Group 2" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Mouse Keys" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_symbols "(unnamed)"

On FreeBSD it is:

DEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: Could not create xkb keymap from configuration
QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling from RMLVO: rules 'xorg', model 'pc105', layout 'us', variant '(null)', options '(null)'

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling from KcCGST: keycodes 'xfree86+aliases(qwerty)', types 'complete', compat 'complete', symbols 'pc+us+inet(pc105)'

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_keycodes "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_types "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_compatibility "(unnamed)"

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "group" statement in compat is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "indicatorDrivesKeyboard" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: The "allowExplicit" field in indicator statements is unsupported; Ignored

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Shift Lock" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Group 2" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Indicator name "Mouse Keys" was not declared in the keycodes section; Adding new indicator

QDEBUG : ModifierOnlyShortcutTest::initTestCase() kwin_xkbcommon: XKB: Compiling xkb_symbols "(unnamed)"

The main difference seems to be evdev vs. xorg. I do not have any idea what this means, but I guess it's the reason why the tests are failing.

Does this mean the tests need to be improved, or is something missing from the builders?

Looks mainly like a case of different keyboard layouts to me...

Does this mean the tests need to be improved, or is something missing from the builders?

Looks mainly like a case of different keyboard layouts to me...

That's what I wanted to figure out with the above mentioned commit. It looks like it did the trick, so we can probably close this task. For @tcberner it might be interesting to investigate what it will mean for a Wayland setup of FreeBSD that a non-working rule is defaulted to.

bcooksley closed this task as Resolved.Sep 18 2017, 10:17 AM
bcooksley claimed this task.

Awesome, thanks Martin.