summaryrefslogtreecommitdiff
path: root/hurd
diff options
context:
space:
mode:
authorThomas Schwinge <tschwinge@gnu.org>2007-09-05 02:28:57 +0200
committerThomas Schwinge <tschwinge@gnu.org>2007-09-05 02:28:57 +0200
commit226c14be02e15a9eb0929eb82e05b89710708541 (patch)
tree3c8153968bac3a7f10f36eb0089ccaeb4e47227b /hurd
parent1a6d99feac88948eba6b00282eed091dbae31430 (diff)
Integrate some more pages.
Diffstat (limited to 'hurd')
-rw-r--r--hurd/contributing.mdwn55
-rw-r--r--hurd/debbuging.mdwn (renamed from hurd/ibac.mdwn)10
-rw-r--r--hurd/faq.mdwn45
-rw-r--r--hurd/gettinghelp.mdwn33
-rw-r--r--hurd/history.mdwn19
-rw-r--r--hurd/neighborhurd.mdwn38
-rw-r--r--hurd/noninvasivedebugging.mdwn23
-rw-r--r--hurd/running/debian/DebianFAQ.mdwn2
-rw-r--r--hurd/todo.mdwn115
9 files changed, 332 insertions, 8 deletions
diff --git a/hurd/contributing.mdwn b/hurd/contributing.mdwn
new file mode 100644
index 00000000..819d354b
--- /dev/null
+++ b/hurd/contributing.mdwn
@@ -0,0 +1,55 @@
+[[license text="""
+Copyright © 2007 Free Software Foundation, Inc.
+
+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.txt]].
+
+By contributing to this page, you agree to assign copyright for your
+contribution to the Free Software Foundation. The Free Software Foundation
+promises to always use either a verbatim copying license or a free
+documentation license when publishing your contribution. We grant you back all
+your rights under copyright, including the rights to copy, modify, and
+redistribute your contributions.
+"""]]
+
+# Porting Applications
+
+Debian is currently the Hurd distribution of choice among Hurd
+users and developers. Approximately half of the Debian archive
+has been compiled successfully on the Hurd, however, many
+programs fail to build for various reasons. A [list of build
+failures including error messages](http://unstable.buildd.net/buildd/hurd-i386_Failed.html)
+can be found, as well as a [preliminary analysis](http://lists.debian.org/debian-hurd/2007/07/msg00000.html)
+of them. If you want to port any of these, file patches in the
+[Alioth patch tracker](http://alioth.debian.org/tracker/?atid=410472&group_id=30628&func=browse)
+ for review. It might be a good idea to record your intention
+to port something in the [Alioth task tracker](http://alioth.debian.org/pm/task.php?group_project_id=34&group_id=30628&func=browse) so other people do not do duplicated work. You can also just
+install the Hurd and find what doesn't work for you and port
+it and then file patches for that package in [above patch tracker](http://alioth.debian.org/tracker/?atid=410472&group_id=30628&func=browse).
+Another important task is making sure that patches go upstream as
+well, especially for GNU projects.
+
+If you want to further development, a list of interesting
+projects is available in the [Alioth task tracker](http://alioth.debian.org/pm/task.php?group_project_id=35&group_id=30628&func=browse).
+Those projects are not necessarily Debian specific, but do
+not touch the Hurd proper.
+
+# Hurd Proper
+
+If you are interested in developping the Hurd proper, there is
+plenty of work to do. Before you can significantly contribute,
+take some time to learn about the system, e.g.,
+[[microkernels_for_beginners|microkernel/for_beginners]]. Until you can do the basic exercises
+listed there, you won't be able to significantly contribute to
+the Hurd.
+
+See the [[ToDo]].
+
+# GNU Mach
+
+[[GNU_Mach|microkernel/mach/gnumach]] is the underlying microkernel used by the
+Hurd. It has a number of deficencies;
+[[microkernel/mach/gnumach/RevivalProject]].
diff --git a/hurd/ibac.mdwn b/hurd/debbuging.mdwn
index 4aa4f70e..20446b6e 100644
--- a/hurd/ibac.mdwn
+++ b/hurd/debbuging.mdwn
@@ -15,11 +15,7 @@ your rights under copyright, including the rights to copy, modify, and
redistribute your contributions.
"""]]
-IBAC stands for identity-based access control.
-In this access control scheme, access to a resource
-is based on identity of the caller. This is often
-problematic as when a program acts on behalf of
-another, access is authorized based on its own
-identity rather than that of the caller.
+See:
-See also [[ABAC]].
+* [[NeighborHurd]]
+* [[NonInvasiveDebugging]]
diff --git a/hurd/faq.mdwn b/hurd/faq.mdwn
new file mode 100644
index 00000000..0bcb4e79
--- /dev/null
+++ b/hurd/faq.mdwn
@@ -0,0 +1,45 @@
+In addition to the [general FAQ](http://www.gnu.org/software/hurd/docs.html#TOCfaq) there are the following typical newbie questions. (There is an [updated version](http://tuxou.ouvaton.org/hurd/) which is not official yet.)
+
+If you still have problems, do not hesitate to make use of the [[MailingLists]] or the [[IRC]].
+
+* **_You say GNU, don't you mean GNU/Hurd?_**
+ * Yes and no. GNU refers to the system as a whole, while GNU/Hurd is more specific, saying that it is the GNU system running on the Hurd -- to differentiate it from the GNU system running on Linux, GNU/Linux. Also see [[GNU/GnuNames]]
+
+* **_What editor can I use?_**
+ * `nano` is the default editor on a fresh install, not `ae`.
+
+* **_Why can't I get the answers I need from Hurd hackers?_**
+ * This [document](http://www.catb.org/~esr/faqs/smart-questions.html) may help you understand some developers attitudes and social norms.
+
+* **_Where are the virtual consoles I use when running GNU/Linux?_**
+ * You need to [use screen](http://www.gnu.org/software/hurd/faq.en.html#q4-6) instead, also available when running GNU/Linux.
+ * The [new console](http://lists.debian.org/debian-hurd/2002/debian-hurd-200209/msg00054.html) by Marcus Brinkmann could also be used. It supports the Alt-Fn keys for switching like in GNU/Linux. NOTE: that message has an error in the configuration steps, it says `/dev/vts` when it means `/dev/vcs`. A more up-to-date howto is [[HurdConsole]].
+
+* **_What is a translator?_**
+ * The official FAQ [answers](http://www.gnu.org/software/hurd/faq.en.html#q4-2) this question by a reference to [hurd-doc-translator](http://www.debian.org/ports/hurd/hurd-doc-translator).
+
+* **_Where's the sauce?_**
+ * It's on [Savannah](http://savannah.gnu.org). See also the [GNU Development Resources](http://www.gnu.org/software/devel.html), for more information.
+
+* **_What is this "libio" stuff?_**
+ * There was an ABI change for glibc0.3. It's recommended you reinstall your GNU/Hurd system if you run a system installed before the summer of 2002. This is a similar cause for the various Linux distributions who changed from libc5 to libc6 or glibc2 around 1998.
+
+* **_What is GNU Mach vs. oskit-mach?_**
+ * These are different versions of the Mach microkernel that supports the Hurd that runs on top of it. For more info, see [[Mach]]
+
+* **_What software is available for GNU?_**
+ * Most packages from [Debian](http://www.debian.org/) [GNU/Linux](http://www.gnu.org/gnu/linux-and-gnu.html) which aren't linux-specific ([Packages That Won't Be Ported](http://www.debian.org/ports/hurd/hurd-devel-debian)) are expected to work on GNU/Hurd too. See the database in <http://packages.debian.org/>. Programs which need pthreads, including [GNOME](http://www.gnome.org), [KDE](http://www.kde.org), [Mozilla](http://www.mozilla.org), [OpenOffice](http://www.openoffice.org), [SDL](http://www.libsdl.org), etc. are being worked on currently using Neal Walfields libpthreads. See the [[Distrib/PortingIssues]] document for some common build problems and their solutions.
+ * If you can't fetch a package with "apt-get install ", try building it from source: "apt-get source &amp;&amp; cd &lt;package\_dir&gt; &amp;&amp; debian/rules binary".
+ * As of January 2007, 50% of Debian packages have been ported on the Hurd. Of course, bug testing is welcome.
+
+* **_How do I initialize a serial console on the Hurd?_**
+ * You can try out the Serial Howto at <http://www.nongnu.org/thug/serial-howto.txt>
+ * For a real serial console at boot time you need to rebuild your GNUmach 1.x kernel. For more info see the Utah release notes at [http://www.cs.utah.edu/flux/mach4-i386/html/mach4-UK22.html#serial\_console](http://www.cs.utah.edu/flux/mach4-i386/html/mach4-UK22.html#serial_console)
+
+* **_Will GNU work in Vmware?_**
+ * It's highly recommended and easier to get a full image for Bochs. See [[Distrib]]
+ * It didn't use to, [Hurd bootstrap fails](http://lists.debian.org/debian-hurd/2002/debian-hurd-200207/msg00069.html). Vmware is not [free software](http://www.gnu.org/philosophy/free-sw.html) and it is [[Distrib/VmWare]]. We recommend to use [free](http://www.gnu.org/philosophy/free-sw.html) alternatives, like [[Distrib/BochsEmulator]].
+ * A faster, more widespread and [free](http://www.gnu.org/philosophy/free-sw.html) recent alternative is [QEMU](http://hurd.gnufans.org/bin/view/Distrib/QEMU). You can find more informations on [[running/QEMU]].
+ * If someone prefers using VMWare:
+ * It works with VMWare Workstation 4.0.5 build-6030.
+ * Running Debian GNU/HURD in VMWare works for me -- [[Main/MichaelAblassmeier]] - 03 Mar 2004
diff --git a/hurd/gettinghelp.mdwn b/hurd/gettinghelp.mdwn
new file mode 100644
index 00000000..b3bbcbf6
--- /dev/null
+++ b/hurd/gettinghelp.mdwn
@@ -0,0 +1,33 @@
+[[license text="""
+Copyright © 2007 Free Software Foundation, Inc.
+
+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.txt]].
+
+By contributing to this page, you agree to assign copyright for your
+contribution to the Free Software Foundation. The Free Software Foundation
+promises to always use either a verbatim copying license or a free
+documentation license when publishing your contribution. We grant you back all
+your rights under copyright, including the rights to copy, modify, and
+redistribute your contributions.
+"""]]
+
+# Essential Documentation
+
+* [[FAQ]]
+* [[microkernel/mach/gnumach/HardwareCompatibilityList]]
+
+# Forums
+
+Please follow these [guidelines](http://catb.org/~esr/faqs/smart-questions.html)
+when asking your question. Namely: spend some time trying
+to solve the problem on your own (e.g., [search the web](http://www.google.com),
+use this wiki, etc.), show us that you did so when you
+ask your question, and provide as many relevant details as possible
+reproducing them as exactly as possible.
+
+* [[MailingLists]]
+* [[IRC]]
diff --git a/hurd/history.mdwn b/hurd/history.mdwn
new file mode 100644
index 00000000..1b45d25f
--- /dev/null
+++ b/hurd/history.mdwn
@@ -0,0 +1,19 @@
+[[license text="""
+Copyright © 2007 Free Software Foundation, Inc.
+
+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.txt]].
+
+By contributing to this page, you agree to assign copyright for your
+contribution to the Free Software Foundation. The Free Software Foundation
+promises to always use either a verbatim copying license or a free
+documentation license when publishing your contribution. We grant you back all
+your rights under copyright, including the rights to copy, modify, and
+redistribute your contributions.
+"""]]
+
+<a href="http://lists.gnu.org/archive/html/l4-hurd/2005-10/msg00718.html" target="_top">History 1997-2003</a></dt>
+<dd> Personal view of Marcus Brinkmann about Hurd development in 1997-2003.
diff --git a/hurd/neighborhurd.mdwn b/hurd/neighborhurd.mdwn
new file mode 100644
index 00000000..b4d25586
--- /dev/null
+++ b/hurd/neighborhurd.mdwn
@@ -0,0 +1,38 @@
+[[license text="""
+Copyright © 2007 Free Software Foundation, Inc.
+
+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.txt]].
+
+By contributing to this page, you agree to assign copyright for your
+contribution to the Free Software Foundation. The Free Software Foundation
+promises to always use either a verbatim copying license or a free
+documentation license when publishing your contribution. We grant you back all
+your rights under copyright, including the rights to copy, modify, and
+redistribute your contributions.
+"""]]
+
+It is possible to run multiple instances of the Hurd
+in parallel, on a single instance of Mach. Other than
+performance crosstalk, they are essentially isolated.
+Practically, as many devices do not allow multiple
+non-cooperating users, e.g., hard drive and network
+this is not currently possible. It can be overcome,
+however, by virtualizing these problematic devices.
+
+When extra hardware is not available, it is possible to
+use a sub-hurd. A sub-Hurd is like a neighbor Hurd,
+however, makes use of some resources provided by another
+Hurd. For instance, backing store and the console.
+([[SubhurdHowto]])
+
+Sub-hurds are extremely useful for debugging core
+servers as it is possible to attach to them with gdb
+from the parent ([[DebuggingViaSubhurds]]. This avoids
+deadlock, e.g., when the instance of gdb stops the
+server but requires its use.
+(Note: it is possible to use [[NonInvasiveDebugging]],
+but this is less flexible.)
diff --git a/hurd/noninvasivedebugging.mdwn b/hurd/noninvasivedebugging.mdwn
new file mode 100644
index 00000000..f2ab8489
--- /dev/null
+++ b/hurd/noninvasivedebugging.mdwn
@@ -0,0 +1,23 @@
+[[license text="""
+Copyright © 2007 Free Software Foundation, Inc.
+
+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.txt]].
+
+By contributing to this page, you agree to assign copyright for your
+contribution to the Free Software Foundation. The Free Software Foundation
+promises to always use either a verbatim copying license or a free
+documentation license when publishing your contribution. We grant you back all
+your rights under copyright, including the rights to copy, modify, and
+redistribute your contributions.
+"""]]
+
+Sometimes using gdb on a server can result in
+deadlock. You can still use gdb by using
+the "set noninvasive" option. This indicates
+to gdb to not stop the program but allows you to
+nevertheless examine its state. Thus, you can get back traces
+and value of variables (and watch them change underneath you).
diff --git a/hurd/running/debian/DebianFAQ.mdwn b/hurd/running/debian/DebianFAQ.mdwn
index 83386c91..43ace701 100644
--- a/hurd/running/debian/DebianFAQ.mdwn
+++ b/hurd/running/debian/DebianFAQ.mdwn
@@ -1,6 +1,6 @@
# <a name="Debian_GNU_Hurd_FAQ"> </a> Debian GNU/Hurd FAQ
-See also [[Hurd/FrequentlyAskedQuestions]] and [[DebianAfterInstall]]
+See also [[hurd/FAQ]] and [[DebianAfterInstall]]
## <a name="df"> df </a>
diff --git a/hurd/todo.mdwn b/hurd/todo.mdwn
new file mode 100644
index 00000000..2d65f0c8
--- /dev/null
+++ b/hurd/todo.mdwn
@@ -0,0 +1,115 @@
+For how best to contribte, see [[contributing]].
+
+This todo is primarily targetted at the Hurd proper
+and applications that rely on the Hurd interfaces.
+
+The canonical TODOs from the CVS archive:
+
+* [TODO file](http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/hurd/hurd/TODO?rev=HEAD&content-type=text/plain)
+* [Task file](http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/hurd/hurd/tasks?rev=HEAD&content-type=text/plain)
+
+* psmisc
+
+The tools provided by the psmisc package are linux centric. Killall and pstree, for instance, require Linux's proc file system but could just as easily use Hurd's libps.
+
+* tmpfs
+* ppp
+* unionfs/stowfs
+* supermount translator
+
+Related: [[KnownHurdLimits]]
+
+From Marcus, 2002:
+
+* xkb driver for console (for international users)
+* kbd leds in console (well, in general, Roland's new driver in oskit for that crap)
+* fixing fakeroot (it's buggy)
+* fixing tmpfs (it's buggy, Neal says it's Mach's fault)
+* adding posix shared memory (requires the io\_close call to be implemented)
+* adding posix file locking (requires the io\_close call to be implemented)
+* testing
+ * find + various filesystems (are inode numbers for . and .. sane?)
+ * ext2fs with other block sizes than 4096
+ * --help and --version and --usage in all programs
+ * I have seen ^V in some --help output, might be argp bug
+ * Verify that all options are documented clearly, and that no unimplemented options appear
+ * Is the short and long description in the help output correct?
+ * Is the return value of all programs correct (eg, does main() return a sane value)
+ * Is the suid bit correctly set for all installed programs?
+ * Translators
+ * Does settrans -g work? -fg?
+ * Does fsysopts work? Does setting options with fsysopts work?
+ * Does stat() work on all translated nodes and give proper data?
+ * What about chown, chmod (some translators should pass this through to the underlying node, esp in /dev!)
+ * Does statfs give correct data?
+ * Are all inode numbers and link counts correct?
+* We also should have a "make check" test suite. We can add this once Jeff finished his automake patches
+* pick up the other things
+ * pthread, definitely. Now that we are so close
+ * new console is basically done
+ * needs integration of course
+ * X switching support
+* there is certainly more to do ...
+
+Wolfgang list of [Easy tasks](http://mail.gnu.org/pipermail/help-hurd/2002-July/006413.html) on July 28, 2002:
+
+<table border="1" cellpadding="1" cellspacing="0">
+ <tr>
+ <th bgcolor="#99CCCC"><strong>Difficulty</strong></th>
+ <th bgcolor="#99CCCC"><strong>Task</strong></th>
+ </tr>
+ <tr>
+ <td> 0 </td>
+ <td> Check if all programs handle options (at least --help, --version and --usage; don't forget about the shell scripts) </td>
+ </tr>
+ <tr>
+ <td> 1 </td>
+ <td> Check if all translators handle fsysopts </td>
+ </tr>
+ <tr>
+ <td> 1 </td>
+ <td> Check if all translators respond to "settrans -g" </td>
+ </tr>
+ <tr>
+ <td> 1 </td>
+ <td> More tests of this kind </td>
+ </tr>
+ <tr>
+ <td> 2 </td>
+ <td> Fix those of the above who don't work as intended </td>
+ </tr>
+ <tr>
+ <td> 2 </td>
+ <td> Document (in doc/hurd.texi) all undocumented programs (translators as well as programs in utils/ and sutils/ and some others) </td>
+ </tr>
+ <tr>
+ <td> 1 </td>
+ <td> Find a POSIX test suite, run it on GNU/Hurd, report the results </td>
+ </tr>
+ <tr>
+ <td> 1 </td>
+ <td> Find more useful test suites to run </td>
+ </tr>
+ <tr>
+ <td> 3 </td>
+ <td> Update INSTALL-cross </td>
+ </tr>
+ <tr>
+ <td> 2 </td>
+ <td> Check if all the store classes in libstore work (we have many of them, look into the Makefile) </td>
+ </tr>
+ <tr>
+ <td> 4 </td>
+ <td> Fix those who don't work </td>
+ </tr>
+ <tr>
+ <td> 2 </td>
+ <td> Document all still undocumented store classes </td>
+ </tr>
+ <tr>
+ <td> 2 </td>
+ <td> The console is pretty new code, it told me it wants to get tested </td>
+ </tr>
+</table>
+
+Where difficulty 0 means trivial and 4 means tricky; the difficulty has nothing to do with the importance.