summaryrefslogtreecommitdiff
path: root/hurd/dde/guide.mdwn
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@schwinge.name>2010-06-21 23:59:13 +0200
committerThomas Schwinge <thomas@schwinge.name>2010-06-21 23:59:13 +0200
commitfa44f0ef921875e8190db6845c50e7cd257197e8 (patch)
tree82fa528f508b112145b178976fa92a730069745a /hurd/dde/guide.mdwn
parent341a53d12a203e013210566abaa473f55ba7fd8f (diff)
DDE.
hurd/dde: New. hurd/running/dde_guide -> hurd/dde/guide.
Diffstat (limited to 'hurd/dde/guide.mdwn')
-rw-r--r--hurd/dde/guide.mdwn158
1 files changed, 158 insertions, 0 deletions
diff --git a/hurd/dde/guide.mdwn b/hurd/dde/guide.mdwn
new file mode 100644
index 00000000..6518e0e4
--- /dev/null
+++ b/hurd/dde/guide.mdwn
@@ -0,0 +1,158 @@
+[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
+
+If you haven't: install hurd to partition
+get grub image
+boot hurd in single user (change grub entry accordingly to the installed partition)
+
+> $ export TERM=mach
+
+> $ ./native-install
+
+reboot to other debian
+
+suppose hurd partition is hdd1
+
+as root
+
+> $ mount /dev/hdd1 /mnt -t ext2
+
+> $ cd /mnt/etc/apt
+
+> $ echo "deb http://ftp.debian-ports.org/debian unreleased main" >> sources.list
+
+> $ echo "deb-src http://ftp.debian-ports.org/debian unreleased main" >> sources.list
+
+> $ echo "deb http://ftp.uk.debian.org/debian unstable main" >> sources.list
+
+> $ echo "deb-src http://ftp.uk.debian.org/debian unstable main" >> sources.list
+
+> $ wget http://www.gnu.org/software/hurd/hurd/running/debian/DebianAptOffline/apt.conf.offline
+
+> $ cd /mnt
+
+> $ apt-get -c etc/apt/apt.conf.offline update
+
+> $ apt-get -c etc/apt/apt.conf.offline upgrade
+
+> $ apt-get -c etc/apt/apt.conf.offline install git-core
+
+> $ apt-get -c etc/apt/apt.conf.offline build-dep hurd gnumach
+
+> $ apt-get -c etc/apt/apt.conf.offline install build-essential libpciaccess-dev libpcap0.8-dev
+
+> $ cd /mnt/home
+
+> $ git clone git://git.sv.gnu.org/hurd/incubator.git -b dde hurd_dde
+
+> $ git clone git://git.sv.gnu.org/hurd/gnumach.git -b master-user_level_drivers gnumach_dde
+
+
+suppose you need forcedeth driver
+
+Download http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.29.y.git;a=blob_plain;f=drivers/net/forcedeth.c;hb=HEAD from mozilla like
+browser to /mnt/home as forcedeth.c
+
+Download http://pastebin.com/RJAJT2MR the same way and rename it to 0001-Fix-up-DDE-paths.patch
+
+reboot back to hurd (multiuser)
+
+> $ apt-get update
+
+> $ apt-get upgrade
+
+> $ apt-get install git-core
+
+> $ apt-get build-dep hurd gnumach
+
+> $ apt-get install build-essential libpciaccess-dev libpcap0.8-dev
+
+
+> $ cd /home/gnumach_dde
+
+> $ autoreconf -i && ./configure --enable-kdb --enable-device-drivers=none --enable-lpr --enable-floppy --enable-ide
+
+> $ make
+
+> $ cd ../hurd_dde
+
+> $ git am ../0001-Fix-up-DDE-paths.patch
+
+> $ cp -r dde_pcnet32 dde_forcedeth
+
+> $ cd dde_forcedeth
+
+> $ rm pcnet32.c
+
+> $ cp /home/forcedeth.c ./
+
+> $ sed -i 's/pcnet32/forcedeth/g' Makefile
+
+> $ sed -i 's/pcnet32/forcedeth/g' .gitignore
+
+> $ sed -i 's:-lhurd-slab:../libhurd-slab/libhurd-slab.a:' Makefile
+
+> $ sed -i 's:-I/include:-I..:' Makefile
+
+> $ nano forcedeth.c
+
+add these 2 lines after the last #include
+
+ #include <ddekit/timer.h>
+ void get_random_byter(void *buf, int nbytes) { }
+
+> $ cd ..
+
+> $ git add dde_forcedeth
+
+> $ git commit -a -m 'Add forcedeth driver'
+
+> $ autoreconf -i && ./configure
+
+> $ mkdir -p hurd/include/ddekit
+
+> $ make libddekit libmachdev devnode pfinet
+
+> $ cd libdde_linux26
+
+> $ make
+
+> $ cd ../dde_forcedeth
+
+> $ make
+
+If the make fails it might be necassary to replace some of the -l options (or all) in Makefile with the real path to the library objects (example: change *-lhurd-slab* to *../libhurd-slab/libhurd-slab.a*)
+
+> $ cp /home/gnumach_dde/gnumach /boot/gnumach_dde
+
+> $ mkdir /hurd/dde
+
+> $ cp /home/hurd_dde/devnode/devnode /hurd/dde
+
+> $ cp /home/hurd_dde/pfinet/pfinet /hurd/dde
+
+> $ cp /home/hurd_dde/dde_forcedeth/dde_forcedeth /hurd/dde/forcedeth
+
+reboot to hurd with the new gnumach_dde
+
+> $ settrans -c /dev/forcedeth /hurd/dde/forcedeth
+
+> $ settrans -c /dev/eth0 /hurd/dde/devnode -M /dev/forcedeth eth0
+
+> $ settrans -c /servers/socket/2 /hurd/dde/pfinet -i /dev/eth0 -a 192.168.1.194 -g 192.168.1.254 -m 255.255.255.0
+
+
+replace the ip, gateway and mask with your own ones
+
+> $ nano /etc/resolv.conf
+
+add line: nameserver 192.168.1.254
+
+DONE