diff options
Diffstat (limited to 'open_issues/64-bit_port.mdwn')
-rw-r--r-- | open_issues/64-bit_port.mdwn | 49 |
1 files changed, 34 insertions, 15 deletions
diff --git a/open_issues/64-bit_port.mdwn b/open_issues/64-bit_port.mdwn index b3e826b7..b85d95de 100644 --- a/open_issues/64-bit_port.mdwn +++ b/open_issues/64-bit_port.mdwn @@ -19,11 +19,21 @@ License|/fdl]]."]]"""]] **For pure 64bit support, we need to** - * bootstrap a distrib + * bootstrap a distribution. Debian is done. Alpine-Hurd is mostly + bootstrapped. Reach out to Sergey if you are interested in an + Alpine-Hurd distribution with bleeding-edge software. Reach out + to Guix, if you want to help them bootstrap a 64bit Hurd. * port gdb * Fix bugs :) * Notably it seems to be requiring at least 2G memory to boot. +**Installing via the installer image** + +The installer appears to work in qemu. Give it a shot! Let us know +how it works in real hardware! + +[[http://cdimage.debian.org/cdimage/ports/latest/hurd-amd64/current/]] + **Installing a 64bit chroot** You can use the pre-built image from https://people.debian.org/~sthibault/hurd-i386/initrd-amd64.img.gz and boot that. @@ -34,7 +44,11 @@ Make sure to have `debootstrap >= 1.0.128+nmu2+hurd.1` mkdir chroot-hurd-amd64/etc/apt/trusted.gpg.d ln -s /usr/share/keyrings/debian-keyring.gpg chroot-hurd-amd64/etc/apt/trusted.gpg.d/ -Then boot it, it will drop you into a shell. You need to make / writable: +Then boot it, it will drop you into a shell. You'll probably want to use a nicer shell: + + bash + +You need to make / writable: fsysopts / --writable @@ -66,10 +80,10 @@ After reboot, you'll probably want to setup network: vi /etc/network/interfaces # put there this: - # auto /dev/eth0 - # iface /dev/eth0 inet static - # address 10.0.2.15/16 - # gateway 10.0.2.2 + auto /dev/eth0 + iface /dev/eth0 inet static + address 10.0.2.15/16 + gateway 10.0.2.2 **Creating a 64bit disk image** @@ -82,7 +96,7 @@ To make a bootable system we really better make the disk image partitioned, and # create a new primary partition spanning the whole disk: n p and just accept the defaults, and finish with w settrans -ca disk /hurd/storeio -T typed file:disk.img settrans -ca disk1 /hurd/storeio -T typed part:1:file:disk.img - mke2fs disk1 + /sbin/mke2fs -E root_owner=$UID:0 disk1 settrans -ca chroot-hurd-amd64 /hurd/ext2fs disk1 (here we assume that fdisk puts the partition at sector 2048, that's indeed the @@ -119,16 +133,8 @@ You can then make the disk bootable: settrans -ga disk settrans -ga disk1 -Note: you need to set the uuid in the grub config according to the uuid produced by the `mke2fs` command. - Then boot it, and proceed like for the chroot case. -**Installing from the debian-ports archive** - -For now it's quite empty (not even gcc), but it can be debootstrapped. That will be used to build packages on the buildds. - - debootstrap --foreign --verbose --arch hurd-amd64 --extra-suites=unreleased --include=debian-ports-archive-keyring --keyring=/usr/share/keyrings/debian-ports-archive-keyring.gpg sid chroot-hurd-amd64 https://deb.debian.org/debian-ports/ - **Creating a pbuilder chroot** Here is a sample `/etc/pbuilderrc`: @@ -155,6 +161,19 @@ And this is needed until we get the `aptitude` package built: And then you can run `sudo pbuilder create` , `sudo pbuilder login` , `pdebuild` +**Installing from the debian-ports archive** + +For now it's quite empty (not even gcc), but it can be debootstrapped. That will be used to build packages on the buildds. + + debootstrap --foreign --verbose --arch hurd-amd64 --extra-suites=unreleased --include=debian-ports-archive-keyring --keyring=/usr/share/keyrings/debian-ports-archive-keyring.gpg sid chroot-hurd-amd64 https://deb.debian.org/debian-ports/ + +**Installing proper & more packages** + +The `people.debian.org` repository is only for bootstraping the distribution. Proper packages are getting uploaded on the usual mirror: + + deb http://deb.debian.org/debian-ports sid main + deb http://deb.debian.org/debian-ports unreleased main + **Installing a 64bit system** In principle crosshurd should be working, one however should add this source to get more packages for now: |