It’s been like that for me since Snapshot 20260412. Happens on one fresh install and two existing installations. I just use the browser to access cockpit, that works flawless.
Nothing like that here on Tumbleweed, are you using Leap?
Tumbleweed machine (sorry for not to add that info, added in my first question)
Here I get:
knurpht@Lenovo-P16:~> cockpit-client-launcher
Traceback (most recent call last):
File "/usr/libexec/cockpit-client", line 23, in <module>
gi.require_version("WebKit", "6.0")
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.13/site-packages/gi/__init__.py", line 150, in require_version
raise ValueError(f"Namespace {namespace} not available")
ValueError: Namespace WebKit not available
knurpht@Lenovo-P16:~>
well now seems to work after install some packages:
- gtk4
- typelib-1_0-Gtk-4_0
- typelib-1_0-WebKit-6_0
- typelib-1_0-Adw-1
I have this in Tumbleweed:
cockpit-client-launcher
(cockpit-client:47875): Adwaita-WARNING **: 17:26:14.839: Using GtkSettings:gtk-application-prefer-dark-theme with libadwaita is unsupported. Please use AdwStyleManager:color-scheme instead.
(cockpit-client:47875): Gtk-WARNING **: 17:26:15.141: No IM module matching GTK_IM_MODULE=cedilla found
pci id for fd 28: 10de:1287, driver (null)
pci id for fd 29: 10de:1287, driver (null)
pci id for fd 30: 10de:1287, driver (null)
pci id for fd 29: 10de:1287, driver (null)
pci id for fd 30: 10de:1287, driver (null)
KMS: DRM_IOCTL_MODE_CREATE_DUMB failed: Permiso denegado
KMS: DRM_IOCTL_MODE_CREATE_DUMB failed: Permiso denegado
Failed to create GBM buffer of size 1280x629: Permiso denegado
And a black windows at all.
I have a vm with Leap 16.0 and works fine.
Only needed that one.
If I set the variable WEBKIT_DISABLE_DMABUF_RENDERER=1 seems to work.
microsoft-edge-stable??
Is switching from Apparmour to SELinux a mandatory prerequisite for Cockpit on Leap 16? In other words, can one still get a functional Cockpit on Leap 16 with Apparmor?
Tried running zypper install cockpit-client-launcher patterns-cockpitand that resulted in many
error: selabel_open: (/etc/selinux/targeted/contexts/files/file_contexts) No such file or directory
error: Plugin selinux: hook tsm_pre failed
messages.
Full log:
$ zypper install cockpit-client-launcher patterns-cockpit
Loading repository data...
Reading installed packages...
Resolving package dependencies...
`The following 10 recommended packages were automatically selected:` ` cockpit-firewalld cockpit-networkmanager cockpit-storaged cockpit-ws-selinux container-selinux policycoreutils-python-utils python313-policycoreutils selinux-autorelabel selinux-tools setools-console`
The following 46 NEW packages are going to be installed:
cepces-selinux checkpolicy cockpit cockpit-client-launcher cockpit-firewalld cockpit-kdump cockpit-networkmanager cockpit-repos cockpit-selinux cockpit-storaged cockpit-subscriptions cockpit-system cockpit-ws cockpit-ws-selinux container-selinux flatpak-selinux jeos-firstboot liboath0
libpwquality-tools libudisks2-0_lvm2 live-langset-data oath-toolkit oath-toolkit-xml pam_oath patterns-cockpit policycoreutils policycoreutils-lang policycoreutils-python-utils python313-dasbus python313-policycoreutils python313-selinux python313-semanage python313-setools
python313-systemd python3-audit qrencode selinux-autorelabel selinux-policy selinux-policy-targeted selinux-tools setools-console setroubleshoot-plugins setroubleshoot-plugins-lang setroubleshoot-server ssh-pairing tigervnc-selinux
`The following NEW pattern is going to be installed:` ` cockpit`
46 new packages to install.
Package download size: 21.2 MiB
Package install size change:
| 52.6 MiB required by packages that will be installed
52.6 MiB | - 0 B released by packages that will be removed
Backend: classic_rpmtrans
Continue? [y/n/v/...? shows all options] (y):
Preloading: container-selinux-2.239.0-160000.2.2.noarch.rpm [done]
...
Checking for file conflicts: [done]
( 1/46) Installing: checkpolicy-3.8.1-160000.2.2.x86_64 [done]
...
[done]
(32/46) Installing: setroubleshoot-plugins-3.3.15-160000.2.2.noarch [done]
/usr/bin/systemd-sysusers --replace=/usr/lib/sysusers.d/setroubleshoot.conf -
Creating group 'setroubleshoot' with GID 425.
Creating user 'setroubleshoot' (SELinux troubleshoot server) with UID 425 and GID 425.
(33/46) Installing: setroubleshoot-server-3.3.35-160000.2.2.x86_64 [done]
(34/46) Installing: selinux-policy-20250627+git363.7b84cc7fb-160000.1.1.noarch [done]
error: selabel_open: (/etc/selinux/targeted/contexts/files/file_contexts) No such file or directory
error: Plugin selinux: hook tsm_pre failed
(35/46) Installing: selinux-policy-targeted-20250627+git363.7b84cc7fb-160000.1.1.noarch [error]
Installation of selinux-policy-targeted-20250627+git363.7b84cc7fb-160000.1.1.noarch failed:
Error: Subprocess failed. Error: RPM failed: Command exited with status 1.
Abort, retry, ignore? [a/r/i] (a): i
error: selabel_open: (/etc/selinux/targeted/contexts/files/file_contexts) No such file or directory
error: Plugin selinux: hook tsm_pre failed
Installation of all subsequent selinux-related packages fails with the same error. After this rpm/zypper is broken, cannot install/uninstall anything and the only solution is to manually create an empty /etc/selinux/targeted/contexts/files/file_contexts file, then rpm starts working again, but with warnings:
sed: warning: failed to get security context of /etc/selinux/config: No data available
Hence the question from the top.
cockpit-selinux is required by patterns-cockpit if selinux-tools is installed.
So you can either:
- uninstall patterns-cockpit and cockpit-selinux
or: - uninstall selinux and cockpit-selinux
selinux-tools are not installed:
$ rpm -qa | grep selinux
libselinux1-32bit-3.8.1-160000.2.2.x86_64
libselinux1-3.8.1-160000.2.2.x86_64
libselinux-devel-3.8.1-160000.2.2.x86_64
Apparently, the trick was to pass “–no-recommends” to zypper.
After that the web interface at port 9090 works fine, however cockpit-client-launcher does not work. One must install the following as mentioned in a previous post
- gtk4
- typelib-1_0-Gtk-4_0
- typelib-1_0-WebKit-6_0
- typelib-1_0-Adw-1
and also set WEBKIT_DISABLE_DMABUF_RENDERER=1 to avoid errors like:
Failed to create GBM buffer of size 1280x800: Invalid argument
which cause cockpit-client-launcher to start with a blank window.
Thanks for your help.
Excuse me dearest openSUSE gang, but I don’t get the motivation for using cockpit-client through this bash launcher, specifically for desktop-centric, local-only usage, given that cockpit-desktop exists.
For example, consider
/usr/libexec/cockpit-desktop /system
This has several distinct advantages.
- you don’t have to authenticate as yourself, which would be dumb. Also did I mention that authenticating as yourself when you are already logged in is dumb? {{Remember, only you can prevent RSI injuries.}}
- it runs both the server and the browser in a private namespace to provide a good amount of isolation. By contrast, I was able to sniff my cleartext password with the cockpit.socket and cockpit-client as spawned by the launcher.
- it will select from one of three browser options by priority: the gtk4 webkit client sans the address bar, or chromium or firefox with a private profile. That’s useful if the gtk4-webkit6 option is flaky. And you won’t end up in your regular browser session as with xdg-open.
- You can disable the
cockpit.socketunit altogether. I believe that’s at least 9000 times safer, likely even 9090 times, than removing opened ports from the firewall when cockpit wasn’t running yet, which is what the launcher does. (Ideally, we don’t want to open a port in the first place.) For desktop use, there is no benefit to the webserver becoming available automatically whenever something visits *:9090. No need for cloud-style designs. - experimental option for ssh which may or may not turn you into an instant Linux Chad. Add those root keys and let’s go! Or not. It’s cool either way.