The NetBSD Foundation Quarterly Report: January - March 2005

Quarterly Status Report

NetBSD is an actively developed operating system. With fifty four
different system architectures in total and binary support of over 48
architectures in our last official release (NetBSD 2.0), our widely
portable Packages Collection “pkgsrc” and large userbase
there is a lot going
on within the project. In order to allow our users to follow the most
important changes over the last few months, we provide a brief summary
in these official status reports on a regular basis. These status
reports are suitable for reproduction and publication in part or in
whole as long as the source is clearly indicated.

Administrative

The department of application engineering at Intel has donated two Xscale
boards (IOP321, IOP315) to a NetBSD developer. The boards will be used for
maintenance and development of the NetBSD/ARM port, as well as enhancing and
completing the support for Thumb code on NetBSD. Furthermore, the boards will
also serve for testing and developing the GCC compiler used by the NetBSD
operating system.

The NetBSD Project is grateful for the donation and would like to
encourage similar donations. Information on supporting the NetBSD
project via money or hardware can be found at
http://www.NetBSD.org/contrib/.

James Chacon of the NetBSD Release Engineering team announced that, in
keeping with NetBSD's policy of maintaining only the current (2.0) and
most recent (1.6) release branches, the release of NetBSD 2.0 marks
the end-of-life for NetBSD 1.5. This means that the netbsd-1-5 branch
will no longer be actively maintained.

There will be no more pullups to the branch (even for security
issues). There will be no security advisories made for 1.5. And the
1.5 releases on ftp.NetBSD.org have been moved to
/pub/NetBSD/NetBSD-archive.

The NetBSD Foundation held its annual meeting, during which the
developers discussed, among other things, how NetBSD progressed over
the last year and what is planned for the coming year. The full
report is available online at
http://www.NetBSD.org/foundation/reports/2004.html.

At the end of January, the NetBSD Project opened an online store
selling various products, including shirts, sweatshirts, a mug, wall
clock, mousepad, logo magnets, and tote bags. The items currently
available have a higher than usual price tag as 100% of the benefits
go to the NetBSD Foundation and the store was initially conceptualized
to maximize profits.

Realizing that the advocacy these items represent are valuable in and of
itself, and not wanting to deprive our users of the possibility to purchase
more affordable items, the NetBSD Project is currently evaluating the
possibility of allowing for a dual pricing scheme -- the basic
“Fan” category and the “Sponsor” category, which
allows users to maximize their dollar/product donation. More items will be
added as designs are created.

Shortly after NetBSD 2.0 with its extensive list of new features was
released, Newsforge ran an article entitled “Understanding NetBSD
2.0's new technology”, which included an interview with a number of
NetBSD developers. Several weeks after this article, the author
Federico Biancuzzi has published his follow-up interview.

As noted by Richard Rauch, March 21st 2005 marked the 12th birthday of
the NetBSD Operating System, one of the oldest actively maintained,
freely-available operating systems. The first commits were made to
the NetBSD source code repository on March 21, 1993, and the first
release of the NetBSD Operating System, NetBSD 0.8, was announced on
USENET shortly thereafter.

The NetBSD Project was represented by developers and other volunteers
at a number of conferences and tradeshows during the first quarter of
2005. Patiently the following people invested a lot of their personal
time, money and resources to tell attendants about NetBSD, to explain
(again and again) the difference between NetBSD and Linux or NetBSD
and the other BSDs, sold CDs and other merchandise and in general
deserve thanks for helping the NetBSD Project:

pkgsrc

At the end of January 2005, there were 5331 packages in the NetBSD Packages
Collection, up from 5266 the previous month, a rise of 65 with many notable
updates as well. The Package of the Month award went to
devel/monotone as well as
net/ntop.
monotone is a distributed version control system, that
provides the ability to work completely offline and the use of cryptography to
mark concrete versions as trusted or not. ntop is an
excellent utility for showing network traffic via a network browser (not
included) to show network traffic information and get a dump of the network
status.

Julio Merino committed a new “alternatives framework” after
much discussion in January. The alternatives system is a framework
that allows multiple packages providing similar functionality to be
installed concurrently (by removing files with common names), and then
using a utility to set up those common names with symlinks to the
preferred program.

At the end of February 2005, there were 5377 packages in the NetBSD
Packages Collection, up from 5331 the previous month, a rise of 47
with many notable updates as well. The Package of the Month award
went to math/R and
mail/mhonarc, nominated by
Hubert Feyrer and Matthias Scheler respectively.

After a two week long freeze on the pkgsrc repository, the NetBSD
Packages Team cut the pkgsrc-2005Q1 branch, obsoleting pkgsrc-2004Q4
as the currently maintained and stable pkgsrc branch. Among many
other things, this new branch includes support for multiple digest
algorithms and the alternatives framework. Many thanks go to the
pkgsrc release engineering team, who have done a great jobs performing
security pullups and maintaining the stable branches.

