diff --git a/mkosi.conf b/mkosi.conf index 63b648f..c27c627 100644 --- a/mkosi.conf +++ b/mkosi.conf @@ -49,5 +49,7 @@ KernelModulesInitrdInclude=default vmd InitrdPackages=initrd-tmpfs-root kpartx + pciutils + usbutils RemoveFiles=/boot/*zabbly* /boot/EFI/mkosi.der diff --git a/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.install b/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.install index 2202dd9..5ef4833 100644 --- a/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.install +++ b/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.install @@ -5,4 +5,6 @@ initrd-tmpfs-root.service usr/lib/systemd/system/ 00-device-timeout.conf usr/lib/systemd/system.conf.d/ -initrd-message.service usr/lib/systemd/system/ +initrd-message.service usr/lib/systemd/system/ +initrd-show-devices.service usr/lib/systemd/system/ +initrd-show-devices.sh usr/bin/ diff --git a/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.links b/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.links index e5949fd..34ac9c5 100644 --- a/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.links +++ b/mkosi.packages/initrd-tmpfs-root/debian/initrd-tmpfs-root.links @@ -1 +1,2 @@ usr/lib/systemd/system/initrd-message.service usr/lib/systemd/system/veritysetup.target.wants/initrd-message.service +usr/lib/systemd/system/initrd-show-devices.service usr/lib/systemd/system/emergency.target.wants/initrd-show-devices.service diff --git a/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.service b/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.service new file mode 100644 index 0000000..8ca94f8 --- /dev/null +++ b/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.service @@ -0,0 +1,14 @@ +[Unit] +Description=Show system devices +After=emergency.target +DefaultDependencies=no + +[Service] +Type=oneshot + +Environment=TTYS="/dev/tty1 /dev/ttyS0" + +ExecStart=/usr/bin/initrd-show-devices.sh + +[Install] +WantedBy=emergency.target diff --git a/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.sh b/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.sh new file mode 100755 index 0000000..dbc6fd2 --- /dev/null +++ b/mkosi.packages/initrd-tmpfs-root/initrd-show-devices.sh @@ -0,0 +1,33 @@ +#!/bin/sh + +# shellcheck disable=SC3000-SC4000 + +while true; do + for TTY in $TTYS; do + echo -e "\033cIncusOS failed to start. Debug information follows." > "$TTY" || true + echo "$ lsblk" > "$TTY" || true + lsblk > "$TTY" || true + done + sleep 10 + + for TTY in $TTYS; do + echo -e "\033cIncusOS failed to start. Debug information follows." > "$TTY" || true + echo "$ lscpi" > "$TTY" || true + lspci > "$TTY" || true + done + sleep 10 + + for TTY in $TTYS; do + echo -e "\033cIncusOS failed to start. Debug information follows." > "$TTY" || true + echo "$ lsusb" > "$TTY" || true + lsusb > "$TTY" || true + done + sleep 10 + + for TTY in $TTYS; do + echo -e "\033cIncusOS failed to start. Debug information follows." > "$TTY" || true + echo "$ ls -lh /sys/class/block/*/device/driver" > "$TTY" || true + ls -lh /sys/class/block/*/device/driver > "$TTY" || true + done + sleep 10 +done