news/2012-q2 -> news/2012-q1-q2
[hurd-web.git] / news / 2012-q1-q2.mdwn
diff --git a/news/2012-q1-q2.mdwn b/news/2012-q1-q2.mdwn
new file mode 100644 (file)
index 0000000..174d014
--- /dev/null
@@ -0,0 +1,169 @@
+[[!meta copyright="Copyright © 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]]."]]"""]]
+
+<!-- Date when the news item is (to be) pulished (important for RSS feeds).
+Will be set by tschwinge when publishing.
+[[!meta date="YYYY-MM-DD HH:MM UTC"]]
+-->
+
+<!-- This is just a skeleton.  Use it to create a new QotH.  -->
+
+Two quarters of the Hurd, Q1 and Q2 of 2012: *GSoC*, *barrier of entry*, *core* and *porting*.
+[[!if test="included()" then="""[[!toggle id=full_news
+text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]"""
+else="
+[[!paste id=full_news]]"]]
+
+[[!cut id="full_news" text="""
+
+### GSoC
+
+The last two quarters Jeremie Koenig released the final [report](http://www.gnu.org/software/hurd/user/jkoenig/java/report.html)
+on his GSoC project Java on Hurd along with a summary of his changes
+and the
+[challenges](http://lists.gnu.org/archive/html/bug-hurd/2012-01/msg00062.html)
+he bested. In a similar track, Samuel Thibault
+[merged the slab branch](http://lists.gnu.org/archive/html/bug-hurd/2012-02/msg00010.html),
+finishing Maksym Planetas GSoC work on a better memory allocator.
+
+Also Pino Toscano improved the Hurd implementations
+of [nanosleep](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00130.html)
+[ptsname_r](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00122.html),
+[getlogin_r](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00121.html),
+[getgroups](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00120.html)
+and
+[sendto](http://lists.gnu.org/archive/html/bug-hurd/2012-06/msg00009.html),
+making it easier to port POSIX programs, and Samuel Thibault
+[added Thread Local support (TLS)](http://lists.gnu.org/archive/html/bug-hurd/2012-05/msg00046.html),
+further improving the standards conformance of the Hurd and paving the
+way for C++11x.
+
+### Barrier of Entry
+
+Samuel Thibault, Ludovic Courtès and Thomas Schwinge reduced the
+barrier of entry into hacking the Hurd.
+
+As part of this, Samuel prepared
+[dde in incubator](http://lists.gnu.org/archive/html/bug-hurd/2012-02/msg00037.html),
+making about half the Linux network drivers compile on the Hurd. Also
+he added the
+[netdde debian package and testing notes](http://lists.gnu.org/archive/html/bug-hurd/2012-02/msg00038.html).
+
+Ludovic added
+[a continuous testing framework](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00019.html)
+using a Nix-based GNU QEMU image. Thanks to his work, we now have
+[automatic tests](http://hydra.nixos.org/jobset/gnu/hurd-master)
+([background](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00104.html)).
+
+Thomas on the other hand
+[moved](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00063.html)
+the translators
+[cvsfs](http://git.savannah.gnu.org/cgit/hurd/incubator.git/log/?h=cvsfs/master)
+and
+[smbfs](http://git.savannah.gnu.org/cgit/hurd/incubator.git/log/?h=smbfs/master)
+into the incubator git repository, as well as
+[libfuse](http://git.savannah.gnu.org/cgit/hurd/incubator.git/log/?h=libfuse/master),
+reducing the barrier of entry to improving them, so integrating cvs
+and samba in the filesystem and using FUSE translators can be
+stabilized more easily. Also he
+[improved the Hurd build system](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00087.html),
+making it easier to get in: 
+
+    “running autoreconf is all you need”
+
+Additionally Roland McGrath
+[merged many libc changes](http://lists.gnu.org/archive/html/bug-hurd/2012-05/msg00033.html)
+for upstream inclusion, reducing the maintenance load for getting
+recent improvements of libc.
+
+### The Core of the Hurd
+
+Ludovic Courtes, Maksym Planeta, Samuel Thibault and Richard Braun
+took a dive into the core of the Hurd. Ludovic
+[fixed invalid port deallocation in `symlink'](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00013.html)
+and
+[made console-run resilient against missing /dev/console](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00002.html). Maksym
+[tested the performance of tmpfs](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00040.html),
+showing a speedup from 22s with ramfs and ext2fs to 16s with tmpfs for
+apt-get calls, showing the possible wins due to going deep. An obvious
+usecase for tmpfs are
+[faster Hurd LiveCDs](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00050.html). Samuel
+made it easier to dive in by
+[improving debugging in GNU Mach](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00032.html). The
+debugger is now aware of the difference between kernel space and user
+space. This should substantially reduce the development time for
+features in Mach by giving
+[nicer stack traces](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00047.html). And
+in the deepest core of the Mach, Richard improved memory mapping
+[with a red-black tree](http://lists.gnu.org/archive/html/bug-hurd/2012-04/msg00109.html),
+which should speed up memory access.
+
+### Porting
+
+As in the previous quarters, we also saw lots of ported packages,
+including Richards work on
+[libpcap](http://lists.gnu.org/archive/html/bug-hurd/2012-01/msg00059.html)
+which brought wireshark and
+[pcap_inject](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00000.html)
+for easier network testing,
+[libtool](http://lists.gnu.org/archive/html/bug-hurd/2012-02/msg00023.html)
+thanks to Samuel Thibault and Peter O'Gorman,
+[gnat](http://lists.gnu.org/archive/html/bug-hurd/2012-03/msg00060.html)
+by Svante Signell for Ada support (a language used in many
+mission-critical applications such as automotive and aerospace,
+offering features like strong typing, modularity, run-time checking
+and parallel processing), and
+[iconx](http://lists.gnu.org/archive/html/bug-hurd/2012-06/msg00004.html)
+thanks to Samuel Thibault, which fullfills a requirement of tests for
+many packages, among them glib - and allowed Svante Signell to port
+the literate programming language noweb and ifupdown. Also Thomas
+DiModica
+[merged](http://lists.gnu.org/archive/html/bug-hurd/2012-06/msg00018.html)
+the cthreads to pthreads patch and
+[added a branch for it](http://lists.gnu.org/archive/html/bug-hurd/2012-07/msg00087.html)
+to make it easier to work on getting Hurd to use the more current
+pthreads. For details, see Richards report about running
+[Hurd without dependency on cthreads](http://lists.gnu.org/archive/html/bug-hurd/2012-08/msg00062.html). 
+
+And now, as a final note, we want to share a story about real-life
+debugging with the Hurd; IRC, freenode, #hurd, 2012-03-02:
+
+    <youpi> yay GNU/Hurd  
+    <youpi> I have added i_translator check in e2fsck, it was missing  
+    <youpi> I had a volume that was keeping making ext2fs crash  
+    <youpi> with a reproductible scenario  
+    <youpi> could easily work out it was i_translator, then add a
+      check to e2fsck, run it, which indeed fixed, them, and voilà,
+      ext2fs was working again
+    <youpi> all that on the same machine with *no* system reboot  
+    <youpi> just ext2fs restart :)
+
+
+So if you want to experience enjoyable debugging of code deep in the core of your system,
+please [[get in contact|contact_us]] -- and maybe already grab the [[source
+code|source_repositories]].
+
+---
+
+The **GNU Hurd** is the GNU project's replacement for the Unix kernel.  It is a
+collection of servers that run on the Mach microkernel to implement file
+systems, network protocols, file access control, and other features that are
+implemented by the Unix kernel or similar kernels (such as Linux).  [[More
+detailed|hurd/documentation]].
+
+**GNU Mach** is the microkernel upon which a GNU Hurd system is based.  It
+provides an Inter Process Communication (IPC) mechanism that the Hurd uses to
+define interfaces for implementing in a distributed multi-server fashion the
+services a traditional operating system kernel provides.  [[More
+detailed|microkernel/mach/gnumach]].
+
+<!--see [[contributing/web_pages/news/writing_the_qoth]] for additional information on writing the QotH.-->
+
+"""]]