For a while I have been thinking about the lack of a roadmap for the
Hurd; but now I realized that we lack something even more fundamental: a
simple mission statement -- i.e. saying where we want to go, rather
than how we want to get there. I think many of the problems we have are
directly or indirectly related to that.

As we didn't have such a mission statement so far, the people currently
involved have vastly different ideas about the mission, which of course
makes it a bit hard to come up with a suitable one now. However, I
managed to come up with something that I believe is generic enough so
all contributors can subscribe to it:

>   *The mission of the Hurd project is: to create a general-purpose
>   kernel suitable for the GNU operating system, which is viable for
>   everyday use, and gives users and programs as much control over their
>   computing environment as possible.*

*"Suitable for GNU"* in the first part implies a number of things. I
explicitely mentioned *"general-purpose"*, because this an important
feature that sets the Hurd apart from many other microkernel projects,
but isn't immediately obvious.

I didn't mention that it must be entirely free software, as this should
be obvious to anyone familiar with GNU.

Another thing I did not mention, because it's too controversial: how
much UNIX do we need? I think that being suitable for GNU requires a
pretty high degree of UNIX compatibility, and also that the default
environment looks to the user more or less like UNIX. However, some
people claimed in the past that GNU could do without UNIX -- the wording
used here doesn't totally preclude such views.

The second part also leaves a lot of slack: I for my part still believe
that a Mach-based Hurd can be viable for everyday use; but those who
think that a microkernel change is required, should be happy with this
wording as well.

The third part tries to express the major idea behind the Hurd design in
the most compact and generic way possible.