diff options
Diffstat (limited to 'hurd')
-rw-r--r-- | hurd/running/dde_guide.mdwn | 158 | ||||
-rw-r--r-- | hurd/running/distrib.mdwn | 6 | ||||
-rw-r--r-- | hurd/status.mdwn | 6 | ||||
-rw-r--r-- | hurd/virtual_file_system.mdwn | 2 |
4 files changed, 168 insertions, 4 deletions
diff --git a/hurd/running/dde_guide.mdwn b/hurd/running/dde_guide.mdwn new file mode 100644 index 00000000..6518e0e4 --- /dev/null +++ b/hurd/running/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 diff --git a/hurd/running/distrib.mdwn b/hurd/running/distrib.mdwn index 229e2d8f..92904d19 100644 --- a/hurd/running/distrib.mdwn +++ b/hurd/running/distrib.mdwn @@ -71,7 +71,7 @@ about getting applications to work (if possible). <dl> <dt>[[SavannahProjects]]</dt> - <dd> Savannah is a CVS &amp; Bug system evolved from a free version of the code that powers <a href="http://sf.net" target="_top">sourceforge.net</a>. It has forked and been slightly modified for use by FSF, GNU and non-GNU projects. Actual Development takes place here. There is also a <a href="http://savannah.gnu.org/people/?group=hurd" target="_top">help wanted</a> list. </dd> + <dd> Savannah is a CVS & Bug system evolved from a free version of the code that powers <a href="http://sf.net" target="_top">sourceforge.net</a>. It has forked and been slightly modified for use by FSF, GNU and non-GNU projects. Actual Development takes place here. There is also a <a href="http://savannah.gnu.org/people/?group=hurd" target="_top">help wanted</a> list. </dd> </dl> <dl> @@ -85,8 +85,8 @@ about getting applications to work (if possible). </dl> <dl> - <dt> Debain Infrastructure</dt> - <dd> Testing is critical in helping the development effort. Bugs (defect reports) can be filed against the Debian software package in which they are found. [[debian/patch_submission]] tells how to file a Debian bug report. [[DebianPackages]] has some information about how Debian splits the software into packages and some references. There is a buildd autobuilder compiling the Debian Sid archive software for the GNU/Hurd port. [[BuilddStatus]] includes information on the buildd &amp; turtle efforts. </dd> + <dt> Debian Infrastructure</dt> + <dd> Testing is critical in helping the development effort. Bugs (defect reports) can be filed against the Debian software package in which they are found. [[debian/patch_submission]] tells how to file a Debian bug report. [[DebianPackages]] has some information about how Debian splits the software into packages and some references. There is a buildd autobuilder compiling the Debian Sid archive software for the GNU/Hurd port. [[BuilddStatus]] includes information on the buildd & turtle efforts. </dd> </dl> <dl> diff --git a/hurd/status.mdwn b/hurd/status.mdwn index 32789619..e8282091 100644 --- a/hurd/status.mdwn +++ b/hurd/status.mdwn @@ -106,3 +106,9 @@ possibility that they would want to try the Hurd again in the future. > > [But] unlike a few years back [...] the system is stable enough under > load nowadays [...]. + +## DDE network card drivers + +### Jakub Daniel, 2010-06-09 + +[[guide|running/dde_guide]] diff --git a/hurd/virtual_file_system.mdwn b/hurd/virtual_file_system.mdwn index 1e2f68fb..b62a5e4c 100644 --- a/hurd/virtual_file_system.mdwn +++ b/hurd/virtual_file_system.mdwn @@ -13,7 +13,7 @@ No single entity is responsible for the resolution of path names. A file system server (a [[translator]]) attaches to translators (`fs.defs:file_set_translator`). -When a process resolves an aboslute path, it queries +When a process resolves an absolute path, it queries its root file system server by invoking the `fs.defs:dir_lookup` method in the capability in its root directory slot. The file system server resolves as much as it knows about locally |