Bug#825229: crosshurd: Incompatibility with update-grub. Fails to boot.
Package: crosshurd
Version: 1.7.50
Severity: normal
Tags: patch
Running crosshurd to install in a disk partition and then running update-grub,
rebooting and selecting the Hurd entry, fails to boot because the Grub
does not find /boot/gnumach.gz (there is /boot/gnumach-1.6-486.gz).
The following patch solves the problem in my case:
-----------------------------------------------------------------------------
--- makehurddir.sh 2016-05-22 16:28:32.000000000 +0200
+++ makehurddir2.sh 2016-05-24 21:25:48.678706572 +0200
@@ -43,6 +43,8 @@
if [ -e $TARGET/var/cache/apt/archives/gnumach-image-1.6-486_* ] ; then
extract gnumach-image-1.6-486
+ # place symlink for compatibility with update-grub (/etc/grub.d/30_os-prober)
+ ln -s gnumach-1.6-486.gz "$TARGET/boot/gnumach.gz"
fi
if [ -e $TARGET/var/cache/apt/archives/libbz2-1.0_* ] ; then
-----------------------------------------------------------------------------
Afterwards, the Hurd starts to boot but fails (hangs) with the following error
(maybe an issue with partition names):
start ext2fs: ext2fs: device:(hostdisk//dev/sda,msdos2): No such device or address
Also I have observed that, running "grep TARGET /usr/share/crosshurd/*"
yields some results with "$TARGET/..." quoted and some others not,
so if we run crosshurd with a path with spaces, it may fail.
-- System Information:
Debian Release: 8.4
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=gl_ES.utf8, LC_CTYPE=gl_ES.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages crosshurd depends on:
ii dialog 1.2-20140911-1
ii dpkg-dev 1.17.26
Versions of packages crosshurd recommends:
pn attr <none>
crosshurd suggests no packages.
-- no debconf information
Reply to: