Unclear requirements for cockpit-bootloader

I’m getting into the cockpit-client-launcher application, and me as a desktop user find it it a good replacement for the YaST niceties I discovered on my KDE install a few days back. Even though I’m new to openSUSE and only discovered YaST recently I understand it is legacy software that needs to be replaced, and want to get onto the alternatives before it is fully phased out. Thankyou for the explanation from OrsoBruno A suggestion to the Tumbleweed userdocs: Nvidia proprietary drivers - #4 by OrsoBruno
I installed using Cockpit Client (pattern) in Myrlyn. One of the things that I liked about YaST, although I know how to do manually with GRUB, is adding boot parameters with a GUI. Cockpit Client seems to have an equivalent, the Grub application inside of Cockpit app.

Cockpit client says

I go to Troubleshoot, this is my log. Tried it second time after a reboot


8:27 PM
Failed to start bookit daemon.
systemd
8:27 PM
bootkitd.service: Failed with result 'exit-code'.
systemd
8:27 PM
bootkitd.service: Main process exited, code=exited, status=1/FAILURE
systemd
8:27 PM
ERROR bootkit::errors: Error at src/grub2/mod.rs:164:18: Internal IO error: Error reading "/etc/default/grub" (No such file or directory (os error 2))
bootkitd
8:27 PM
Error: DError { ctx: DCtx("src/grub2/mod.rs:164:18"), trace: [], error: Io("Error reading \"/etc/default/grub\"", Os { code: 2, kind: NotFound, message: "No such file or directory" }) }
bootkitd
8:27 PM
INFO bootkit: Starting bootkit service
bootkitd
8:27 PM
Starting bookit daemon...
systemd
Reboot

7:34 PM
Failed to start bookit daemon.
systemd
7:34 PM
bootkitd.service: Failed with result 'exit-code'.
systemd
7:34 PM
bootkitd.service: Main process exited, code=exited, status=1/FAILURE
systemd
7:34 PM
ERROR bootkit::errors: Error at src/grub2/mod.rs:164:18: Internal IO error: Error reading "/etc/default/grub" (No such file or directory (os error 2))
bootkitd
7:34 PM
Error: DError { ctx: DCtx("src/grub2/mod.rs:164:18"), trace: [], error: Io("Error reading \"/etc/default/grub\"", Os { code: 2, kind: NotFound, message: "No such file or directory" }) }
bootkitd
7:34 PM
INFO bootkit: Starting bootkit service
bootkitd
7:34 PM
Starting bookit daemon...

Status of bootkitd.service:

arthur@laptop:~> systemctl status bootkitd.service
× bootkitd.service - bookit daemon
     Loaded: loaded (/usr/lib/systemd/system/bootkitd.service; s>
     Active: failed (Result: exit-code) since Sun 2026-06-21 20:>
 Invocation: 4b12c755e05347a1852c2bad8570b0d5
    Process: 28092 ExecStart=/usr/sbin/bootkitd (code=exited, st>
   Main PID: 28092 (code=exited, status=1/FAILURE)
        CPU: 23ms

When I look at the Cockpit website, it says that the Bootloader application is pre-release. Should I be reporting this as an issue then?

I have looked at https://en.opensuse.org/Main:Cockpit_Client and
https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/managing_systems_using_the_rhel_9_web_console/index to see what the way to set this up correctly is, but couldn’t find a requirement list.

Also no man cockpit-bootloader. I’ve recently been trying this man command, pretty dang useful! Seems to be the base of all package-specific documentation, all available in the command line. Throughout my 1.5 year Linux path I’ve gotten away with just using --help tldr, and web search engines, but man… man is kinda nice.

I installed openSUSE Tumbleweed with the netinstaller, selecting GRUB2-BLS as bootloader instead of systemd because I wanted to see if this worked, its called Grub in the cockpit client so I assume it doesn’t work with systemd-boot (yet!)
In the netinstaller of Tumbleweed I could choose between (if I remember it correctly):

  1. Bootloader not managed
  2. GRUB
  3. GRUB2
  4. GRUB2-BLS
  5. systemd

I’m not entirely sure what GRUB2-BLS and GRUB2 differ with or if it has any consequences for me as an end user, but that is kind of side thing perhaps.

So to wrap up my question: What should I do to make this bootloader app in cockpit client work? Or is this not a ‘user error’ (you know what I mean) but an issue I should report? Thankyou!

I will feel quite dum if it turns out the only thing I did wrong was the selecting of GRUB2 instead of GRUB (without 2) :sweat_smile: (it would explain the whole issue though)

Works flawlessly here with GRUB2.

The issues seems that you have choosen GRUB2-BLS, which is no longer standard for Tumbleweed. The bootkitd.service fails as it can’t find /etc/default/grub which does not exist on GRUB2-BLS systems as far as i know. I have no VM with GRUB2-BLS at hand to verify this.

1 Like

Okay that is good to know! Thanks for the heads up, oh that could be it

Probably that’s it 95% sure

I found a small flaw. If you open Cockpit without admin rights and click on the bootloder plugin, you get the warning that you need admin rights. Ok, elevate rights, click again on the bootloader plugin and i get the same error window as shown in your post. Closing Cocpit completely and clicking on the bootloader plugin AFTER elevating to admin rights does show the bootloader settings without issues.

But this flaw seems not related to your issue, as on my system the bootkitd.service is enabled and loaded all the time.

I’m setting up a Tumbleweed VM with grub2-bls atm to try to reproduce your issue.

Yes, confirmed in a VM. bootkitd.service fails as grub2-bls does not use /etc/default/grub.

Not sure if that is intended.

After digging a little bit further, cockpit-bootloader only supports grub2-efi.
grub2-bls and systemd-boot are not supported yet.
This did not change since the initial anouncement in Dec 2025…
https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/thread/XOOPYCX3B25UUZFMVTWBI2DDL644E5RI/

2 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.