GNU Status Reports: October 2011

Copyright © 2011, 2012 Free Software Foundation, Inc.

     Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

GNU Status Reports: October 2011
********************************

This document collects status reports for GNU packages.

This is a revival of the GNU Status Reports from the historical GNU's Bulletins, http://www.gnu.org/bulletins.  The goal is to provide GNU-wide news and information from time to time, from as many packages as possible.

This report includes items for only a few of the hundreds of GNU packages; we hope more will be represented in future installments. http://www.gnu.org/manual lists all GNU packages, with links to online manuals and home pages.  All GNU packages can be accessed on the web via http://www.gnu.org/software/PKGNAME, as shown in the headings here.  For information on downloading releases, see http://www.gnu.org/software.

See also http://planet.gnu.org, which aggregates the individual GNU news items posted on Savannah (http://savannah.gnu.org).

See also the info-gnu@gnu.org mailing list, where announcements of new GNU releases are posted.  Subscribe or view the archives at http://lists.gnu.org/mailman/listinfo/info-gnu.

The aim of the present report is to be somewhat higher-level and more general than the others, although there is inevitably some overlap.

Questions, comments, and suggestions about this document in general are welcome; please email maintainers@gnu.org.  Bug reports and suggestions for specific packages should of course be addressed via their usual routes.

Finally, let's mention the FSCONS 2011 conference, taking place in Gothenburg, Sweden, November 11--13: http://fscons.org.

