I installed actually debian gnu/hurd on my PC with crosshurd and had to change something if we show the official guide on http://www.debian.org/ports/hurd/hurd-install. The "changes" were on following: 2. Real Estate or Finding A Home To create a filesystem, use mke2fs and pass it "-b 4096 -I 128 -o hurd" to designate the Hurd as the owner of the new file system. For instance, assuming the partition is "/dev/hda2": # mke2fs -b 4096 -I 128 -o hurd /dev/hda2 the option -o hurd do exactly -b 4096 and -I 128; it would be unnecessary, at least with version 1.41.3 of e2fsprogs. 4. Cross Install The next step is to get a base system. There are several alternatives, if you are running a Debian system you can use the package crosshurd. Otherwise you can get an updated base system tarball from any of the mirrors listed at http://wiki.debian.org/DebianPorts/Mirrors. About mirrors: On the address http://wiki.debian.org/DebianPorts/Mirrors I found the directory "base/" with the base-system only on the FR (is it really France?), DE and US mirror. For CH and TW there's no way to get it and on the last mirror, CA (http://www.superunprivileged.org/debian) got an error 404: page doesn't exist. About crosshurd: To boot with more than 768Mb RAM after install with crosshurd you have to change the virtual memory of mach. To do this Samuel Thibauld wrote a patch to apply on gnumach: Index: b/i386/i386at/model_dep.c To patch it on the gnumach, after run crosshurd (version 1.7.33) you have to download the source of gnumach (better from unstable). For this you have to add to your repository the source (deb-src) on unstable: deb-src http://ftp.ch.debian.org/debian/
unstable main After an update (apt-get update) download the source of gnumach
in your current directory with:# apt-get source -t unstable gnumach Then build dependencies: # apt-get build-dep gnumach Before crosscompiled we have to add the patch above. Just copy
it into a file with a text editor and call it for example bigmem.patch.
The entry on the main directory of the gnumach sources and give:
locationpatch is the location of the patch. If you get no
errores you can yet build the gnumach:# dpkg-buildpackage -us -uc -b After this mount (or go if already mounted) your partition
with debian GNU/Hurd on /gnu and copy the compiled gnumach on the
boot directory:# cp
gnumach-1.3.99.dfsg.cvs<version>/debian/gnumach/boot/gnumach.gz
/gnu/boot/gnumach.gz Before reboot reboot you've got to change the "native-install"
always on your mounted partition in /gnu and remove the option
"--force-auto-select" on line 160 (option is deprecated and will get
an error during run of the script).158 # install base packages 6. Native Install Once you are presented with a shell prompt, and any time that the Hurd is in single user mode, it is necessary to set the terminal type: # export TERM=mach This is no more necessary because already on the "native-install" script: 37 if [ "$TERM" = "dumb" ] ; then Before the script terminates, it will indicate that it needs
to be run a second
time. Follow its instructions and reboot using the reboot
command.
Again, go into single user mode and run ./native-install .This is also no more necessary. Just run native-install
one time.At the end I just communicate that my old network card (02:0a.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 43)) doesn't work on the GNU/Hurd with the via_rhine driver, despite will recognize with eth0 after "devprobe eth0". With another card of 3com (02:0a.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 74)) I didn't have any problem to get the network working. Hope this helps for who want to install debian gnu/hurd with crosshurd. Bruno |