Development
FreeNAS 0.7: powerful and not dead
Recently, the FreeNAS developers have released version 0.7 of their FreeBSD-based operating system for network-attached storage (NAS). This is a major release, which introduces support for the ZFS file system among other things. Around the same time, fears were expressed about the future of FreeNAS as a BSD-based NAS but, in the end, a solution has been found.
FreeNAS 0.7 is based on FreeBSD 7.2 and includes a lot of file sharing protocols. This way it can talk to all major operating systems: GNU/Linux, the BSDs, Windows, and Mac OS X. FreeNAS also supports several types of media streaming protocols and can act like an iTunes server. In addition, it supports iSCSI and different levels of software RAID. All of this can be managed from the web interface so users don't have to know the FreeBSD commands under the hood.
One of the advantages of FreeNAS is that it has very low system requirements, as it needs only 128 MB of RAM. This makes it attractive to blow the dust off an old Pentium 2 or 3 PC, put a couple of hard drives in it and make it a NAS. Of course, for high performance the machine still needs enough RAM and CPU horsepower. All of this makes FreeNAS a popular operating system for central storage and media streaming at home.
Installation
FreeNAS has downloads for 32-bit and 64-bit hardware, in a live version and an installable version. The installable version is for installation on a USB stick, hard drive, or Compact Flash card, while the live version doesn't touch the hard drive of the system but can save its configuration to a USB stick or floppy disk.
After the installer has booted, it shows the user a simple menu in the console to set up the basics. The user can assign network interfaces, set IP addresses, reset the password for the web interface or reset all settings to the factory defaults, open a shell, reboot or shutdown the system, and install or upgrade FreeNAS to a hard drive or USB stick. Most of that is just for troubleshooting, because the bulk of the settings are available in the web interface.
Configuration
![[FreeNAS web interface]](https://static.lwn.net/images/freenas-system-sm.png)
Once FreeNAS has been assigned an IP address, the user can surf to the web interface in a browser and log in with the default user name and password. The first thing FreeNAS displays is some system information, such as the CPU and memory usage, the load averages and the disk space usage. The latter will show "No disk configured" first, but available disks can be added easily in the "Disks -> Management" menu by clicking on the plus icon, choosing the disk, and entering some optional settings. After this, don't forget to click on "Apply changes" on the disk management page. The next steps are formatting and choosing a mount point.
When choosing a file system for a hard drive in the "Disks -> Format"
menu, FreeNAS recommends the BSD file system UFS. Other supported file
systems are FAT32, NTFS, Ext2, or Ext3, but the web interface expressly
warns that they can result in unpredictable results. While the web
interface doesn't warn against using ZFS (which has its own menu item, because
it is not only a file system but also a logical volume manager), users have
to keep in mind that FreeNAS 0.7 is still based on FreeBSD 7.2 which calls
ZFS support "experimental
".
The goal of a NAS if of course sharing the data with users, and FreeNAS has a lot of services at its disposal to do this: FTP, TFTP, NFS, Samba, AFP (for Mac OS X users), HTTP, rsync (ideal for making backups on the NAS) and Unison (for file synchronization). It can also share a disk as an iSCSI target to another computer in the local network. But FreeNAS can also act as a streaming media server for clients that are compatible with UPnP (Universal Plug and Play) or iTunes, or it can run BitTorrent to download torrents directly on the NAS.
![[FreeNAS traffic display]](https://static.lwn.net/images/freenas-traffic-sm.png)
In general, the web interface is intuitive enough to do a lot of things without having to look up the documentation. At the same time, it is really powerful, with even the possibility to edit arbitrary files, run arbitrary commands, tune some FreeBSD kernel parameters with sysctl or add variables to rc.conf. It also shows a lot of status information. Unfortunately, documentation such as the FreeNAS Setup and User Guide is still lagging behind.
Death of a FreeBSD descendant?
During the last few months, the future of the FreeNAS project seemed in peril. The project's core developer Volker Theile announced in September that he would stop developing FreeNAS and switch his work to a new project, called CoreNAS, which would be based on Debian GNU/Linux. Some reasons he listed for this switch are:
- The Debian installer is more customizable than the hand-written FreeNAS install scripts.
- Wake-on-LAN for waking up the NAS automatically works in Linux.
- Linux has a working sensor framework to check the temperature and fan speeds.
- The system can be updated with the Debian package manager.
- Linux has better driver support.
According to Volker, the current architecture of FreeNAS is not flexible enough to add the new features users have been asking him for:
His eye fell quickly on the Debian infrastructure, which seemed to reduce the work to get a new FreeNAS to a minimum. A big plus of Linux is that it supports more new hardware than FreeBSD.
But of course this left FreeNAS users with a problem: what about the ZFS support that has been added in FreeNAS 0.7? A lot of the new users were attracted solely by this feature, which didn't seem to have a future in CoreNAS. Would they have to migrate their freshly installed data to another file system in the next release? Volker wrote that his FreeNAS successor would maybe have ZFS over FUSE, but the performance would of course not be the same. So the only real option users of ZFS on FreeNAS seemed to have was to migrate to an OpenSolaris-based NAS operating system such as EON or Nexenta Core Platform. However, these don't have the intuitive web interface that FreeNAS has (NexentaStor, the commercial and proprietary variant of Nexenta Core Platform, has one, and a 4 TB developer license is free as in beer).
Rumors of FreeNAS' death greatly exaggerated
But then in the beginning of December, FreeNAS founder Olivier Cochard-Labbé appeared deus ex machina. He agreed with Volker that a full rewrite of the FreeNAS base is needed, and he clarified that this will happen along two different paths. On the one hand, Volker will develop his Linux-based CoreNAS idea in a new project, OpenMediaVault (the website is empty at the moment). On the other hand, the company iXsystems will take on FreeNAS development and rewrite it. As part of this, Olivier will work on upgrading it to the FreeBSD 8.0 code base, which will introduce production-ready ZFS support.
Matt Olander, the Chief Technology Officer at iXsystems and also a member of the FreeBSD and PC-BSD projects, officially joined the FreeNAS project with some explanation on the forum:
Matt added that iXsystems will start digging through the forums and search some low hanging fruit to implement in the first future release of FreeNAS, an upgrade to FreeBSD 8.
So, in the end, a crisis has been averted and, with luck, everyone will be happy. The users that have been attracted to FreeNAS because of ZFS can keep using it and will get an update. In addition, they get commercial backing by iXsystems. The users that have been asking for features such as Wake-on-LAN, a sensor framework, and more hardware support get their rewrite to Linux, done by Volker in his spare time. Let's hope that FreeNAS and OpenMediaVault keep working together to share their efforts.
The Free Firewire Audio Drivers reach version 2.0
The FFADO (Free FireWire Audio Drivers) project supports the connection of FireWire-based audio devices to Linux systems:
![[FFADO]](https://static.lwn.net/images/ns/FFADOlogo.png)
The About FFADO document describes the wide goals of the project:
The online FFADO Manual and FAQ are somewhat out of date, the documentation recommends visiting the wiki for the most recent information. FFADO's roots can be traced to this paper [PDF] entitled FireWire (Pro-)Audio for Linux which was presented at the 2007 Linux Audio Conference by Pieter Palmers.
Digging through the documentation reveals some of the FFADO features including:
- Supports FireWire audio interfaces, MIDI devices, control surfaces and more.
- The Device List and Usage By Device documents show many supported devices.
- Works together with the JACK audio connection kit and the Ardour multi-track audio workstation.
- Requires the Linux kernel version 2.6.21 or later.
- Uses the raw1394 kernel module.
- Supports up to four devices per IEEE-1394 controller.
Version 2.0 of FFADO was announced on December 19, 2009, this version of the software has been in the release candidate state for over a year with FFADO 2.0 release candidate 2 arriving on May 17, 2009 and FFADO 2.0 release candidate 1 arriving on November 23, 2008.
From the release announcement:
The announcement also hints at what's to come in upcoming FFADO releases:
Through its relatively short history, FFADO seems to be evolving, becoming more generic and including support for an ever-growing list of FireWire devices. FFADO will allow Linux users to tap into a wide range of useful devices, increasing the functionality of Linux-powered audio workstations. Congratulations go out to the developers for their hard work.
System Applications
Audio Projects
ALSA 1.0.22 released
Version 1.0.22 of ALSA has been announced. "The changes are listed in this URL: http://www.alsa-project.org/main/index.php/Changes_v1.0.2..."
Rivendell 1.6.0 released
Version 1.6.0 of Rivendell, a radio station automation system, has been announced. "Changes: New RLM Plug-in. A new plug-in for the Liquid Compass Internet encoder has been added. Cart Notes. Added the ability to enter free-form text for each cart in the Library. This text can then be displayed in a 'help bubble' when floating the mouse cursor over the cart's entry in the Library cart list. Bugfixes. See the ChangeLog for details. Database Update.."
Database Software
MySQL Community Server 5.0.89 has been released
Version 5.0.89 of MySQL Community Server has been announced. "This Community release shares the version number with its MySQL Enterprise Server counterpart. Please note this is the last release of 5.0 before it exits active maintenance."
MySQL 5.5.0-m2 has been released
Version 5.5.0 of the MySQL DBMS has been announced. "The "-m2" suffix tells this is the second milestone according to our "milestone" release model, also called "Betony". You can read more about the release model and the planned milestones at http://forge.mysql.com/wiki/Development_Cycle The new features in this release are of beta quality. As with any other pre-production release, caution should be taken when installing on production level systems or systems with critical data."
Hot Standby to be included in PostgreSQL 8.5alpha3
PostgreSQL 8.5alpha3 will gain the Hot Standby capability. "Today, after long last, Simon Riggs has committed Hot Standby to the Postgres CVS repository: http://archives.postgresql.org/pgsql-committers/2009-12/m... Thus, Hot Standby (aka "Allow read only connections during recovery") will be included in the soon-to-come alpha3 release of PostgreSQL-8.5." See the PostgreSQL 8.5alpha3 announcement for more information. (Thanks to Michael Banck).
PostgreSQL Weekly News
The December 20, 2009 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.
Networking Tools
libnetfilter_conntrack 0.0.101 released
Version 0.0.101 of libnetfilter_conntrack has been announced. "libnetfilter_conntrack is a userspace library providing a programming interface (API) to the in-kernel connection tracking state table. This library requires a linux kernel >= 2.6.18. This release includes a one fix and several cleanups from Hannes Eder."
Virtualization Software
VirtualBox 3.1.2 released
Version 3.1.2 of VirtualBox has been announced. "Today Sun released VirtualBox 3.1.2, a maintenance release of VirtualBox 3.1 which improves stability and fixes regressions."
Web Site Development
Midgard2 9.09.1 released
Version 9.09.1 of the Midgard2 web development platform has been announced. "Main changes from 9.09.0 release: * New connection routines (#1475) * New MidgardQueryBuilder signals (#1486, #1487) * Configuration supports remote host's port (#1248) * MgdSchema files compatibility fix (#1503) * Storage related fixes (#1533, #1543) * Fixed crashes when running Midgard with Apache (#1520) * Fixed D-Bus path issue (#1552)".
P3D visualization package
The P3D visualization package has been launched. It is: "A Python library that generates processing.js code for 3D rendering and visualization including a pure python algorithm for computing iso- surfaces from VTK files. The generated 3D objects can rotated in the browser. Requires a browser with <canvas> support, jquery and processing.js. This is implemented in modules/p3d.py and works with any python web framework including web2py, Django and Pylons."
web2py 1.74.3 released
Version 1.74.3 of the web2py web framework has been announced. "New features: - better support for legacy databases. - easier upgrades - plugins and components system - support for GAE *IN* operator - all fields now have default validators - support for virtual computed fields - distributed transactions support extended to mysql, firebird and postgresql - always backward compatible".
Miscellaneous
GZRBOT 0.1 released
Version 0.1 of GZRBOT has been announced. "I want to release GZRBOT to the world. This is a rename of the CMNDBOT bot, since this name matches the one of GOZERBOT the best and thats what this bot is best described .. GOZERBOT on the Google Application Engine."
Desktop Applications
Audio Applications
jack_capture V0.9.36 and Ceres V0.48 announced
Version 0.9.36 of jack_capture and version 0.48 of Ceres of have been announced, they include various enhancements. "jack_capture is a program for recording soundfiles with jack. Its default operation is to capture whatever sound is going out to your speakers into a file, but it can do a number of other operations as well."
Desktop Environments
GNOME 2.28.2 released
Version 2.28.2 of the GNOME desktop has been announced. "This is the last update to GNOME 2.28. It contains many fixes for important bugs that directly affect our users, documentation updates and also a large number of updated translations. Many thanks to all the contributors who worked hard on delivering those changes in time. We hope it will help people feel better in their daily use of computers!"
GNOME Software Announcements
The following new GNOME software has been announced this week:- atk 1.29.4 (bug fix)
- AT-SPI2 0.1.4 (new features and bug fixes)
- Brasero 2.29.4 (bug fixes and translation work)
- Empathy 2.29.4 (new features, bug fixes and translation work)
- Evince 2.29.4 (new features, bug fixes and translation work)
- Eye of GNOME 2.28.2 (bug fixes and translation work)
- GCalctool 5.29.4 (new features, bug fixes and translation work)
- GDM2 2.28.2 (bug fixes and documentation work)
- GLib 2.23.1 (new features, bug fixes and translation work)
- GNOME Games 2.28.2 (new features, bug fixes, documentation and translation work)
- GNOME Games 2.29.4 (new features, bug fixes and translation work)
- gnome-keyring 2.29.4 (new features, bug fixes and translation work)
- GTK+ 2.19.2 (new features, bug fixes and translation work)
- libgweather 2.29.4 (new features, bug fixes and translation work)
- libgnome-keyring 2.29.4 (initial release)
- librep 0.90.4 (bug fixes and documentation work)
- Rygel 0.4.8 (bug fixes)
- mousetweaks 2.29.4 (translation work)
- Nautilus 2.29.1 (change in focus)
- Nautilus-Actions 2.29.2 (new features and bug fixes)
- Orca 2.29.4 (bug fixes and translation work)
- PyGobject 2.21.0 (new features and bug fixes)
- rep-gtk 0.90.1 (new features)
- Sawfish 1.6.0 (new features, bug fixes and code cleanup)
- tracker 0.7.12 (new features, bug fixes and documentation work)
- tracker 0.7.13 (new features and bug fixes)
- Tumblefile 1.2 (new features and translation work)
- Vala 0.7.9 (new features and bug fixes)
Custom Transitioning Backgrounds In KDE3 (Linux Journal)
Linux Journal's Ross Larson presents a tutorial on making a KDE3 background slideshow. "My recent article about transitioning slide show backgrounds in GNOME garnered quite a bit of attention, so here's my first reminder of how to do the same thing in other desktop environments. This one will show you how to create a custom slide show backgrounds in KDE3."
KDE Software Announcements
The following new KDE software has been announced this week:- KDE SC 4.4 Beta 2 (unspecified)
- Kipi-plugins 1.0.0 (unspecified)
- KPrayertime4 4.0 (unspecified)
- KTorrent 4.0beta1 and 3.3.2 (new features and bug fixes)
- pyRad 0.2 (unspecified)
- satyr 0.3 (unspecified)
Xorg Software Announcements
The following new Xorg software has been announced this week:- viewres 1.0.2 (bug fixes and documentation work)
- xbiff 1.0.2 (bug fixes, code cleanup and documentation work)
- xcalc 1.0.3 (bug fixes and code cleanup)
- xeyes 1.1.0 (bug fixes, code cleanup and documentation work)
- xorg-server 1.7.99.2 (new features, bug fixes and documentation work)
- xpyb 1.2 (bug fixes and documentation work)
Encryption Software
GnuPG 2.0.14 released
Version 2.0.14 of GnuPG has been announced. "We are pleased to announce the availability of a new stable GnuPG-2 release: Version 2.0.14. The GNU Privacy Guard (GnuPG) is GNU's tool for secure communication and data storage. It can be used to encrypt data, create digital signatures, help authenticating using Secure Shell and to provide a framework for public key cryptography."
Interoperability
Wine 1.1.35 announced
Version 1.1.35 of Wine has been announced. Changes include: "- Support for OLE transacted storage. - Better certificate checking on secure connections. - More progress on the 16-bit separation. - Left 4 Dead 2 DRM really supported now. - MSI performance improvements. - 64-bit fixes in debugger support. - Various bug fixes."
Mail Clients
Sylpheed 3.0beta4 (development) released
Version 3.0beta4 of the Sylpheed mail client has been announced with the following changes: "# The folder icons were renewed. # The setup dialog on the first run became user-friendly. # 'Last 7 days' was added to the quick search options. # The number of matched messages is displayed at the side of quick search now. # Description is displayed on the quick search entry when it does not have focus. # Always show warning dialog when SSL certificate is expired. # The menu item to request disposition notification was added to the compose window..."
Music Applications
FluidSynth 1.1.1 released
Version 1.1 of FluidSynth, a software synthesizer based on the SoundFont 2 standard, has been announced. "This is primarily a bug fix release to 1.1.0, but also includes a couple new API additions. Upgrade from 1.1.0 is highly recommended, as there were many regressions in that version, especially in regards to QSynth compatibility."
MusE 1.0 released
Version 1.0 of MusE, a music sequencer, has been announced. "This is not the beginning, nor the end, but it marks the culmination of 10 years of feature packed and bug ridden development towards the goal of making a good platform for creating music on the Linux platform".
Virtual MIDI Piano Keyboard 0.3.1 released
Version 0.3.1 of Virtual MIDI Piano Keyboard has been announced, it adds a number of new capabilities and some new translations. "Virtual MIDI Piano Keyboard is a MIDI events generator and receiver. It doesn't produce any sound by itself, but can be used to drive a MIDI synthesizer (either hardware or software, internal or external). You can use the computer's keyboard to play MIDI notes, and also the mouse. You can use the Virtual MIDI Piano Keyboard to display the played MIDI notes from another instrument or MIDI file player."
Office Applications
Roundup release 1.4.11 announced
Version 1.4.11 of the Roundup issue tracker has been announced. "I'm proud to release version 1.4.11 of Roundup which fixes a number bugs and closes a potential security hole. ALL tracker maintainers MUST read the upgrading documentation to make sure the hole is fixed in their tracker."
Office Suites
OpenOffice.org announces "end-of-life" for version 2.x
Version 2.x of the OpenOffice.org productivity suite has reached the "end-of-life" status, version 3.2 is soon to arrive. "With each new release, users are strongly encouraged to upgrade, to benefit from new features, bug fixes and security improvements. After a new major release, the community supports legacy releases for a period of time to help users with upgrading and migrating. With version 3.x being available for more than 15 months now, the Community has decided it is time to cease maintaining the 2.x software. As a consequence, OpenOffice.org 2.4.3 will be the last release of the legacy 2.x series and no subsequent bugfix or security releases will be made available."
Digital Photography
digiKam 1.0.0 is released
Version 1.0.0 of the digiKam photo management application has been released. Many new features including a new "First Run Assistant", a batch queue manager, and better multi-language support have been added. Lots of bugs have been squished as well. We recently reviewed one of the digiKam 1.0 betas.
Video Applications
Moonlight 2 released with a new patent covenant
Miguel de Icaza has announced the availability of Moonlight 2, which is said to be a feature superset of Microsoft's Silverlight 2. There is also an expanded patent covenant (text seemingly unavailable at this time): "The new patent covenant ensures that other third party distributions can distribute Moonlight without their users fearing of getting sued over patent infringement by Microsoft. There is one important difference between the version of Moonlight that will be available from Novell and the version that you will get from your distribution: the version obtained from Novell will have access to licensed media codecs." From this LinuxPlanet article, it seems that this covenant does not cover Mono. (Thanks to Paul Wise).
Languages and Tools
Caml
Caml Weekly News
The December 22, 2009 edition of the Caml Weekly News is out with new articles about the Caml language.
Perl
Parrot 1.9.0 released
Version 1.9.0 of Parrot has been announced. "On behalf of the Parrot team, I'm proud to announce Parrot 1.9.0 "Blue-fronted Amazon". Parrot, http://parrot.org/, is a virtual machine aimed at running dynamic languages."
Perl 5.11.3 now available
Version 5.11.3 of Perl has been announced. "This is the fourth DEVELOPMENT release in the 5.11.x series leading to a stable release of Perl 5.12.0. You can find a list of high-profile changes in this release in the file "perl5113delta.pod" inside the distribution. Perl 5.11.3 is, hopefully, the last release of Perl 5.11.x before code freeze for Perl 5.12.0. At that point, we will only make changes which fix regressions from previous released versions of Perl or which resolve issues we believe would make a stable release of Perl 5.12.0 inadvisable."
Rakudo Perl 6 Development Release #24 announced
Development Release #24 of Rakudo Perl 6, an implementation of Perl 6 on the Parrot Virtual Machine, has been announced. "Due to the continued rapid pace of Rakudo development and the frequent addition of new Perl 6 features and bugfixes, we recommend building Rakudo from the latest source, available from the main repository at github."
PHP
PHP 5.2.12 released
Version 5.2.12 of PHP has been announced. "The PHP development team would like to announce the immediate availability of PHP 5.2.12. This release focuses on improving the stability of the PHP 5.2.x branch with over 60 bug fixes, some of which are security related. All users of PHP 5.2 are encouraged to upgrade to this release."
Python
PyBindGen 0.13 released
Version 0.13 of PyBindGen has been announced. "PyBindGen is a Python module that is geared to generating C/C++ code that binds a C/C++ library for Python. It does so without extensive use of either C++ templates or C pre-processor macros. It has modular handling of C/C++ types, and can be easily extended with Python plugins. The generated code is almost as clean as what a human programmer would write."
pylint 0.19 / astng 0.19.2 released
Versions 0.19 of pylint and 0.19.2 of astng have been announced. "This is a "community" release, including the work we've done during the pylint bug day and patches mostly from James Lingard and Vincent Ferotin. Many thanks to James Lingard which provided two long waited features: * check of function call arguments * check string interpolation consistency".
Debuggers
GDB 7.0.1 released
Version 7.0.1 of GDB, the GNU Debugger, has been announced. "GDB 7.0.1 is a minor corrective release."
Version Control
Bazaar 2.0.3 and 2.1.0b4 released
Version 2.0.3 and 2.1.0b4 of the bzr version control system have been announced. "The third release of Bazaar 2.0 (2.0.3) has a small handful of bugfixes. As expected, this has no internal or external compatibility changes versus 2.0.2 (or 2.0.0). The fourth beta release in the 2.1 series brings with it a significant number of bugfixes (~20)."
Git 1.6.5.7 released
Version 1.6.5.7 of the Git distributed version control system has been announced. "Nothing spectacular to see here, but as I was tagging 1.6.6-rc3 today, I wanted to push out fixes accumulated on the maintenance branch in a tagged release. Everything in this release is also in 1.6.6-rc3."
Miscellaneous
Checker 1.0 released
Version 1.0 of Checker has been announced. "I'm pleased to announce the first release of Checker. This is a cross-platform, pluggable tool for comparing the configuration of a machine with a known configuration stored in text files in a source control system all written in Python."
Page editor: Forrest Cook
Next page:
Announcements>>