summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--advantages.mdwn6
-rw-r--r--community/gsoc/2013.mdwn38
-rw-r--r--community/gsoc/project_ideas.mdwn1
-rw-r--r--community/gsoc/project_ideas/mtab.mdwn77
-rw-r--r--community/gsoc/project_ideas/valgrind.mdwn4
-rw-r--r--community/meetings/ghm2013.mdwn23
-rw-r--r--contributing.mdwn4
-rw-r--r--faq/binary_compatibility.mdwn10
-rw-r--r--faq/df.mdwn24
-rw-r--r--faq/libpthread_plugin.mdwn21
-rw-r--r--faq/so_many_years.mdwn21
-rw-r--r--history.mdwn1
-rw-r--r--hurd/running.mdwn3
-rw-r--r--hurd/running/openstack.mdwn14
-rw-r--r--hurd/subhurd.mdwn3
-rw-r--r--hurd/translator/eth-filter.mdwn28
-rw-r--r--hurd/translator/netio.mdwn9
-rw-r--r--hurd/translator/socketio.mdwn20
-rw-r--r--media_appearances.mdwn13
-rw-r--r--microkernel.mdwn2
-rw-r--r--microkernel/mach/gnumach/building.mdwn2
-rw-r--r--open_issues/exec.mdwn14
-rw-r--r--open_issues/gccgo.mdwn42
-rw-r--r--open_issues/gnumach_vm_object_resident_page_count.mdwn6
-rw-r--r--open_issues/magic_translator_machtype.mdwn6
-rw-r--r--open_issues/ssh.mdwn20
-rw-r--r--open_issues/translate_fd_or_port_to_file_name.mdwn6
-rw-r--r--public_hurd_boxen.mdwn8
-rw-r--r--public_hurd_boxen/installation/darnassus.mdwn9
-rw-r--r--source_repositories.mdwn22
-rw-r--r--user/NlightNFotis.txt96
31 files changed, 407 insertions, 146 deletions
diff --git a/advantages.mdwn b/advantages.mdwn
index a7d5b399..94e64c33 100644
--- a/advantages.mdwn
+++ b/advantages.mdwn
@@ -1,5 +1,5 @@
-[[!meta copyright="Copyright © 2001, 2002, 2008, 2010, 2011, 2012 Free Software
-Foundation, Inc."]]
+[[!meta copyright="Copyright © 2001, 2002, 2008, 2010, 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
@@ -35,7 +35,7 @@ user-space processes and are thus using different address spaces that are
isolated from each other. This is a multi-server design based on a
[[microkernel]]. It is not possible that a faulty memory dereference inside
the [[TCP/IP stack|hurd/translator/pfinet]] can bring down the whole kernel,
-and thus the whole system, which is a real problem in a monolothic Unix kernel
+and thus the whole system, which is a real problem in a monolithic Unix kernel
architecture.
One advantage of the Hurd's separation of kernel-like functionality into
diff --git a/community/gsoc/2013.mdwn b/community/gsoc/2013.mdwn
new file mode 100644
index 00000000..6949c8ac
--- /dev/null
+++ b/community/gsoc/2013.mdwn
@@ -0,0 +1,38 @@
+[[!meta copyright="Copyright © 2008, 2009, 2010, 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
+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]]."]]"""]]
+
+The GNU Hurd project has again been participating in the [Google Summer of
+Code](http://www.google-melange.com/) under the [GNU
+umbrella](http://www.gnu.org/software/soc-projects/) and the [Debian umbrella](https://wiki.debian.org/SummerOfCode2013)
+
+
+# Accepted projects
+
+## Improve the GDB Port for GNU Hurd
+
+by Hacklu
+
+See the project's
+[public page](http://www.google-melange.com/gsoc/project/google/gsoc2013/hacklu/14001) and [blog](http://hacklu.com/blog/category/gsoc/)
+
+## Porting the GCC go language frontend on the GNU/HURD kernel
+
+by Fotis Koutoulakis
+
+See the project's
+[public page](http://www.google-melange.com/gsoc/project/google/gsoc2013/nlightnfotis/20001), [[complete proposal|virt/proposal]], and [blog](http://www.fotiskoutoulakis.com/blog/categories/gsoc/)
+
+## Debian GNU/Hurd Debianish initialization
+
+by Justus Winter
+
+See the project's
+[public page](http://www.google-melange.com/gsoc/project/google/gsoc2013/teythoon/2001), [detailed page](https://wiki.debian.org/SummerOfCode2013/StudentApplications/JustusWinter), [blog](https://teythoon.cryptobitch.de/), and [notes](https://teythoon.cryptobitch.de/gsoc/)
diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn
index 8d4c609b..df0baee2 100644
--- a/community/gsoc/project_ideas.mdwn
+++ b/community/gsoc/project_ideas.mdwn
@@ -93,7 +93,6 @@ other: language_bindings, gnat, gccgo, perl_python. -->
[[!inline pages="community/gsoc/project_ideas/sound" show=0 feeds=no actions=yes]]
[[!inline pages="community/gsoc/project_ideas/disk_io_performance" show=0 feeds=no actions=yes]]
[[!inline pages="community/gsoc/project_ideas/vm_tuning" show=0 feeds=no actions=yes]]
-[[!inline pages="community/gsoc/project_ideas/mtab" show=0 feeds=no actions=yes]]
[[!inline pages="community/gsoc/project_ideas/gnumach_cleanup" show=0 feeds=no actions=yes]]
[[!inline pages="community/gsoc/project_ideas/xmlfs" show=0 feeds=no actions=yes]]
[[!inline pages="community/gsoc/project_ideas/unionfs_boot" show=0 feeds=no actions=yes]]
diff --git a/community/gsoc/project_ideas/mtab.mdwn b/community/gsoc/project_ideas/mtab.mdwn
deleted file mode 100644
index 0c0bb87b..00000000
--- a/community/gsoc/project_ideas/mtab.mdwn
+++ /dev/null
@@ -1,77 +0,0 @@
-[[!meta copyright="Copyright © 2008, 2009, 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
-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]]."]]"""]]
-
-[[!meta title="mtab"]]
-
-[[!tag open_issue_hurd]]
-
-In traditional monolithic system, the kernel keeps track of all mounts; the
-information is available through `/proc/mounts` (on Linux at least), and in a
-very similar form in `/etc/mtab`.
-
-The Hurd on the other hand has a totally
-[[decentralized_file_system|hurd/virtual_file_system]]. There is no single
-entity involved in all mounts. Rather, only the parent file system to which a
-mountpoint ([[hurd/translator]]) is attached is involved. As a result, there
-is no central place keeping track of mounts.
-
-As a consequence, there is currently no easy way to obtain a listing of all
-mounted file systems. This also means that commands like `df` can only work on
-explicitly specified mountpoints, instead of displaying the usual listing.
-
-One possible solution to this would be for the translator startup mechanism to
-update the `mtab` on any `mount`/`unmount`, like in traditional systems.
-However, there are some problems with this approach. Most notably: what to do
-with passive translators, i.e., translators that are not presently running, but
-set up to be started automatically whenever the node is accessed? Probably
-these should be counted among the mounted filesystems; but how to handle the
-`mtab` updates for a translator that is not started yet? Generally, being
-centralized and event-based, this is a pretty inelegant, non-hurdish solution.
-
-A more promising approach is to have `mtab` exported by a special translator,
-which gathers the necessary information on demand. This could work by
-traversing the tree of translators, asking each one for mount points attached
-to it. (Theoretically, it could also be done by just traversing *all* nodes,
-checking each one for attached translators. That would be very inefficient,
-though. Thus a special interface is probably required, that allows asking a
-translator to list mount points only.)
-
-There are also some other issues to keep in mind. Traversing arbitrary
-translators set by other users can be quite dangerous -- and it's probably not
-very interesting anyways what private filesystems some other user has mounted.
-But what about the global `/etc/mtab`? Should it list only root-owned
-filesystems? Or should it create different listings depending on what user
-contacts it?...
-
-That leads to a more generic question: which translators should be actually
-listed? There are different kinds of translators: ranging from traditional
-filesystems ([[disks|hurd/libdiskfs]] and other actual
-[[stores|hurd/translator/storeio]]), but also purely virtual filesystems like
-[[hurd/translator/ftpfs]] or [[hurd/translator/unionfs]], and even things that
-have very little to do with a traditional filesystem, like a
-[[gzip_translator|hurd/translator/storeio]],
-[[mbox_translator|hurd/translator/mboxfs]],
-[[xml_translator|hurd/translator/xmlfs]], or various device file translators...
-Listing all of these in `/etc/mtab` would be pretty pointless, so some kind of
-classification mechanism is necessary. By default it probably should list only
-translators that claim to be real filesystems, though alternative views with
-other filtering rules might be desirable.
-
-After taking decisions on the outstanding design questions, the student will
-implement both the actual [[mtab_translator|hurd/translator/mtabfs]], and the
-necessary interface(s) for gathering the data. It requires getting a good
-understanding of the translator mechanism and Hurd interfaces in general.
-
-Possible mentors: Olaf Buddenhagen (antrik), Carl Fredrik Hammar (cfhammar)
-
-Exercise: Make some improvement to any of the existing Hurd translators.
-Especially those in [hurdextras](http://www.nongnu.org/hurdextras/) are often
-quite rudimentary, and it shouldn't be hard to find something to improve.
diff --git a/community/gsoc/project_ideas/valgrind.mdwn b/community/gsoc/project_ideas/valgrind.mdwn
index e9e94857..6663eec2 100644
--- a/community/gsoc/project_ideas/valgrind.mdwn
+++ b/community/gsoc/project_ideas/valgrind.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2009, 2010, 2011 Free Software Foundation,
+[[!meta copyright="Copyright © 2009, 2010, 2011, 2013 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
@@ -60,6 +60,8 @@ Such specific semantics can't be deduced from the message headers alone.
Thus for a complete port,
it will still be necessary to go through the list of all known RPCs,
and implement special handling in Valgrind for those RPCs that need it.
+Reading the source code of the rpctrace tool would probably be useful to
+understand how the RPC message can be parsed.
The goal of this task is at minimum to make Valgrind grok Mach traps,
and to implement the generic RPC handler.
diff --git a/community/meetings/ghm2013.mdwn b/community/meetings/ghm2013.mdwn
new file mode 100644
index 00000000..c12b6682
--- /dev/null
+++ b/community/meetings/ghm2013.mdwn
@@ -0,0 +1,23 @@
+[[!meta copyright="Copyright © 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
+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]]."]]"""]]
+
+[[!meta title="GNU Hackers Meeting, 2013, Paris"]]
+
+<http://www.gnu.org/ghm/2013/paris/>
+
+ * {{$thibault_hurd}}
+
+[[!ymlfront data="""
+
+thibault_hurd:
+
+ "presentation by Samuel Thibault: [*Recent developments in the Hurd*](http://www.gnu.org/ghm/2013/paris/) ([slides](http://www.gnu.org/ghm/2013/paris/slides/hurd--thibault--ghm-2013.pdf), [video](http://audio-video.gnu.org/video/ghm2013/Samuel_Thibault-Hurd_recent_developments_.webm))"
+
+"""]]
diff --git a/contributing.mdwn b/contributing.mdwn
index 67df9d55..75b99bbd 100644
--- a/contributing.mdwn
+++ b/contributing.mdwn
@@ -103,11 +103,11 @@ access to it from userland. exec would probably call it from `hurd/exec/exec.c`,
which exposes the partitions of the disk image, using parted, and
the parted-based storeio (`settrans -c foos1 /hurd/storeio -T typed
part:1:file:/home/samy/tmp/foo`). This would be libnetfs-based.
-* Write virtio drivers for KVM. Ideally they would be userland.
+* Write virtio drivers for KVM. Ideally they would be userland. That means getting documented about how virtio works, and implement it. The hurdish part is mostly about exposing the driver interface. The devnode translator can be used as a skeleton.
* Port valgrind. There is a whole
[[GSoC proposal|community/gsoc/project_ideas/valgrind ]] about this, but the
basic port could be small.
-* Use libz and libbz2 in exec. See `hurd/exec/unzip.c` etc., they should be replaced by mere calls to libraries, [[!GNU_Savannah_task 6990]]
+* Use libz and libbz2 in libstore. See `hurd/libstore/unzip.c` etc., they should be replaced by mere calls to libraries, [[!GNU_Savannah_task 6990]]
See also the discussions on [[open_issues/exec]].
* Add `/proc/$pid/maps`. `vminfo` already has this kind of information, it's a matter of making procfs do the same. [[!GNU_Savannah_bug 32770]]
diff --git a/faq/binary_compatibility.mdwn b/faq/binary_compatibility.mdwn
index 37050763..ba1ff22a 100644
--- a/faq/binary_compatibility.mdwn
+++ b/faq/binary_compatibility.mdwn
@@ -15,8 +15,8 @@ License|/fdl]]."]]"""]]
[[!tag open_issue_documentation]]
- <veganman> sothere's absolutelyno way,evenslowly to run i386 linuxcode
- under hurd/i386? Ihave a small app, commercial, which I have to get
+ <veganman> so there's absolutely no way, even slowly to run i386 linux code
+ under hurd/i386? I have a small app, commercial, which I have to get
running there
<veganman> no source
<braunr> no way
@@ -27,9 +27,9 @@ License|/fdl]]."]]"""]]
<veganman> so, no magic linux lxemu on windows?
<veganman> or linuxemu on plan9
<pinotree> nope
- <veganman> I remember somethingsilly, sonmone hadcompiled linux asauser
- applicationon plan9 and inserted his own binaries as
- acodeobject,toberunon plan9, for useon ibm hpc hatrdware
+ <veganman> I remember something silly, sonmone had compiled linux as a user
+ application on plan9 and inserted his own binaries as
+ a code object, to be run on plan9, for use on ibm hpc hardware
<veganman> it was ron minich
<veganman> 5e.iwp9.org/slides/linuxemu.pdf
<veganman> I think that was it
diff --git a/faq/df.mdwn b/faq/df.mdwn
deleted file mode 100644
index 8af6009a..00000000
--- a/faq/df.mdwn
+++ /dev/null
@@ -1,24 +0,0 @@
-[[!meta copyright="Copyright © 2007, 2008, 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
-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]]."]]"""]]
-
-[[!tag faq/running]]
-
-[[!meta title="Why df doesn't work?"]]
-
-There is no `/etc/mtab` (due to dynamic translator startup, its content is hard
-to define actually, see
-[[the mtab GSoC project idea|community/gsoc/project_ideas/mtab]]),
-so just running `df` will yield the following error.
-
- df: cannot read table of mounted file systems
-
-Pass `df` a path like `df /` or `df ./` to see the disk usage of that particular
-file system.
diff --git a/faq/libpthread_plugin.mdwn b/faq/libpthread_plugin.mdwn
new file mode 100644
index 00000000..bcbe9571
--- /dev/null
+++ b/faq/libpthread_plugin.mdwn
@@ -0,0 +1,21 @@
+[[!meta copyright="Copyright © 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
+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]]."]]"""]]
+
+[[!tag faq/open_issues]]
+
+[[!meta title="Getting Assertion `__pthread_threads' failed."]]
+
+Some applications don't link against libpthread, but load plugins which do link against libpthread. This means unexpectedly switch from mono-thread to multi-thread. This is not supported yet, thus the following error:
+
+ ./pthread/../sysdeps/generic/pt-mutex-timedlock.c:70: __pthread_mutex_timedlock_internal: Assertion `__pthread_threads' failed.
+
+This can be worked around by using
+
+export LD_PRELOAD=/lib/i386-gnu/libpthread.so.0.3
diff --git a/faq/so_many_years.mdwn b/faq/so_many_years.mdwn
new file mode 100644
index 00000000..8c5ce4a0
--- /dev/null
+++ b/faq/so_many_years.mdwn
@@ -0,0 +1,21 @@
+[[!meta copyright="Copyright © 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
+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]]."]]"""]]
+
+[[!tag faq/general faq/_important]]
+
+[[!meta title="How is it that the Hurd does not do foo and bar, after so many years of development?"]]
+
+
+Remember that what counts is years.people, not just years, so it
+can't be compared to e.g. Linux or BSD development so trivially. See
+[[how_many_developers|how many developers]] are working on the Hurd, it is
+actually impressive that so much has been done in the past couple of decades
+with so few people.
diff --git a/history.mdwn b/history.mdwn
index 67e56ba8..ecb09032 100644
--- a/history.mdwn
+++ b/history.mdwn
@@ -140,3 +140,4 @@ mailing lists.
* 2013: [Talk at
FOSDEM](https://fosdem.org/2013/schedule/event/hurd_microkernel/), [[Debian
GNU/Hurd 2013|news/2013-05-debian_gnu_hurd_2013]].
+ * [Talk at GHM in Paris](http://www.gnu.org/ghm/2013/paris/) ([video](http://www.irill.org/videos/GNU_Hackers_Meeting_2013/Samuel_Thibault-Hurd_recent_developments.webm))
diff --git a/hurd/running.mdwn b/hurd/running.mdwn
index 41855433..15ee25d9 100644
--- a/hurd/running.mdwn
+++ b/hurd/running.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2007, 2008, 2009, 2011, 2012 Free Software
+[[!meta copyright="Copyright © 2007, 2008, 2009, 2011, 2012, 2013 Free Software
Foundation, Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
@@ -17,6 +17,7 @@ There are several different ways to run a GNU/Hurd system:
* [[microkernel/mach/gnumach/ports/Xen]] - In Xen
* [[Live_CD]]
* [[QEMU]] - In QEMU
+* [[openstack]] - In openstack
* [[chroots|chroot]] need a couple of tricks to work properly.
* [[VirtualBox]] - In VirtualBox
* [[vmware]] (**non-free!**)
diff --git a/hurd/running/openstack.mdwn b/hurd/running/openstack.mdwn
new file mode 100644
index 00000000..af03583b
--- /dev/null
+++ b/hurd/running/openstack.mdwn
@@ -0,0 +1,14 @@
+[[!meta copyright="Copyright © 2005, 2006, 2007, 2008, 2009, 2010, 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
+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]]."]]"""]]
+
+One can tell openstack to avoid using virtio drivers, and use emulated hardware instead:
+
+ glance image-create --property hw_disk_bus=ide --property hw_cdrom_bus=ide --property hw_vif_model=rtl8139 --disk-format raw --container-format bare --name gnu-hurd --copy-from http://people.debian.org/~sthibault/hurd-i386/debian-hurd.img
diff --git a/hurd/subhurd.mdwn b/hurd/subhurd.mdwn
index 55bead37..55927fdd 100644
--- a/hurd/subhurd.mdwn
+++ b/hurd/subhurd.mdwn
@@ -102,6 +102,9 @@ it!
practice [that doesn't work at the
moment](http://savannah.gnu.org/bugs/?17341).)
+You can provide the subhurd with a network card by passing a `-f` option to
+`boot`.
+
Now the subhurd should boot just like a normal Hurd started directly from GRUB,
finally presenting a login prompt. The `boot` program serves as proxy for the
subhurd, so you can control it from the terminal where you issued the boot
diff --git a/hurd/translator/eth-filter.mdwn b/hurd/translator/eth-filter.mdwn
index 4f59b402..b5dc8f8f 100644
--- a/hurd/translator/eth-filter.mdwn
+++ b/hurd/translator/eth-filter.mdwn
@@ -8,7 +8,33 @@ 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]]."]]"""]]
-# IRC, freenode, #hurd, 2013-07-27
+`eth-filter` is a translator that implements a very simple stateless firewall.
+
+
+# Source
+
+[[source_repositories/incubator]], dde
+
+
+# Usage
+
+For instance, to drop any attempt to access port 22:
+
+ # settrans -c /dev/eth0f /hurd/eth-filter -i /dev/eth0 -r "not port 22"
+
+This creates a `/dev/eth0f` device, which is the filtered version of
+`/dev/eth0`. One can then use `/dev/eth0f` instead of `/dev/eth0`:
+
+ # settrans /servers/socket/2 /hurd/pfinet -i /dev/eth0f [...]
+
+..., or run `dhclient /dev/eth0f`, or similar.
+
+See also Zheng Da's [[user/zhengda/howto]].
+
+
+# Open Issues
+
+## IRC, freenode, #hurd, 2013-07-27
[[!tag open_issue_hurd]]
diff --git a/hurd/translator/netio.mdwn b/hurd/translator/netio.mdwn
index 429072d4..885b1cc0 100644
--- a/hurd/translator/netio.mdwn
+++ b/hurd/translator/netio.mdwn
@@ -11,9 +11,16 @@ License|/fdl]]."]]"""]]
`netio` is a translator designed for creating socket ports through the
filesystem.
-See also [[socketio]].
+This is supposed to be replaced by the better [[socketio]].
# Source
[[source_repositories/incubator]], netio/master
+
+
+# Usage:
+
+For example:
+
+ $ cat < ~/tmp/netio/tcp/ftp.gnu.org/21
diff --git a/hurd/translator/socketio.mdwn b/hurd/translator/socketio.mdwn
index 479d5749..de5cf252 100644
--- a/hurd/translator/socketio.mdwn
+++ b/hurd/translator/socketio.mdwn
@@ -11,10 +11,26 @@ License|/fdl]]."]]"""]]
`socketio` is a translator designed for creating socket ports through the
filesystem.
-See also [[netio]].
+This is supposed to replace [[netio]].
-# IRC, freenode, #hurd, 2013-06-30
+# Source
+
+[[source_repositories/incubator]], socketio/master
+
+
+# Usage:
+
+For example:
+
+ $ cat < ~/tmp/socketio/tcp/ftp.gnu.org/21
+
+
+# Open Issues
+
+## IRC, freenode, #hurd, 2013-06-30
+
+[[!tag open_issue_hurd]]
<youpi> http://lists.gnu.org/archive/html/bug-hurd/2003-05/msg00069.html
<youpi> this was supposed to be much better than our current netio
diff --git a/media_appearances.mdwn b/media_appearances.mdwn
index 3495a88e..3d1ae7c6 100644
--- a/media_appearances.mdwn
+++ b/media_appearances.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2010, 2011, 2012 Free Software Foundation,
+[[!meta copyright="Copyright © 2010, 2011, 2012, 2013 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
@@ -16,6 +16,17 @@ A lot of stuff is missing here.
[[!toc levels=2]]
+
+# 2013
+
+
+## August
+
+
+ * GNU Hackers Meeting in Paris: {{$community/meetings/ghm2013#thibault_hurd}}
+
+
+
# 2012
diff --git a/microkernel.mdwn b/microkernel.mdwn
index 5cad12ee..c7fc0995 100644
--- a/microkernel.mdwn
+++ b/microkernel.mdwn
@@ -12,6 +12,8 @@ License|/fdl]]."]]"""]]
A *microkernel* is one kind of a [[kernel]] implementation.
[[Liedtke]] explains in [On Microkernel Construction](http://l4ka.org/publications/paper.php?docid=642)
+(or from [TU Dresden](http://www.tud-os.org/papers_ps/jochen/Mikern.ps),
+or from [ACM](http://dl.acm.org/citation.cfm?id=224075))
that a microkernel attempts to minimize the mandatory part of the operating
system by providing the minimal number of [[mechanism]]s that
maximize the flexibility of implementation (by imposing minimal
diff --git a/microkernel/mach/gnumach/building.mdwn b/microkernel/mach/gnumach/building.mdwn
index 0f328bb7..8a23934b 100644
--- a/microkernel/mach/gnumach/building.mdwn
+++ b/microkernel/mach/gnumach/building.mdwn
@@ -63,7 +63,7 @@ You can now reboot your computer and enjoy the new kernel.
Building GNU Mach requires a C compiler, a _static_ 32 bit standard C library,
your favourite flavor of awk (gawk) and GNU make.
-First, create the configuartion files:
+First, create the configuration files:
$ cd gnumach
$ autoreconf --install
diff --git a/open_issues/exec.mdwn b/open_issues/exec.mdwn
index fe70123d..05deaa7a 100644
--- a/open_issues/exec.mdwn
+++ b/open_issues/exec.mdwn
@@ -21,6 +21,18 @@ License|/fdl]]."]]"""]]
<youpi> now a funny bug: if I disable gzip/bzip2 support from exec
<youpi> trying to run a zero-byte file hangs
+Justus: This doesn't seem to be an issue anymore (2013-09-08):
+
+ % touch empty
+ % chmod +x empty
+ % ./empty
+ zsh: exec format error: ./empty
+ % bash
+ $ ./empty
+ $
+
+Also I've never encountered a problem with apt.
+
## IRC, freenode, #hurd, 2013-08-01
@@ -68,3 +80,5 @@ License|/fdl]]."]]"""]]
---
May want to have a look at using BFD / libiberty/simpleobject.
+
+Justus: The BFD code has been removed from the exec server.
diff --git a/open_issues/gccgo.mdwn b/open_issues/gccgo.mdwn
index a3c0e1d1..0861d27f 100644
--- a/open_issues/gccgo.mdwn
+++ b/open_issues/gccgo.mdwn
@@ -102,6 +102,48 @@ Also, in `libgo/runtime/proc.c`:`runtime_newm`, `pthread_attr_setstacksize` is
used, which we also can't support yet, for the same reason.
+========================
+
+**gccgo manages to get compiled and pass a fair amount of its tests, however its library is failing all but one of its tests.**
+
+Following are the results of the passing suite between the libgo tests run on linux (x86) and the Hurd:
+
+# the Hurd:
+
+ Test Run By root on Fri Jul 12 17:56:44 UTC 2013
+ Native configuration is i686-unknown-gnu0.3
+
+ === libgo tests ===
+
+ Schedule of variations:
+ unix
+
+ ...
+
+ === libgo Summary ===
+
+ # of expected passes 1
+ # of unexpected failures 130
+ /root/gcc_new/gccbuild/./gcc/gccgo version 4.9.0 20130606 (experimental) (GCC)
+
+# Linux results:
+
+ Test Run By fotis on Τρι 02 Ιούλ 2013 09:20:20 μμ EEST
+ Native configuration is i686-pc-linux-gnu
+
+ === libgo tests ===
+
+ Schedule of variations:
+ unix
+
+ ...
+
+ === libgo Summary ===
+
+ # of expected passes 131
+ /home/fotis/Software/gcc_build/./gcc/gccgo version 4.9.0 20130702 (experimental) (GCC)
+
+
---
diff --git a/open_issues/gnumach_vm_object_resident_page_count.mdwn b/open_issues/gnumach_vm_object_resident_page_count.mdwn
index 5c1247b2..2ffe5753 100644
--- a/open_issues/gnumach_vm_object_resident_page_count.mdwn
+++ b/open_issues/gnumach_vm_object_resident_page_count.mdwn
@@ -46,3 +46,9 @@ License|/fdl]]."]]"""]]
<elmig> i dont know how to suggest deletion on the wiki
<braunr> don't
<braunr> i'll do it later
+
+
+## 2013-06-04
+
+resident_page_count it's now an int.
+The topic it's fixed.
diff --git a/open_issues/magic_translator_machtype.mdwn b/open_issues/magic_translator_machtype.mdwn
index 1c62b762..3ae16cf0 100644
--- a/open_issues/magic_translator_machtype.mdwn
+++ b/open_issues/magic_translator_machtype.mdwn
@@ -1,4 +1,5 @@
-[[!meta copyright="Copyright © 2008, 2010 Free Software Foundation, Inc."]]
+[[!meta copyright="Copyright © 2008, 2010, 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
@@ -22,3 +23,6 @@ License|/fdl]]."]]"""]]
tschwinge@clubber:~ $ l machtype
Segmentation fault
tschwinge@clubber:~ $ l mach<TAB>Connection to clubber.bddebian.com closed.
+
+Justus: This is most likely just the shell not handling SIGLOST, see
+[[!GNU_Savannah_bug 19479]].
diff --git a/open_issues/ssh.mdwn b/open_issues/ssh.mdwn
new file mode 100644
index 00000000..6d000b00
--- /dev/null
+++ b/open_issues/ssh.mdwn
@@ -0,0 +1,20 @@
+[[!meta copyright="Copyright © 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
+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]]."]]"""]]
+
+[[!tag open_issue_porting]]
+
+Ssh compression does not work at the server level for some reason:
+
+ Jul 2 18:06:08 debian sshd[405]: fatal: buffer_uncompress: inflate returned -3
+
+One has to disable compression in /etc/sshd_config:
+
+ Compression no
+
diff --git a/open_issues/translate_fd_or_port_to_file_name.mdwn b/open_issues/translate_fd_or_port_to_file_name.mdwn
index 0d6a460c..98fe0cfc 100644
--- a/open_issues/translate_fd_or_port_to_file_name.mdwn
+++ b/open_issues/translate_fd_or_port_to_file_name.mdwn
@@ -184,3 +184,9 @@ A related issue:
Also see email thread starting at [[!message-id
"20110714082216.GA8335@sceen.net"]].
+
+Justus: Once [[!message-id desc="these patches"
+"1375178364-19917-4-git-send-email-4winter@informatik.uni-hamburg.de"]] are
+merged, there will be a way to map from ports to file names, at least for
+libdiskfs and libnetfs, one would only have to make this information available
+somehow.
diff --git a/public_hurd_boxen.mdwn b/public_hurd_boxen.mdwn
index 4c7b3e24..b5ffcdc1 100644
--- a/public_hurd_boxen.mdwn
+++ b/public_hurd_boxen.mdwn
@@ -29,10 +29,10 @@ image|hurd/running/qemu]].
"[[bddebian]]","goober","Debian GNU/Hurd","?"
"[[bddebian]]","grubber","Debian GNU/Hurd","Celeron 2.2 GHz; 554 MiB","Xen domU on [[zenhost]]; for experimental stuff"
"[[bddebian]]","[[zenhost]]","Debian GNU/Linux","Celeron 2.2 GHz","Xen dom0 for several hosts"
-"[[sceen]]","darnassus","Debian GNU/Hurd","Core i5 3.1 GHz, 1.8 GiB","KVM guest on shattrath; public Hurd box; [web server](http://darnassus.sceen.net/)"
-"[[sceen]]","ironforge","Debian GNU/Hurd","Core i5 3.1 GHz, 1.8 GiB","KVM guest on shattrath; Debian buildd"
-"[[sceen]]","exodar","Debian GNU/Hurd","Core i5 3.1 GHz, 1.8 GiB","KVM guest on shattrath; Debian porterbox, all Debian Developers have access"
-"[[sceen]]","shattrath","Debian GNU/Linux","Core i5 3.1 GHz","KVM host"
+"[[sceen]]","darnassus","Debian GNU/Hurd","Xeon E5-1620 3.6 GHz, 1.8 GiB","KVM guest on dalaran; public Hurd box; [web server](http://darnassus.sceen.net/)"
+"[[sceen]]","ironforge","Debian GNU/Hurd","Xeon E5-1620 3.6 GHz, 1.8 GiB","KVM guest on dalaran; Debian buildd"
+"[[sceen]]","exodar","Debian GNU/Hurd","Xeon E5-1620 3.6 GHz, 1.8 GiB","KVM guest on dalaran; Debian porterbox, all Debian Developers have access"
+"[[sceen]]","dalaran","Debian GNU/Linux","Xeon E5-1620 3.6 GHz, 64 GiB ECC","KVM host"
"Debian","strauss","Debian GNU/Hurd","Sempron 2800+","all Debian Developers have access"
"[libav](http://www.libav.org/)","[x86_32-hurd-gcc-4.7](http://fate.libav.org/x86_32-hurd-gcc-4.7)","Debian GNU/Hurd","","libav instance of the [FATE Automated Test Environment](http://www.libav.org/fate.html)"
"""]]
diff --git a/public_hurd_boxen/installation/darnassus.mdwn b/public_hurd_boxen/installation/darnassus.mdwn
index 3beb2c87..8cb8f619 100644
--- a/public_hurd_boxen/installation/darnassus.mdwn
+++ b/public_hurd_boxen/installation/darnassus.mdwn
@@ -13,7 +13,7 @@ License|/fdl]]."]]"""]]
# Packages
- * apache2-mpm-worker
+ * apache2-mpm-prefork (used to be apache2-mpm-worker but changed because of some threading issues with CGI)
* ikiwiki libcgi-session-perl libtext-csv-perl libcgi-formbuilder-perl
libauthen-passphrase-perl libnet-openid-consumer-perl
@@ -27,15 +27,14 @@ License|/fdl]]."]]"""]]
* libyaml-perl libyaml-syck-perl (for ikiwiki's YAML field plugins)
- * gitweb
+ * gitweb highlight
- sudo ln -s ~hurd-web/hurd-web.git /var/cache/git/
+ sudo ln -s ~hurd-web/hurd-web.git /var/lib/git/
* git-daemon-sysvinit
Enable as per `/usr/share/doc/git-daemon-sysvinit/README.Debian`. Also set
- `GIT_DAEMON_OPTIONS=--user-path`, and `GIT_DAEMON_DIRECTORY='/var/cache/git
- /home'`. TODO: does not work if `ok_paths` is set, which it is by default.
+ `GIT_DAEMON_OPTIONS=--export-all`, and `GIT_DAEMON_DIRECTORY='/var/lib/git'`.
# `~hurd-web/`
diff --git a/source_repositories.mdwn b/source_repositories.mdwn
index 726748ed..b2849500 100644
--- a/source_repositories.mdwn
+++ b/source_repositories.mdwn
@@ -35,6 +35,7 @@ This page is meant to give some guidelines. Please use good sense or ask on
([[microkernel/viengoos/building]])
* hurd/web.git -- [[contributing/Web_pages]]
+Mirror for faster anonymous accesses : <http://darnassus.sceen.net/gitweb/?a=project_list;pf=savannah_mirror>
## Branches
@@ -213,25 +214,14 @@ branches, like an imaginary
# Git repositories on darnassus
[[darnassus|public hurd boxen]] is
-**meant to be**
[[configured|public_hurd_boxen/installation/darnassus]] in a way so that users
-can publish Git repositories from their home directories. The only thing to do
-is to put an empty `.git/git-daemon-export-ok` (cf. [*git daemon*'s manual
-page](http://www.kernel.org/pub/software/scm/git/docs/git-daemon.html)) into
-the repository, or just `git-daemon-export-ok` for
-[*bare*](http://www.kernel.org/pub/software/scm/git/docs/git-init.html)
-repositories.
-
-<!--
-
-For example, the [[contributing/web_pages]] repository is made available like
-this: `~hurd-web/hurd-web.git` is a bare repository; there is an empty
-`~hurd-web/hurd-web.git/git-daemon-export-ok` file. Users can clone the
-repository like this:
+can publish Git repositories in /var/lib/git. It is recommended to store the
+repositories in the home directory and create links in /var/lib/git since /home
+is much larger than the root file system. All repositories in /var/lib/git are
+automatically exported. A gitweb interface (that also provides git:// and
+http:// clone URLs) is available at <http://darnassus.sceen.net/gitweb/>.
- $ git clone git://darnassus.sceen.net/~hurd-web/hurd-web
--->
# Git repositories on flubber
diff --git a/user/NlightNFotis.txt b/user/NlightNFotis.txt
new file mode 100644
index 00000000..41b13f38
--- /dev/null
+++ b/user/NlightNFotis.txt
@@ -0,0 +1,96 @@
+[[!meta copyright="Copyright © 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
+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]]."]]"""]]
+
+Name: Fotis Koutoulakis
+Nickname: NlightNFotis
+Age: 21
+Country: Greece
+
+Contact:
+ - Email: fotis.koutoulakis@gmail.com
+ - Google+: goo.gl/9jeZi
+ - Website: http://www.fotiskoutoulakis.com
+ - IRC: NlightNFotis (#hurd, #archhurd) on freenode
+
+Projects:
+
+- Porting the GCC Go language frontend on the GNU/Hurd
+
+ - Weekly Reports
+ - Monday 17 - Wednesday 26
+ - I have managed to sent all the paperwork required by Google without meeting any obstacles. (Tax form and the School Identification)
+ - I have managed to sent all the paperwork required by the FSF for copyright assignment, which included copyright assignments for GLIBC, GCC, GNU Mach and the GNU Hurd. (Also have got the Full legal documents which I have signed and sent from the 20th of June, and am currently waiting for an acknowledgment).
+ - I have read plenty of documents on the Hurd.
+ - More detailed:
+ - I have read the FAQ available on the GNU Hurd website. (http://www.gnu.org/software/hurd/faq.html)
+ - I have read the Paper Towards a New Strategy of OS Design (http://www.gnu.org/software/hurd/hurd-paper.html)
+ - I have read Marcus Brinkmann's revisit (http://lists.gnu.org/archive/html/l4-hurd/2005-10/msg00651.html)
+ - I have also read Jonathan Shapiro's comments on that (http://lists.gnu.org/archive/html/l4-hurd/2005-10/msg00654.html)
+ - I have read the Critique (although I want to revisit it soon http://www.gnu.org/software/hurd/hurd/critique.html)
+ - I have read Marcus Brinkmann's presentation of the Hurd (http://www.gnu.org/software/hurd/hurd-talk.html)
+ - I have read the article "Examining the Legendary Hurd Kernel" on informit (http://www.informit.com/articles/printerfriendly.aspx?p=1180992)
+ - I have managed to read the Hurd User's Guide (http://www.gnu.org/software/hurd/users-guide/using_gnuhurd.html)
+ - I have read the articles Ghost's of Unix Past on lwn.net (http://lwn.net/Articles/411845/, http://lwn.net/Articles/412131/, http://lwn.net/Articles/414618/)
+ - I have read the Hurd Hacking Guide (http://www.gnu.org/software/hurd/hacking-guide/hhg.html)
+ - Apart from those I have read plenty other small documents available on the Hurd Website.
+
+ - I have read some documents on the GCC (need to read more).
+ - More detailed:
+ - Read a general document on GCC architecture in wikibooks (http://en.wikibooks.org/wiki/GNU_C_Compiler_Internals/GNU_C_Compiler_Architecture)
+ - Read some of the documents in The Getting Started page of the gcc wiki, including:
+ - The Basics: Contributing to GCC in 10 easy steps (have read and understood all of the steps required)
+ - I have read the blog posts about building a new GCC front end at this blog (http://blog.lxgcc.net/?page_id=116)
+ - I have seen (although feel I have to revisit) all the slides of the Essential Abstractions in GCC Workshop (http://www.cse.iitb.ac.in/grc/gcc-workshop-10/index.php?page=slides)
+ - I have read some papers on GCC (mostly by Diego Novillo) on the current status and the architecture of GCC. Revisiting them as we speak. They are located here (http://www.airs.com/dnovillo/Papers/#cgo2007)
+ - Have also read plenty of presentations on GCC Internals and architecture, as well as GCC from a user's standpoint. Will revisit them today or tomorrow (http://www.seketeli.org/dodji/talks/eigen-2010/gcc-eigen-2010.pdf, http://guerby.org/ftp/gcc-toulibre-20091216.pdf
+
+ - I have managed to setup a working environment.
+ - I am running the Hurd on a virtual machine. My setup is a Debian GNU/Linux physical box (host) and Debian GNU/Hurd (QEMU guest)
+ - It is running ok (performance wise). (KVM modules have been enabled, and QEMU-KVM is installed, processor is VT-x, VT-d enabled)
+ - I have also set up working repositories in Github for GCC, Hurd and Mach. They are available under my Github account here (https://github.com/NlightNFotis?tab=repositories)
+ - Those repositories are all cloned and working under both the Hurd and Linux. However, GIT under the Hurd is having some issues that I am currently investigating, that corrupt repositories (and seem fairly dangerous for the filesystem too)
+
+ - I also managed to read two books that I perceived as beneficial for my work. The first one was Operating Systems in Depth (http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001803.html) and the second one was Version Control with Git (http://shop.oreilly.com/product/9780596520137.do, Edit: I knew how to use git before reading this, but I read this book in order to leverage my knowledge seeing as I am about to work professionally with Git)
+
+ - My Plans for the rest of the week and the week to come:
+
+ - Finish reading the documentation for both GCC and the Hurd (will have done so until Friday. Maximum Saturday. It won't take more than that.)
+ - Start hacking on the projects source code.
+ - I also plan to (given that I find the time) continue reading some books to enhance both my skills and knowledge, with the next in my list being Expert C Programming: Deep C Secrets (http://www.amazon.com/Expert-Programming-Peter-van-Linden/dp/0131774298)
+
+ - Addressing the issue regarding my failure to attend the weekly IRC meeting:
+ - This is something that I am taking full responsibility for, and would like to apologize for to anyone affected.
+ - I would also like to apologize to my mentors for disappointing them with my lack of communication so early in the summer.
+ - However, I would like my mentors (and anyone else for that matter) know that I will do my *VERY* best to avoid situations like this in the future.
+ - From now on I will be available all day long (unless I am out of house) in the #Hurd channel in freenode under the usual nickname NlightNFotis. Just ping me if you would like to ask anything.
+ - I am pretty open to criticism and suggestions. If my mentors (or anyone else for that matter) find that I fall short in any aspect (such as that issue that arose) please communicate it with me upfront. I generally appreciate criticism and try get better based on it.
+ - I will also try to be more open regarding my progress. I will try to do mini reports on a daily basis on the #Hurd channel, and possibly also use my blog for more detailed reports on my progress.
+
+
+ - Thursday 27 - July 1 (not much progress unfortunately)
+ - Revisited some important Hurd and gcc documents (such as the critique, Marcus Brinkmann's presentation of the Hurd, and others)
+ - Started hacking on the code, attempting to build the GCC codebase on the Hurd, Debian x64 (host) and XUbuntu x86 (another guest) and have not met any success in any of them.
+ - My builds fail on each of them with linker errors. Fortunately, the errors are reproducible across the different platforms, and I have documented them here https://gist.github.com/NlightNFotis/5896188#file-build_results
+
+ - Next week schedule:
+ - I am trying to overcome the obstacles I am facing with building GCC. I am currently investigating the issue, and will report back as soon as I come up with a solution.
+
+ - July 2 - July 9
+ - Continued attempting to build GCC on the Hurd. Managed to get past the linker errors pinpointed at the last report.
+ - After getting past those errors, some other errors showed up. Fortunately they were tracked down with help from Hurd developers in the #hurd channel. The specific problem was that compilations seemed to completely freeze at some point. The reason this happened was that the Hurd image I was using wan't large enough for gcc to compile successfully (it was only 3GiB). I manually attempted to resize the qemu image, which was fairly easy to do so, however I had to employ several courses of action inside the VM in order to get it to recognize the extra disc space that was added.
+ - After dealing with this issue too, I re attempted the compilation phase but this time stopped with compilation errors. The compiler log can be found here: https://www.dropbox.com/s/u5nx5ykebdx4sk5/build_results.txt
+ - Having discussed that issue with my mentor Thomas Schwinge in the weekly meeting on July 8th I was told that there was a patch employed that was supposed to fix that issue. Seeing as in my case it was not so, it was suggested to me that I check the configuration and the state of my GCC repository inside the Hurd, make sure it's on the correct working branch, and that it had the latest commits from that branch pulled. Seeing as all the preconditions were met, I was also told to mount the Hurd image under my Linux host box, and get diff results for the Host and Vm repository of GCC. I have got 2 diffs, both of which don't have any relationship with the code that fails the build. For reference, my diff is here: https://www.dropbox.com/s/ilgc3skmhst7lpv/diffs_in_git.txt
+ - Even though there didn't seem to be any issue with the integrity of the GCC repository under the Hurd, I still decided to clear the working directory, and recheckout the branch. Having done so, the results are the same with the original compilation errors (indicating that there must be an issue with the code itself.
+
+ - Next week actions:
+ - I am attempting to fix the issues that I am facing now (the ones with init_context and fix_context failing the compilation)
+ - Meanwhile I want to attempt a compilation of GCC with the -w flag passed to make, so that warnings do not fail the compilation (the compilation fails because the -Werror option is passed to the compiler, and both init_context and fix_context produce a warning, that is elevated to an error due to that option) and see if it manages to build itself under the hurd and pass (at least some of its tests)
+
+