summaryrefslogtreecommitdiff
path: root/hurd
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2019-04-03 23:42:32 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-04-03 23:42:32 +0200
commit70b8fc57e8e29c4d4a1284c2267651943ac02b4e (patch)
tree1b839e207a3f3c516e684420396e388cf8ae1487 /hurd
parente1a127efc582faabce933d0943eceae797634168 (diff)
parent93b266266b6200a64372e02564729bf5f27cfd3e (diff)
Merge branch 'master' of braunbox:~hurd-web/hurd-web
Diffstat (limited to 'hurd')
-rw-r--r--hurd/documentation.mdwn34
-rw-r--r--hurd/documentation/translator_primer.mdwn4
-rw-r--r--hurd/ng.mdwn10
-rw-r--r--hurd/running.mdwn18
-rw-r--r--hurd/running/arch_hurd.mdwn15
-rw-r--r--hurd/running/debian.mdwn15
-rw-r--r--hurd/running/debian/qemu_image.mdwn27
-rw-r--r--hurd/running/gnu.mdwn8
-rw-r--r--hurd/running/live_cd.mdwn2
-rw-r--r--hurd/running/qemu.mdwn38
10 files changed, 86 insertions, 85 deletions
diff --git a/hurd/documentation.mdwn b/hurd/documentation.mdwn
index a85f4d4f..330ea13b 100644
--- a/hurd/documentation.mdwn
+++ b/hurd/documentation.mdwn
@@ -9,19 +9,18 @@ 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]]."]]"""]]
-# Introductory Material
+[[!meta title="Hurd Documentation"]]
+# Introductory Material
* [[What_Is_the_GNU_Hurd]]
-
- * [[Advantages]]
-
- * [[FAQ]]
-
+ * [[Advantages of the Hurd|Advantages]]
+ * [[The Hurd FAQ|FAQ]]
* [[*The_Hurd_and_Linux*|/hurd-and-linux]], a comment by Richard Stallman.
+<!-- This comment "pushes" RMS's comment back into the list. Markdown is just great. -->
+
* [[*Towards_a_New_Strategy_of_OS_Design*|/hurd-paper]], an architectural
overview by Thomas Bushnell, BSG, notably:
-
* [[The design|/hurd-paper#design]]
* [[Translators|/hurd-paper#translator]]
* [[The auth translator|/hurd-paper#auth]]
@@ -29,8 +28,9 @@ is included in the section entitled
* [[The exec translator|/hurd-paper#exec]]
* [[The ftpfs translator|/hurd-paper#ftpfs]]
- * [[*The_Hurd*|/hurd-talk]], a presentation by Marcus Brinkmann, notably:
+<!-- Push! -->
+ * [[*The_Hurd*|/hurd-talk]], a presentation by Marcus Brinkmann, notably:
* [[How to get a port?|/hurd-talk#how]]
* [[Pathname resolution example|/hurd-talk#pat]]
* [[Mapping the POSIX Interface|/hurd-talk#map]]
@@ -39,10 +39,10 @@ is included in the section entitled
* [[Password Server|/hurd-talk#pas]]
* [[Process Server|/hurd-talk#pro]]
- * The *[[translator_primer]]*.
-
- * A document about *[[translators]]* by Marcus Brinkmann.
+<!-- Force push! -->
+ * [[*The Translator Primer*|Translator_Primer]].
+ * [[*A Document About Translators*|translators]] by Marcus Brinkmann.
* [[*A_Critique_of_the_GNU_Hurd_Multi-server_Operating_System*|critique]], an
analysis of the GNU Hurd on GNU Mach system, written by Neal Walfield and
Marcus Brinkmann.
@@ -60,33 +60,25 @@ is included in the section entitled
# Development
* [[RPC]]: our usage of *Remote Procedure Call*s.
-
* *[[The_GNU_Hurd_Reference_Manual|reference_manual]]*.
-
- * The *[[Hurd_Hacking_Guide]]*, an introduction to GNU&nbsp;Hurd and Mach
+ * [[*The Hurd Hacking Guide|Hurd_Hacking_Guide]]*, an introduction to GNU&nbsp;Hurd and Mach
programming by Wolfgang Jährling.
-
* [*Manually Bootstrapping a
Translator*](http://walfield.org/pub/people/neal/papers/hurd-misc/manual-bootstrap.txt),
a text by Neal Walfield about how to *manually connect the translator to
the filesystem*.
-
* [[*The_Authentication_Server*|auth]], the transcript of a talk about the
details of the authentication mechanisms in the Hurd by Wolfgang Jährling.
-
* [*The Mach Paging Interface as Used by the
Hurd*](http://lists.gnu.org/archive/html/l4-hurd/2002-06/msg00001.html), a
text by Neal Walfield.
-
* In the
[[Position_paper_*Improving_Usability_via_Access_Decomposition_and_Policy*|ng/position_paper]]
Neal Walfield and Marcus Brinkmann give an overview about how a future,
subsequent system may be architected.
-
* [*Generalizing mobility for the Hurd*](http://users.student.lth.se/cs07fh9/2009-hammar-hurd-mobility.pdf),
a thesis written by Carl Fredrik Hammar,
investigates the mobility aspect of stores
and how it can be generalized and used for other applications.
The background chapter may be of interest to new developers.
-
- * [[Ada4Hurd]]: some tools to write translators with Ada \ No newline at end of file
+ * [[Ada4Hurd]]: some tools to write translators with Ada
diff --git a/hurd/documentation/translator_primer.mdwn b/hurd/documentation/translator_primer.mdwn
index 35eab2fb..92a1d5f9 100644
--- a/hurd/documentation/translator_primer.mdwn
+++ b/hurd/documentation/translator_primer.mdwn
@@ -8,9 +8,11 @@ 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]]."]]"""]]
+[[!meta title="Translator Primer"]]
+
# Small Examples on Using Translators
-The [[concept|concepts]] of user-space servers, [[translator]]s, is a very
+The [[concept|concepts]] of user-space servers, [[Translators|translator]], is a very
powerful one. Here is an introductionary text.
diff --git a/hurd/ng.mdwn b/hurd/ng.mdwn
index d9287c3d..b5270eac 100644
--- a/hurd/ng.mdwn
+++ b/hurd/ng.mdwn
@@ -1,11 +1,13 @@
-Hurd-ng is an effort to build a new operating system that preserves
+[[!meta title="Hurd NG"]]
+
+Hurd-ng is an effort to build a new, "Next Generation" operating system that preserves
the main design goals of the Hurd while fixing some of the Hurd's
shortcomings. There is not yet an official roadmap or a concrete
specification; indeed, much of the work is research oriented.
These pages try to summarize the major discussions and ideas.
-
+---
# Why ngHurd
This section explains the motivations behind the new design:
@@ -15,7 +17,7 @@ This section explains the motivations behind the new design:
* History of the [[history/port_to_another_microkernel]]
-
+---
# Work already done
A [[critique]] of the original Hurd is available.
@@ -25,7 +27,7 @@ A [[position_paper]] by Marcus Brinkmann and Neal H. Walfield can be found.
A draft specification of the Hurd-NG interfaces has been, but is no longer,
available.
-
+---
# Subjects
## Design processus
diff --git a/hurd/running.mdwn b/hurd/running.mdwn
index 7653b387..c60efb5a 100644
--- a/hurd/running.mdwn
+++ b/hurd/running.mdwn
@@ -1,5 +1,4 @@
-[[!meta copyright="Copyright © 2007, 2008, 2009, 2011, 2012, 2013 Free Software
-Foundation, Inc."]]
+[//]: # ([[meta copyright="Copyright © 2007, 2008, 2009, 2011, 2012, 2013 Free Software Foundation, Inc."]])
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
@@ -11,18 +10,21 @@ License|/fdl]]."]]"""]]
[[!tag stable_URL]]
+[[!meta title="Running the Hurd"]]
+
There are several different ways to run a GNU/Hurd system:
-* [[Distrib]] - Distributions based on the Hurd
+* [[Distributions|Distrib]] - Distros based on the Hurd
* [[microkernel/mach/gnumach/ports/Xen]] - In Xen
-* [[Live_CD]]
+* [[Live_CD]] - As a live CD without installing (can also be run in QEMU)
* [[QEMU]] - In QEMU
-* [[cloud]] - In the "cloud": OpenStack
-* [[chroots|chroot]] need a couple of tricks to work properly.
+* [[Cloud]] - In the "cloud": OpenStack
+* [[Chroots|chroot]] need a couple of tricks to work properly.
* [[VirtualBox]] - In VirtualBox
-* [[https://github.com/bbesim/vagrant_GNU-debian-hurd_basebox]] - On Vagrant
+* [Vagrant Basebox](https://github.com/bbesim/vagrant_GNU-debian-hurd_basebox) - On Vagrant
* [[vmware]] (**non-free!**)
-* [[FAQ]]
+<!-- This comment pushes the last li element "vmware" into the list. I don't know why, but it works. -->
+* [[FAQ]]
* [[Public_hurd_boxen]]
diff --git a/hurd/running/arch_hurd.mdwn b/hurd/running/arch_hurd.mdwn
index 0e6075bb..55091ec4 100644
--- a/hurd/running/arch_hurd.mdwn
+++ b/hurd/running/arch_hurd.mdwn
@@ -1,5 +1,3 @@
-[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]]
-
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
@@ -12,10 +10,11 @@ License|/fdl]]."]]"""]]
Arch Hurd is a port of Arch Linux to the GNU Hurd, founded on 2010-01-04 by Michael Walker (Barrucadu) and, with input from a variety of people including Allan McRae (allan), Matthias Lanzinger (melpo), and Alexander Preisinger (giselher), the project has made excellent process. There is a livecd available on the Arch Hurd website, with which you can try or install Arch Hurd.
-### Links
+# External Links
-* Official Website: <http://www.archhurd.org>
-* Installation Guide: <http://wiki.archhurd.org/wiki/Installation_Guide>
-* Mailing Lists: <http://lists.archhurd.org>
-* Forum: <http://bbs.archhurd.org>
-* IRC: #archhurd on irc.freenode.net
+* [Official Website](http://www.archhurd.org)
+* [[!wikipedia Arch_Hurd]] on Wikipedia.
+* [Installation Guide](http://wiki.archhurd.org/wiki/Installation_Guide)
+* [Mailing Lists](http://lists.archhurd.org)
+* [Forum](http://bbs.archhurd.org)
+* IRC: #archhurd on [irc.freenode.net](https://freenode.net)
diff --git a/hurd/running/debian.mdwn b/hurd/running/debian.mdwn
index b758fd52..0772c48e 100644
--- a/hurd/running/debian.mdwn
+++ b/hurd/running/debian.mdwn
@@ -7,20 +7,23 @@ Debian GNU/Hurd is an effort to port the Debian distribution to the Hurd. Around
One noteable difference in this port, is that `/etc/mtab` -> `/proc/mounts`
-## QEMU Image
+---
+# QEMU Image
[[!inline pages=hurd/running/debian/qemu_image raw=yes feeds=no]]
+---
# Installing
- [Installation Instructions](http://www.debian.org/ports/hurd/hurd-install)
- [Upgrading K11 or K14 based systems to unstable](http://lists.debian.org/debian-hurd/2007/09/msg00007.html)
- [[After_install]] — Do this to get networking, new console and X
+---
# Contributing
- [[Porting]] — Helping with porting packages
* [[Patch_submission]] — How to submit patches for build failures
- [[Creating_image_tarball]]
-## IRC, freenode, #hurd, 2014-02-12
+### IRC, freenode, #hurd, 2014-02-12
<braunr> hm, there is something weird
<braunr> after successfully installing (with the new installer cd), and rebooting, system init fails because fsck can't be run on /home (a separate partition)
@@ -34,7 +37,7 @@ One noteable difference in this port, is that `/etc/mtab` -> `/proc/mounts`
<braunr> hm, /etc/mtab isn't a link to /proc/mounts here, might explain
-## IRC, freenode, #hurd, 2014-02-12
+### IRC, freenode, #hurd, 2014-02-12
<braunr> yes, better with a proper symlink :)
<teythoon> good
@@ -52,7 +55,7 @@ One noteable difference in this port, is that `/etc/mtab` -> `/proc/mounts`
<azeem> maybe pere or rleigh in #debian-hurd can help
-## IRC, freenode, #hurd, 2014-02-13
+### IRC, freenode, #hurd, 2014-02-13
<braunr> 6<--60(pid1698)->dir_lookup ("var/run/mtab" 4194305 0) = 0 3 "/run/mtab" (null)
<braunr> looks like /etc/mtab isn't actually used anymore
@@ -64,7 +67,7 @@ One noteable difference in this port, is that `/etc/mtab` -> `/proc/mounts`
<braunr> they can't find the info they're looking for
-## IRC, freenode, #hurd, 2014-02-17
+### IRC, freenode, #hurd, 2014-02-17
<braunr> i still don't have mtab at the proper location on darnassus
<pere> is there something missing with sysvinit on hurd?
@@ -78,8 +81,10 @@ One noteable difference in this port, is that `/etc/mtab` -> `/proc/mounts`
<braunr> but doesn't that mean it will use /etc/mtab ?
<pere> if I was a hurd porter, I would fix it in hurd while waiting for a fix in coreutils, just to save people for wondering about the breakage, but I am not the most patient of developers. :)
+---
# Externel
* Official page about the Debian GNU/Hurd port: [Debian GNU/Hurd](http://www.debian.org/ports/hurd/)
* Debian [[FAQ]] — Frequently Asked Questions
* [Presentation](http://people.debian.org/~mbanck/talks/hurd_lt2004/html/) -Debian GNU/Hurd*, [[MichaelBanck]], LinuxTag 2004 Karlsruhe
* [Archive Qualification](http://wiki.debian.org/ArchiveQualification/hurd-i386)
+* [[!wikipedia Debian_GNU/Hurd]] on Wikipedia
diff --git a/hurd/running/debian/qemu_image.mdwn b/hurd/running/debian/qemu_image.mdwn
index fe1b7444..6ae16d8b 100644
--- a/hurd/running/debian/qemu_image.mdwn
+++ b/hurd/running/debian/qemu_image.mdwn
@@ -1,5 +1,4 @@
-[[!meta copyright="Copyright © 2011, 2012, 2014, 2016 Free Software Foundation,
-Inc."]]
+[//]: # ([[meta copyright="Copyright © 2011, 2012, 2014, 2016 Free Software Foundation, Inc."]])
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
@@ -9,34 +8,24 @@ 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]]."]]"""]]
+[[!meta title="Debian's QEMU Image"
+
There is a QEMU image with [[Debian GNU/Hurd|debian]] pre-installed available
-as <https://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd.img.tar.gz>.
+at <https://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd.img.tar.gz>.
Usage:
* Install qemu-kvm via your distribution's package manager (it might just be named qemu)
+* Download the image, unpack it, and run it:
-* Download the debian image:
-
-<!-- Codeblocks nested in lists are garbage in Markdown. The only clean way to do this is by adding a comment after every list entry. Sorry about this!-->
+<!-- Code snippits embedded in lists are garbage. Do not remove this comment. -->
$ wget https://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd.img.tar.gz
-
-* Unpack it:
-
-<!-- Yes, another comment. I can leave these empty but then again I can fill them. -->
-
$ tar -xz < debian-hurd.img.tar.gz
-
-* Run it:
-
-<!-- A world in which nobody washes their dishes is a dishtopia -->
-
- $ kvm -m 1G -drive cache=writeback,file=$(echo debian-hurd-*.img) -net user,hostfwd=tcp:127.0.0.1:2222-:22
+ $ kvm -m 1G -drive cache=writeback,file=$(echo debian-hurd-*.img) -no-reboot -net user,hostfwd=tcp:127.0.0.1:2222-:22
* Login as root (the root password is empty)
-
-* Set up a root password with passwd
+* Set up a root password with `passwd`
Optionally you may use `--curses` to keep your keyboard layout. If need be modprobe kvm_amd, kvm intel and kvm to get kvm support (which is much, much faster).
diff --git a/hurd/running/gnu.mdwn b/hurd/running/gnu.mdwn
index f6aada87..964e7e8e 100644
--- a/hurd/running/gnu.mdwn
+++ b/hurd/running/gnu.mdwn
@@ -1,3 +1,5 @@
+[[!meta title="The GNU System"]]
+
# <a name="The_GNU_Operating_System"> </a> The GNU Operating System
The GNU Operating System, Commonly referred to as simply "The GNU System", is a
@@ -22,10 +24,12 @@ provide a flexible operating system.
However, [[gnu.org|https://www.gnu.org/distros/free-distros.html]] maintains a
list of freedom respecting and production ready GNU/Linux systems. One of the
-most promising of these is [[guixSD|https://www.gnu.org/software/guix/]], which
+most promising of these is [[GuixSD|https://www.gnu.org/software/guix/]], which
is the GNU Guix System Distribution, which eventually plans to support the GNU
Hurd as the kernel!
## Resources
- * [[mailing_lists/gnu-system-discuss]] mailing list
+* [[mailing_lists/gnu-system-discuss]] mailing list
+* [Free as in Freedom 2.0 (PDF)](https://static.fsf.org/nosvn/faif-2.0.pdf)
+* [Free Software, Free Society (PDF)](https://www.gnu.org/philosophy/fsfs/rms-essays.pdf)
diff --git a/hurd/running/live_cd.mdwn b/hurd/running/live_cd.mdwn
index 7c5f0a8e..4ff5a791 100644
--- a/hurd/running/live_cd.mdwn
+++ b/hurd/running/live_cd.mdwn
@@ -1,3 +1,5 @@
+[[!meta title="Arch Hurd Live CD"]]
+
[[Arch Hurd|hurd/running/arch_hurd/]] offers Hurd LiveCDs at <http://www.archhurd.org/download/>.
A less recent Live CD can be found at <http://teythoon.cryptobitch.de/hurd/livecd/hurd-live-install-1273300101.iso.xz>.
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn
index 48ab872a..b9afdde4 100644
--- a/hurd/running/qemu.mdwn
+++ b/hurd/running/qemu.mdwn
@@ -1,6 +1,3 @@
-[[!meta copyright="Copyright © 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
-2013, 2014, 2016 Free Software Foundation, Inc."]]
-
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
@@ -9,6 +6,8 @@ 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]]."]]"""]]
+[[!meta title="QEMU Image"]]
+
This page discusses things for [[Unix]] systems, there is a separate page for
[[Microsoft_Windows]] systems.
@@ -16,15 +15,20 @@ See the discussion about [[hurd/running/qemu/writeback_caching]].
[[!toc]]
+---
# Readily Available Images
-You can use the following images to give the GNU/Hurd a try.
+You can use the following images to give the Hurd a try.
## Debian GNU/Hurd
[[!inline pages=hurd/running/debian/qemu_image raw=yes feeds=no]]
-## [[Nix]]
+## Arch Hurd Live CD
+
+[[!inline pages=hurd/running/live_cd raw=yes feeds=no]]
+
+## [[NixOS and GuixSD|Nix]]
## Unofficial Images
@@ -38,18 +42,17 @@ volunteers and may not have been tested extensively.
with it, please have a look at [[its_wikipage|hurd/running/qemu/babhurd_image]]. And when
you use it, please [tell me your experience with it](http://draketo.de/contact)! - [[community/weblogs/ArneBab]]
-# Arch Hurd Live CD
-Also you can use QEMU to easily try one of the
-[[Hurd_LiveCDs|hurd/running/live_cd/]].
+---
# What is Needed to create a QEMU image
## Debian Installer
Instructions for creating a qemu image from the install CDs from debian installer can be found in the README alongside the d-i Hurd images: <http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/>
+---
# KVM acceleration
Check if your CPU supports kvm:
@@ -97,6 +100,7 @@ More info on kvm at: http://www.linux-kvm.org/page/FAQ
If your machine supports hardware acceleration, you should really use the kvm variant of qemu, as it speeds things quite a lot.
+---
# HAP/EPT/NPT acceleration
Performance will be yet better if HAP (EPT or NPT) is available:
@@ -104,6 +108,7 @@ Performance will be yet better if HAP (EPT or NPT) is available:
$ grep ept /proc/cpuinfo
$ grep npt /proc/cpuinfo
+---
# Installing Debian/Hurd with QEMU using the Debian installer
Note: If you have hardware support, replace the qemu commands below with kvm, e.g. qemu-ing -> kvm-img.
@@ -195,7 +200,7 @@ During the graphical emulation, you can use the following keys:
3 Serial port
<Ctrl><Alt> Toggle mouse and keyboard grab.
-
+---
# Transferring Files
## Mounting Disk Image on Host
@@ -230,7 +235,7 @@ loop-mounting the file systems images. (Also you don't need `root' rights.)
However, note that there is a bug in [[translator/fatfs]]: [[!GNU_Savannah_bug
25961]].
-
+---
# Networking in QEMU
Some further notes about [[networking]] and home hints about
@@ -261,14 +266,11 @@ but note that `ping` doesn't work with QEMU's user-networking stack.
If you want to connect from the host system to the Hurd system running in QEMU, you can use port forwarding in QEMU or to setup something more advanced, like bridged networking.
-### IRC, freenode, #hurd, 2014-02-12
+#### IRC, freenode, #hurd, 2014-02-12
- <braunr> youpi: also, the problems i had with regard to accessing the
- debian repository were caused by a qemu bug where, in nat mode, qemu is
- unable to handle dns requests if the host dns servers are ipv6 ones
+ <braunr> youpi: also, the problems i had with regard to accessing the debian repository were caused by a qemu bug where, in nat mode, qemu is unable to handle dns requests if the host dns servers are ipv6 ones
<youpi> yes, we've noticed that with a student of mine
- <youpi> you may be interested by a patch we submitted to qemu-devel, that
- adds ipv6 support to -net user :)
+ <youpi> you may be interested by a patch we submitted to qemu-devel, that adds ipv6 support to -net user :)
<braunr> :)
<braunr> for now i directly change resolv.conf
<youpi> braunr: the issue is that you have only ipv6 nameservers, right?
@@ -352,7 +354,8 @@ Once you have logged in as `root` run the `pfinet` translator with values that a
That should do it! Do not forget to edit/update `/etc/resolv.conf` to get DNS working.
-# <a name="multiboot">Multiboot</a>
+---
+# Multiboot
See "Linux/Multiboot boot specific" section on QEMU manpage.
@@ -381,6 +384,7 @@ You can also use `--append [...]`, which will show up in `/proc/cmdline`.
Command line above crashes with old qemu versions, for instance qemu 1.1.2 on Debian Wheezy, fixed by upgrading to wheezy-backports currently qemu 1.7.0, see [[!debbug 741873]]
+---
# Related Links
These are links that users may find helpful.