kdump: Hide page on Arch

Arch Linux does not currently support kdump. There is no kexec-tools
equivalent. [1] sounds promising, but it's not currently integrated into
Arch.

Stop packaging the kdump page, and also add a manifest condition so
that it doesn't appear in beiboot/ws-container/Client scenarios.

[1] https://blogs.igalia.com/gpiccoli/2024/07/presenting-kdumpst-or-how-to-collect-kernel-crash-logs-on-arch-linux/

Fixes #21106
This commit is contained in:
Martin Pitt 2026-01-08 09:39:46 +01:00 committed by Martin Pitt
parent dd2021cc1d
commit b7c0c80fd9
4 changed files with 15 additions and 1 deletions

View file

@ -1,6 +1,7 @@
{
"conditions": [
{"path-exists": "/usr/sbin/kexec"}
{"path-exists": "/usr/sbin/kexec"},
{"path-not-exists": "/etc/arch-release"}
],
"tools": {
"index": {

View file

@ -94,6 +94,7 @@ class KdumpHelpers(testlib.MachineCase):
@testlib.skipOstree("kexec-tools not installed")
# Kdump page is hidden on Arch as it lacks the necessary kdump packages and grub infra
@testlib.skipImage("kexec-tools not installed", "debian-*", "ubuntu-*", "arch")
@testlib.skipImage("kdump not compatible with separate /var btrfs subvolume https://bugzilla.redhat.com/show_bug.cgi?id=2270423", "fedora-*")
@testlib.timeout(900)

View file

@ -885,6 +885,14 @@ OnCalendar=daily
b.click(f"#nav-system .nav-item a[href='{href}']")
b.wait_visible(f"iframe.container-frame[name='cockpit1:localhost{href}'][data-loaded]")
# Same skips as in test/verify/check-kdump
img = self.machine.image
expect_kdump = (img != "arch" and
not img.startswith("debian") and
not img.startswith("ubuntu") and
"coreos" not in img) # does show up on bootc
self.check_system_menu("Kernel dump", present=expect_kdump)
# logging out too fast, some D-Bus services get disconnected
self.allow_restart_journal_messages()

View file

@ -70,6 +70,10 @@ package_cockpit() {
"$pkgdir"/usr/lib/cockpit/cockpit-pcp \
"$pkgdir"/var/lib/pcp
# Arch lacks the necessary kdump packages and grub infra
rm -rf "$pkgdir"/usr/share/cockpit/kdump \
"$pkgdir"/usr/share/metainfo/org.cockpit_project.cockpit_kdump.metainfo.xml
# Disallow root login by default
printf "# List of users which are not allowed to login to Cockpit\nroot\n" > "$pkgdir"/etc/cockpit/disallowed-users
chmod 644 "$pkgdir"/etc/cockpit/disallowed-users