Bulk builds for the many supported operating systems and architectures
are currently running, and binary packages will be uploaded to the ftp
sites as soon as they complete. Hubert Feyrer already made available
the binary packages for NetBSD/i386 at
ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc-2005Q1/; other, slower
architectures will follow.

Over the last few months, the “pkg_select” tool, which is
currently maintained by a non-developer has undergone a significant number of
continuous improvements, incorporating the feedback provided on the tech-pkg
mailing list. pkg_select is a curses based interface to the pkgsrc framework
and allows you to browse pkgsrc and gather various informations about
packages, like available version, installed version, comment and homepage. A
simple paging system lets you read information files. You can browse both
installed and uninstalled packages, as well as dependencies list and perform
various administrative tasks to them. pkg_select can handle either source or
binary installations when pkgsrc is installed on the local system, or binary
only when using the pkgsrc-over-ftp feature.

Since February, it has been available in pkgsrc-wip/pkg_select and was
imported into pkgsrc as pkgtools/pkg_select just before the release
of this report.

After last year's great success with pkgsrcCon '04, the second round
was quickly planned. pkgsrcCon '05 is the second instantiation of the
technical conference for people working on the NetBSD Packages
Collection (pkgsrc), focusing on existing technologies, research
projects, and works-in-progress in pkgsrc infrastructure.

Jesse Off has announced that he has integrated support for the TS-7200 into the
NetBSD/evbarm port over the Christmas
holidays. The TS-7200 is a low-cost mass-produced PC/104 embedded single board
computer intended as a general purpose core for real embedded applications.
More information can be found at http://www.embeddedARM.com/~joff/.

Only days after Apple announced the new Mac Mini, people had NetBSD already
running on it. Matt Thomas was the first to post the
dmesg output, and Bill Squier recently provided some more
detailed steps on getting NetBSD onto the Mac Mini.

Chuck Silvers recently fixed the famous sleep-sleeps-forever bug in -current. A
pullup to the 2.x branch will be requested after some additional testing. See
the commit
message and corresponding problem
report for details.

A lot of people have been talking about Xen recently, and true to its
multi-platform nature, NetBSD was of course ported to Xen early on. In March,
the NetBSD Foundation published a press release reporting on the benefits of
the NetBSD/xen port, initially committed
by Christian Limpach as previously reported. Since then, much progress has been made, and
the NetBSD Project is now using NetBSD/xen internally. The press release with
further details is available at http://www.NetBSD.org/foundation/press/xen.html.

Manuel Bouyer has merged the “bouyer-xen2” branch into
NetBSD-current. This means that support for Xen 2.0 (both in privileged and
unprivileged mode) will be part of NetBSD 3.0. See Manuel's email to the
port-xen mailing list for details.

Security

Martti Kuparinen announced in February that he upgraded IPFilter to the latest
version (4.1.5) on NetBSD-current. You must recompile kernel and the ipf tools
to use the new version. See Martti's email to
the current-users mailing list for more details.

Emmanuel Dreyfus has been working on integrating NAT Traversal and
replaced the KAME based racoon with the feature-enhanced
“ipsec-tools”
version in NetBSD. Thanks to this, NetBSD can now be setup to replace
Cisco 3000 VPN concentrators, while Cisco VPN clients can still be
used, talking to NetBSD instead.

There are many more changes that come with the ipsec-tools, including
dead peer detection, privilege separation, IKE mode config, IKE and
ESP fragmentation, configurable path to certificate authority, and
hook scripts. See Emmanuel's mail for a more complete list at
http://mail-index.NetBSD.org/current-users/2005/02/19/0013.html.

NetBSD has adopted Pluggable Authentication Modules (PAM). The PAM
framework is a system of libraries that perform authentication tasks
for services and applications. Applications that use the PAM API may
have their authentication behavior configured by the system
administrator through the use of the service's PAM configuration file.
These applications can therefore leverage new authentication schemes
without requiring modification of the application. PAM also allows
system applications such as passwd(1) to interact with new
authentication schemes transparently.

PAM is widely used in the Unix world and supported by other operating
systems such as Solaris, Linux, FreeBSD, and Mac OS X. NetBSD uses
the OpenPAM implementation of PAM, which is also used by FreeBSD.

NetBSD 3.0 will be the first release of NetBSD to ship with PAM
support.

Jonathan Stone committed the patches from Kentaro A. Kurahone to add support for
TCP Selective Acknowledgement Options (SACK), meaning that NetBSD 3.0 will
ship with TCP/SACK enabled. More information about TCP/SACK can be found at
http://www.icir.org/floyd/sacks.html and in RFCs 2018/2883.

In February, the results
of a MySQL benchmark started lots of discussion among the different
tested operating systems. As usual, the NetBSD developer community did not
just engage in chest-thumping, but actually sat down and thought about the
results and how to improve performance, moving the discussion from the
netbsd-advocacy to the tech-kern mailing list.