Trying to build the Hurd
Hello,
Chris Lingard writes:
> It fails trying to build the documentation, and wants package
> tetex. The problem is that tetex depends on dpkg-perl, and I cannot
> find this anywhere in the Package index, or in the binary directories. I
> have built TeX on several UNIX boxes so may try this next.
The package dpkg-perl is in debian/dists/potato/binary-all/devel
Since this is binary-all it can be installed on the hurd without need
for any compilation.
By the way tetex-bin_1.0.6-1 builds on hurd. The 'dpkg-buildpackage
-uc -B' method did not work for me but
debian/rules build 'dpkg-architecture'
debian/rules binary 'dpkg-architecture'
did work.
> Can I just tar my hurd partition, in Debian, so as to recover it
> later;
I don't think so. I too had to duplicate the hurd partition (to shift
it) and the procedure seems to be complicated (correct me if I am
wrong please Marcus).
1. Copy (or (Tar and untar) all the directories *except* /servers and /dev
Basically any directory with translator nodes---I don't think tar/cp can
deal with these properly.
2. create the directory /servers, /servers/socket and the file
/servers/exec for example (from the cross-install script):
install -d -m 755 -o root -g root ${dest}/servers/socket
touch ${dest}/servers/exec
3. Boot the hurd single user and run a part of the native-install
script (example given below). The boot the hurd part could be
avoided one has a "settrans" under Linux. Roland posted a
"showtrans" and I have not got around to modifying it to do a
settrans.
# A truncated native-install
echo I am just checking if your filesystem is really writeable.
fsysopts / --writable
# Set up standard passive translators
/bin/settrans -c /servers/socket/1 /hurd/pflocal
/bin/settrans -c /servers/socket/2 /hurd/pfinet
/bin/settrans -k /servers/exec /hurd/exec
/bin/settrans -c /servers/crash-suspend /hurd/crash --suspend
/bin/settrans -c /servers/crash-kill /hurd/crash --kill
/bin/settrans -c /servers/password /hurd/password
# Not functional yet:
/bin/settrans -c /servers/crash-dump-core /hurd/crash --dump-core
if [ ! -e /servers/crash ] ; then
/bin/ln -s crash-suspend /servers/crash
fi
if [ ! -e /servers/socket/local ] ; then
/bin/ln -s 1 /servers/socket/local
fi
if [ ! -e /servers/socket/inet ] ; then
/bin/ln -s 2 /servers/socket/inet
fi
# We need /dev/fd to call scripts.
cd /dev
/bin/sh ./MAKEDEV -v fd
# Setup crucial devices
echo
echo The next job is to setup device files.
cd /dev
/bin/sh ./MAKEDEV -v std ptyp ptyq
fstype=`fsysopts / | perl -ne 'm!^/hurd/(.*?)\.static.*?([^\s]*?)$!; print $1;'`
rootpart=`fsysopts / | perl -ne 'm!^/hurd/(.*?)\.static.*?([^\s]*?)$!; print $2;'`
if [ ! -e /dev/${rootpart} ] ; then
cd /dev
/bin/sh ./MAKEDEV ${rootpart} || true
fi
if [ x${fstype} = xext2fs ] ; then
fstype=ext2
fi
cat > /etc/fstab << __GNU__
# /etc/fstab: static file system information
#
# <file system> <mount point> <type> <options> <dump> <pass>
__GNU__
if [ ! -e /dev/${rootpart} ] ; then
echo Couldn\'t determine root partition, sorry.
echo You have to edit /etc/fstab to match your system.
echo However, for your convenience, I will install a dummy entry.
echo "#/dev/hd0s1 / ext2 rw 1 1" >> /etc/fstab
else
echo Your root partition is /dev/${rootpart}.
echo Your file system type is ${fstype}.
echo If this information is not correct, you need to edit /etc/fstab.
echo "/dev/${rootpart} / ${fstype} rw 1 1" >> /etc/fstab
fi
Hope this helps,
Kapil.
--
Always use PGP for privacy; finger -l kapil@imsc.ernet.in for my Public Key.
------------------------------------------------------------------
1E8EE261 1996/10/09 Kapil Hari Paranjape <kapil@imsc.ernet.in>
Key fingerprint = CA F1 07 DD 7B FF 0E D6 82 77 19 DE FD FE 30 83
------------------------------------------------------------------
Reply to: