Arch Hurd Project

From ArchWiki
Revision as of 02:23, 13 February 2010 by Thayer (Talk | contribs) (Undo revision 96518 by Thestinger (Talk))

Jump to: navigation, search

The Arch Hurd Project is, unsurprisingly, a project to get a working Arch system running on GNU/Hurd. This page will, at some point, tell you how you too, can get an Arch Hurd system. Maybe we'll even set up repositories and suchlike, even a website if this thing takes off.

Currently we don't have anything but an idea, some people crazy enough to like the idea, and the promise of some PKGBUILDs and a working cross compiler. Sorry.

Stage 1 - Cross-compiler

Staying consistent with Arch, the target we will build for is i686-pc-gnu. Sources for Hurd components are obtained from their git repo.

Build order (from here):

  • binutils
  • gcc (pass 1)
  • mach
  • mig
  • hurd
  • glibc (pass 1)
  • libpthread
  • gcc (pass 2)
  • glibc (pass 2)

A script to generate a cross compile environment is available here. Currently this uses binutils-2.19.1, gcc-4.1.2, glibc-2.7 and is built for i586-pc-gnu.

Newer and more updated scripts are available here.

Stage 2 - Cross-compile a bootable system

A minimal bootable GNU system requires (at least) these packages built in roughly this order...

  • gnumach-headers (built above)
  • hurd-headers (built above)
  • libpthreads (built above)
  • glibc (built above)
  • gnumach
  • hurd
  • coreutils
  • bash
  • (grub)

Stage 3 - Natively build packages

  • get makepkg/pacman working
  • build packages
  • make install CD
  • party!

Ideas

Just what makes something Arch-like? Add ideas to this list.

  • pacman/makepkg for package management
  • Some form of ABS tree (in git/svn/cvs/whatever to allow easy package rollbacks, perhaps?)
  • Something like the /etc/rc.conf file (anybody know anything about the Hurd boot process?)
  • optimization - build for i686.
  • mkinitcpio

Repositories

I (Barrucadu) have a tonne of spare space/bandwidth on my Dreamhost account, so when this gets rolling if people want to volunteer to port/maintain packages they use, the repositories can live on there.

If I set up a git repo for the ABS tree, a packaging mailing list, and repositories (core/extra should do in the beginning, I imagine), I could give volunteers access to those so we could make progress.

Links

The forum thread

Hurd project homepage, contains useful info/links

Debian GNU/Hurd

Cross Linux From Scratch

Hurd From Scratch - Non-English