Describe the bug
Running nwg-displays fails with a ValueError/RuntimeError because the GTK Layer Shell GObject Introspection typelib is not available on the system, even though the underlying library may be installed.
Steps to reproduce
- Fresh ML4W (Hyprland) setup on openSUSE Tumbleweed
- Open a terminal and run
nwg-displays
- See error
Expected behavior
nwg-displays should launch normally and let me configure display outputs, without raising a GtkLayerShell namespace error — provided the equivalent GTK Layer Shell library/typelib is installed on the system.
Root cause / fix
The missing piece was the typelib-1_0-GtkLayerShell-0_1 package — libgtk-layer-shell0 alone was already installed, but the GObject Introspection typelib is shipped separately on openSUSE and wasn't pulled in as a dependency:
sudo zypper install libgtk-layer-shell0 typelib-1_0-GtkLayerShell-0_1
After installing it, nwg-displays launches and works correctly (tested on openSUSE Tumbleweed, nwg-displays v0.4.3).
Environment
- OS: openSUSE Tumbleweed
- Desktop: Hyprland (ML4W setup)
- Python: 3.13
Screenshots
Distribution
Other (please specify below)
If Other, specify
openSUSE Tumbleweed
Additional context
No response
Code of Conduct
Describe the bug
Running
nwg-displaysfails with aValueError/RuntimeErrorbecause the GTK Layer Shell GObject Introspection typelib is not available on the system, even though the underlying library may be installed.Steps to reproduce
nwg-displaysExpected behavior
nwg-displaysshould launch normally and let me configure display outputs, without raising a GtkLayerShell namespace error — provided the equivalent GTK Layer Shell library/typelib is installed on the system.Root cause / fix
The missing piece was the
typelib-1_0-GtkLayerShell-0_1package —libgtk-layer-shell0alone was already installed, but the GObject Introspection typelib is shipped separately on openSUSE and wasn't pulled in as a dependency:After installing it,
nwg-displayslaunches and works correctly (tested on openSUSE Tumbleweed,nwg-displaysv0.4.3).Environment
Screenshots
Distribution
Other (please specify below)
If Other, specify
openSUSE Tumbleweed
Additional context
No response
Code of Conduct