Health (http://www.gnu.org/software/health)
*******************************************

(Put first instead of in alphabetical order since it is a new and especially significant addition to GNU.)

From Luis Falcón: GNU Health is a free health and hospital information system with support for electronic medical records, hospital information systems, and health information systems.  Its goal is to contribute to the work of health professionals around the world to improve the lives of the underprivileged, providing a free system that optimizes health promotion and disease prevention.

The GNU Health Project has been chosen by the United Nations University, Institute of Global Health (UNU-IIGH).  This organization supports the use of free (as in freedom) software health care information system in developing countries, through capacity-building programs and technical consultancy to improve efficiency and quality of health care services.

This is an example of how free software can leverage resources to help developing countries.  Many thanks to Dr. Nurhizam Safie Mohd Satar who is leading the GNU Health integration project UNU-IIGH. This effort will increase the amount of physicians and health centers using free software, and we will all benefit with their valuable feedback.

Assistance of all sorts is greatly appreciated; please see our web pages for details.

Cflow (http://www.gnu.org/software/cflow)
*****************************************

From Sergey Poznyakoff: GNU cflow is a program to analyze C sources and produce both direct and inverted flow graphs, optionally with cross-references.  Version 1.4 is the latest release.  This is a stable version that contains a largely improved parser.  In particular, detection of recursive calls is sped up considerably. This release also allows a fine-grained control over symbol types and contains several bug fixes.

Chess (http://www.gnu.org/software/chess)
*****************************************

From Stuart Cracraft and Antonio Ceballos: GNU Chess plays the computer's side of a game of chess against a human, serving as a sparring partner to help improve human play levels, improve human ratings in competitive tournament play, prepare for a match, or just play chess while waiting for a game with a person.

Since full source code to GNU Chess is included, you can enhance the GNU Chess's playing and learn more about what goes on inside a computer chess program and use it for your personal computer chess research.

In April 2011, version 6 of GNU Chess was released.  Version 6 is based on Fabien Letouzey's Fruit 2.1 chess engine, a well-debugged program which has a strong searcher.

Standard external interfaces remain unchanged in 6.x for compatibility with 5.x (which is now deprecated).

In addition to the Chess Engine Communication Protocol, version 6 also supports the Universal Chess Interface (UCI).  This increases, dramatically, the number of graphical user interface front-ends GNU Chess can use.

The program can occasionally be found playing games with anyone who challenges it at the Free Internet Chess Server (FICS) under the nickname GNUChessSix.

On modern, affordable hardware, GNU Chess scores highly in standard chess rating tests (2500 ELO).  It is a strong tactician, which can translate to good positional play on fast enough hardware due to increasing depth of search.

If you improve GNU Chess or use it for research, please contact the Free Software Foundation to ensure that your improvements are considered for integration into the main line.

Meanwhile, enjoy a game of chess and computer chess programming.

Coreutils (http://www.gnu.org/software/coreutils)
*************************************************

From Pádraig Brady: Coreutils 8.13 was released in September.  A brief summary of additions:

  * split --filter to compress output etc.

  * md5sum --strict to exit with error on any checksum mismatch.

  * join --check now reports which line the disorder was on.

  * rm uses less memory for large directories.

  * shuf uses less memory when outputting a small subset.

  * date now parses iso-8601 'T' separated dates.

  * timeout --foreground to support interactive commands, and timeout now supports subsecond timeouts.

Directory (http://www.gnu.org/software/directory)
*************************************************

Although not the usual sort of GNU package, it's worth mentioning here that the Free Software Directory has been relaunched as a collaborative wiki-based project.  A general announce is at http://www.fsf.org/news/directory-relaunch, and more detailed information at http://www.fsf.org/blogs/directory/behind-the-scenes.

Volunteers to update the existing entries and add more programs are greatly needed.  Please see http://directory.fsf.org/wiki/FSD:Participate.

Emacs (http://www.gnu.org/software/emacs)
*****************************************

From Stefan Monnier: GNU Emacs has entered the pretest phase for its 24.1 release, which is aimed for the first half of 2012.  The features in this release will include:

  * packaging system that allows users to easily download extensions for Emacs (the default package archive is hosted by GNU, and maintained by the Emacs developers)---we welcome submissions of new packages;

  * support for displaying and editing bidirectional text, including right-to-left scripts such as Arabic and Hebrew;

  * native support for lexical scoping in Emacs Lisp;

  * improved support for Custom themes;

  * native support for TLS/SSL encryption;

  * improved integration with the Gnome desktop;

  * and upgrades to many other included modes and packages.

Fontutils (http://www.gnu.org/software/fontutils)
*************************************************

From Adam Dutko: I've been working through getting the code in CVS to build and am very close. I've also been investigating a migration to Automake and have made some progress in a different (uncommitted) branch.  I'm hoping to have the first release building before the end of October.

Gama (http://www.gnu.org/software/gama)
***************************************

From Vaclav Petras: GNU Gama is a project dedicated to adjustment of geodetic networks; the latest release is 1.11 (http://ftpmirror.gnu.org/gama) and the development code is available from Savannah (http://savannah.gnu.org/p/gama).

The latest version contains several documentation and source code improvements as well as improved UTF-8 support.

The program gama-local provides adjustment in a local coordinate system.  Input data are stored in an XML file or an SQLite database.  Adjustment results are represented as formatted plain text or an XML file.

The program gama-g3 partially supports adjustment in a global coordinate system (adjustment model on ellipsoid).  Input and output data are in an XML file.

User visible strings and generated reports have English, French, Spanish, Finnish, Dutch, Catalan, Russian, Ukrainian, Hungarian and Czech translation.

We are planing several new features and improvements:

  * wider use of SQLite database as native format

  * support reading data recorded by some total stations

  * graphical user interface

  * better C++ API

You can ask for help or discuss new features on the info-gama mailing list (http://lists.gnu.org/mailman/listinfo/info-gama), and bug reports should go to the bug-gama list (http://lists.gnu.org/mailman/listinfo/bug-gama).

Gawk (http://www.gnu.org/software/gawk)
***************************************

From Arnold Robbins: Gawk 4.0.0 was released at the end of June, 2011. There are many new features, including a gawk debugger.  I hope to do the first patch release before the end of the year and then development of more new stuff towards gawk 4.1 should pick up speed.

GDBM (http://www.gnu.org/software/gdbm)
***************************************

From Sergey Poznyakoff: After a long period of development, a new version of GDBM, 1.9.1, was released this year.  It contains significant improvements over its predecessor.  The most important user-visible changes are the use of memory mapping to speed up I/O operations and improvements in ndbm compatibility code.  In particular, the latter fixes a long-standing bug which prevented GDBM from being used with some MTAs, most notably Sendmail and Postfix. Another series of changes addressed compatibility with the POSIX specification.

This version introduces a number of improvements to the GDBM interface.  Changes to gdbm_setopt interface are particularly noteworthy as they allow the programmer to fine-tune the database and retrieve various database parameters.

GDBM 1.9.1 includes an interactive tool for manipulating GDBM database files: the testgdbm program allows users to view and update existing databases, export them to the portable flat file format and to create new database files.

GnuPG (http://www.gnu.org/software/gnupg)
*****************************************

From Werner Koch: The current stable versions of GnuPG are 1.4.11 and 2.0.18.

We are working towards a 2.1 version; a beta of that version is already used by Kontact Touch (Kmail for smartphones).  Progress is somewhat slow these days due to a lack of funding.

A major design change in 2.1 is the replacement of the secring.gpg secret key storage by the protocol neutral secret key database maintained by the gpg-agent daemon.  The benefit of this is an architectural cleanup and easier key maintenance.  We were also able to remove large amounts of code which were needed to maintain secring.gpg.

Support for Elliptic Curve cryptography as specified by an OpenPGP WG approved I-D has been added to GPG.

We are working on a new database format to store the OpenPGP keys.  This will help to keep meta data on keys (e.g., time of last refresh from a keyserver) and greatly improve lookup speeds on large keyrings.

The new G13 tool allows the use of OpenPGP keys for disk encryption.  It is designed to support several backends.  Due to a lack of time we only support EncFS for now; in the next steps we plan to support Geli and DM-crypt.

The CRL/OCSP and LDAP daemon Dirmngr is now a proper part of GnuPG. Work is underway to move all key server helper programs into Dirmngr.

GnuPG is using GNU Pth to implement co-routines.  Due to the now widespread availability of POSIX threads and the very rare use of GNU Pth by other projects, we decided to drop Pth in favor of nPth, a simple new library to replace Pth using the systems' native threads implementation.

GNURadio (http://www.gnu.org/software/gnuradio)
***********************************************

From Tom Rondeau: GNU Radio has been evolving quickly throughout the past few years.  Leadership in the project changed in 2010 from Eric Blossom to Tom Rondeau.  One part of this change is a renewed energy in developing the community and increasing the number of contributors to the project.  GNU Radio hosted its first conference on September 14--16 at the University of Pennsylvania.  While due to space constraints, we had an initial limit of forty attendees, but request was so great that we ended up accommodating fifty-five people from academia, industry, and government. The interest and user base of GNU Radio is strong and growing, and we are excited to see the various ways the project is being used.

A large part of the discussion at the conference was how to contribute to the project, and fostering this environment will continue to be one of my primary short-term objectives. All of the conference material will be made available on the main GNU Radio website (http://www.gnu.org/software/gnuradio) as well as my personal web site (http://gnuradio.squarespace.com).

In the current efforts of the development, we are actively integrating new features that will enable GNU Radio in ways that were never possible before.  Two major features in GNU Radio include a new vectorization library called VOLK (for Vector-Optimized Library of Kernels) and stream tagging.

VOLK provides a way to access the vector (i.e., SIMD) instructions of general purpose processors. While there are other ways of doing this, a goal of GNU Radio is cross-platform support and ease of programming and implementing new signal processing features.  Until VOLK, adding SIMD code to GNU Radio had been a difficult, assembly-driven process. Instead, VOLK introduces the concept of a vector kernel to perform common mathematical functions in a cross-platform library.  Over the next year, we will be improving many of the low-level signal processing blocks by using VOLK kernels instead of generic C++ code. As we make these changes, we expect to see a dramatic increase in the performance and processing capabilities of GNU Radio.  A side benefit of this is the exposure of an extensible vector library for anyone to use and build upon inside GNU Radio---or out, as VOLK is not designed solely for GNU Radio use and builds as a separate library.

The other major additional capability introduced into GNU Radio is know as stream tags, which provide a method of annotating samples with tags of information that can be passed downstream in a GNU Radio graph. This feature adds an interface so that control, data, metadata, and other information may be passed through a communication system.  With these tags, we will be able to realize more advanced digital modems that require data like logic control and timing information.

Version 3.6 of GNU Radio, to be released later this year, will include support for VOLK and stream tags.  Furthermore, we are working to migrate all over-the-air examples that use the Ettus Research, LLC hardware to the new UHD (Ettus' Universal Hardware Driver).  This move helps us begin to standardize the hardware API layer that will be required to support various hardware platforms from a single software radio core.

GSEGrafix (http://www.gnu.org/software/gsegrafix)
*************************************************

From Spencer Buckner: GSEGrafix is a GNOME application which uses an anti-aliased GNOME canvas for creating scientific and engineering plots. The program is written in C and reads ASCII parameter files and data files. The parameter files contain keywords and corresponding arguments for specifying plot parameters (such as data file names, data file formats, plot type, plot style, axis type, axis labels, etc). Eleven example plots, corresponding examples of Octave code or C code for creating the data files, and corresponding parameter files are included. The program can be run from a terminal window or from a graphical user interface.

The current version, gsegrafix-1.0.6, was uploaded on 10 September 2011.  This version adds the keywords background_color and background_image.  The keyword background_color enables the background color of the plot window to be specified as either ``white'', the default, or ``black''; if black is chosen, the plot box, tick marks, axis labels, title, and text are white. The keyword background_image enables a background image, such as a map, to be displayed in the plot box. The image can be scaled in four different ways by specifying one of the parameter values: center, fill, scale, or zoom.

Gtypist (http://www.gnu.org/software/gtypist)
*********************************************

From Tim Marston: we have added support for UTF-8, available in the current test release at http://alpha.gnu.org/gnu/gtypist.  This affects all user input (from the keyboard) and all output (to the terminal)!  In particular, we need people who have their machines set up use other locales to check that gtypist accepts keyboard input correctly and displays the right stuff to a UTF-8 terminal.  Please help test.

We've also added a new set of typing courses for the Colemak keyboard layout. If anyone uses Colemak and fancies trying out the lessons, we'd be grateful to hear if there are any problems.

Other changes include a Spanish manual and tracking of personal best scores.

Mailutils (http://www.gnu.org/software/mailutils)
*************************************************

From Sergey Poznyakoff: GNU Mailutils is heading for the next major release.  A major rewrite of the I/O subsystem has been finished, considerably improving performance.  Several other parts of the framework have also undergone a revision.  In general, the code base has reached a stable state and most of the work now is concentrated on writing the documentation.

Maverik (http://www.gnu.org/software/maverik)
*********************************************

From Hartmut Rosch: I have been working on GNU Maverik quite a long time and I have taken the oppertunity to become the new maintainer. Maverik 6.4 works fine on 32-bit machines but has several bugs rendering the bitmaps on a 64-bit system.  This has been fixed.  In addition to that the Makefile has got a distclean target to delete all shared libraries in the lib directory and all executables.  The new version, Maverik 6.5, will be released quite soon.

RCS (http://www.gnu.org/software/rcs)
*************************************

From Thien-Thi Nguyen: GNU RCS 5.8 was recently released (the first release in many years), with some small bugfixes, portability enhancements, and new Texinfo documentation.  This author is the new maintainer.

Sqltutor (http://www.gnu.org/software/sqltutor)
***********************************************

From Ales Cepek: GNU Sqltutor is a web based interactive tutorial for Structured Query Language (SQL).

You can try Sqltutor online at http://sqltutor.fsv.cvut.cz/cgi-bin/sqltutor.  First, a tutorial must be selected from the opening page and started. A series of tutorial questions follows in a simple dialog.  When finished, Sqltutor displays final evaluation with the review of all questions asked during the session together with user's SQL queries and correct answers for wrong solutions.

Sqltutor is implemented on the top of a relational database system PostgreSQL.  The program is a CGI script that selects SQL questions from its database, checks the answers and evaluates the final score. The second part of the project is a free collection of SQL questions and answers representing SQL tutorials.  Sqltutor enables the running of one or more tutorials in different languages from a single database.

The C++ code and database schema are stable; what is most needed is to add a set of tutorial questions and answers in good English, and we need help from native speaker with some knowledge of SQL.  Currently we actively use only a tutorial in the Czech language.  Please write bug-sqltutor@gnu.org if you'd like to get involved.

Tar (http://www.gnu.org/software/tar)
*************************************

From Sergey Poznyakoff: Tar version 1.26 was released this year.  It is mostly a bug-fixing release.  The most important changes:

  * A bug in the --verify option, introduced in version 1.24, is now fixed.

  * Fixed storing the long sparse file names in PAX archives.

  * Work around POSIX incompatibilities on FreeBSD, NetBSD and Tru64.

  * Fix bug with --one-file-system --listed-incremental used together.

Wdiff (http://www.gnu.org/software/wdiff)
*****************************************

From Martin von Gagern: GNU wdiff is a front end to diff for comparing files on a word per word basis.  A word is anything between whitespace.  This is useful for comparing two texts in which a few words have been changed and for which paragraphs have been refilled. It works by creating two temporary files, one word per line, and then executes diff on these files.  It collects the diff output and uses it to produce a nicer display of word differences between the original files.

The latest release was numbered 1.0.0, reflecting the fact that the code has been around for a long time and is therefore considered quite mature.  So consider this change not so much as a radical program improvement of some kind, but rather a fix to the fact that some people tend to take a major version number of zero as an indication of immature software.  Although the NEWS entry for this release is a bit longer than for some past releases, in terms of features and bug fixes it might as well have been called 0.6.6.

So what has changed?  As user noticeable changes we have updated translations for Dutch, French, Danish and Slovenian, as well as a completely new translation file for Ukrainian, thanks to Yuri Chornoivan.  The code will now give more useful results when the diff program either cannot be executed or fails for some reason.

Build time improvements include an update of our gnulib imports as well as an extension of the test suite.  On the source code level, there was some cleaning up, slightly improved portability with respect to file descriptor duplication, and a unification of coding style accomplished through GNU Indent.

Xboard (http://www.gnu.org/software/xboard)
*******************************************

From Arun Persaud: XBoard is a graphical user interface to chess in all its major forms (and many others).  Over the last year XBoard development has seen three new releases (4.5.x) fixing lots of bugs and including many new features and some redesign of the GUI.

An ongoing effort is to merge the code of XBoard and its so-called ``Winboard'' companion back into one code base.  we are now closer than ever to completely this task. To this end the effort to update the GUI and to move to GTK has been restarted.  Nevertheless, we can always need more help!  If you are interested in this and are willing to help, please contact us at xboard-devel@gnu.org.  You can of course also contact us to discuss other issues/ideas too.

Xnee (http://www.gnu.org/software/xnee)
***************************************

From Henrik Sandklef: Xnee is a suite of programs that can record, replay and distribute user actions under the X11 environment.  Think of it as a robot that can imitate the job you just did.  The latest version is 3.10, released in August 2011.

Xorriso (http://www.gnu.org/software/xorriso)
*********************************************

From Thomas Schmitt: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. Optionally it supports hard links, ACLs, xattr, and MD5 checksums.  xorriso writes its images to CD, DVD, Blu-ray or to filesystem objects; conversely, xorriso is able to copy file objects from ISO 9660 filesystems to disk.

In its role as feature-enhanced mkisofs emulator, it serves underneath the GRUB2 script grub-mkrescue and it produces the installation images of Debian GNU/Linux.

GNU xorriso is widely portable, although its capability to burn CD, DVD, and Blu-ray is currently restricted to GNU/Linux, FreeBSD, and Solaris. Porting this capability to other operating systems is mainly a matter of knowing how to pass SCSI/MMC command transactions through the operating system kernel to burner drives attached via SCSI, (P)ATA, SATA, USB, or other busses.

Development is currently focused on improving xorriso behavior in rather unusual situations and, of course, on hunting down any bugs. Recent improvements are:

  * Recording and restoring ACLs and extattr on FreeBSD.

  * More rugged with non-persistent device names in modern GNU/Linux distributions.

  * Making media readable which were left damaged after burner failures.

  * Production of Jigdo files which can be put together to form a bootable ISO 9660 image, e.g. for installing Debian GNU/Linux.

  * ISOLINUX bootable images with a MBR partition table that bears the mountable ISO at a partition with non-zero start address.

Contact point: bug-xorriso@gnu.org.