A weekly opinion column and a summary of events from the distribution world
DistroWatch Weekly, Issue 286, 19 January 2009
Welcome to this year's third issue of DistroWatch Weekly! In this issue we take a look at Arch Linux, the minimal Linux distribution that packs a big punch. In the news section, openSUSE puts out a call for build developers and opens their feature tracker to the community, Fedora updates its artwork guidelines for Fedora 11 'Leonidas', Gentopia closes its doors, and Android Fanatic releases a Debian installer for Google's mobile device. Also in this issue, Ubuntu comments on the reasons behind the unavailability of restricted software in the distribution, while Singapore airlines rolls out Red Hat Linux to every one of its seats. Finally, we include a link to an article comparing three of the most popular mini distributions - Damn Small Linux, Puppy Linux and TinyMe. Happy reading!
Listen to the Podcast edition of this week's DistroWatch Weekly in OGG (15MB) and MP3 (12MB) formats Join us at irc.freenode.net #distrowatch
Arch Linux in review
When writing a review, I always try and view the distribution in the light of what it is expected to do - as claimed by the creators. Each Linux distribution is unique and they all have different goals. Some try to do and be everything, while others are very niche. Some want to include binary drivers and proprietary codecs by default, while others go out of their way to make a stand against such things. It makes sense that you cannot judge them all by the same criteria. For this reason I tend to look harder at distributions which advertise their ability to do everything out of the box, because that's a big call. Users are the same. Some want a distribution to do everything for them, to include every binary driver and be able to play anything they can throw at it. Others are happy to create, tweak and configure the system themselves. This diversity is a great thing, because it helps to build our community and push it forward.
If I could express the perfect everyday Linux distribution for me, it would be something with the ease and stability of Debian with the power and flexibility of Gentoo, combined with the convenience of binaries and the latest packages and technology. There's no doubt that Debian is a very stable distribution and its binary package management is probably the best around, but the packages in stable are just too old for a flashy new desktop. While most distributions let you re-compile packages as you see fit, Gentoo is a completely source based distribution. This means that you compile all the programs yourself with the help of their package manager, Portage. Compiling everything from source means Gentoo is extremely flexible as you can customise each and every package yourself. Yes, this includes architectural optimisations, but more importantly it means dependencies. If you don't want support for some hardware (Bluetooth for example) or particular libraries (such as GTK+ or Qt) then you can tell your system to never include these if they are optional. The result is a very fast, completely customised system, but due to the required compile time it does take a rather long time to get there. A Linux distribution which is extremely minimal, but lets the user build on top of that base would be perfect, for me. I do not want a Linux distribution to do everything for me out of the box, I want to control my system and set things up myself. If only such a distribution existed!
Enter Arch Linux. According to the project's website, Arch Linux (pronounced "ahrch", as in "archer") is an independently developed "lightweight and flexible Linux distribution that tries to Keep It Simple... Development is focused on a balance of simplicity, elegance, code-correctness and bleeding edge software... Its lightweight and simple design makes it easy to extend and mold into whatever kind of system you're building." The distro currently offers packages for i686 and x86_64 architectures - yes, i686, which means Arch Linux will not run on older i386, i486 and i586 hardware. Although most systems in use these days would be compatible, it means that your processor needs to be an Intel Pentium Pro, AMD Athlon, VIA C3 or above. Their official repositories (called "core" and "extra") are smaller than many other major distributions, but they have a very active community which creates additional packages (released in the "community" repository). There is also a "testing" repository for upcoming releases. Arch Linux has a rolling-release package model meaning there are no distinctly separate versions, just snapshots in time of the package trees. This means that the security and feature updates of packages, as well as new major versions, are all included in the same tree. A single install of Arch Linux can be forever updated in the same "version" without doing an "upgrade" as with many other distributions.
Is Arch Linux for you? Well, this particular distribution is targeted at "competent GNU/Linux users," or at least those willing to learn. If you're looking to give Arch Linux a shot, be prepared to do lots of reading and trawling through the forums and Wiki. Arch Linux doesn't automatically set things up for you - you have to do it yourself - so start learning how to be patient as things may not work the way you expect them to! There is an official install guide and beginners guide which will help get you started. In my short time of using Arch Linux (about 2 months) I have found the community very friendly and helpful.
The default installation provides a base "no frills" install only. This means your system should boot directly to a terminal login. No X Window and no GUI. From here you can install the software you want. To get this base system, Arch Linux provides two different installation media images; one for USB memory sticks and the usual ISO for a CD. There are then only two types of installation methods available; either the core install (which includes all the base packages needed to get the minimal system on the CD) or via FTP. As Arch Linux is a "rolling release" system, the FTP method makes sense as you will download the latest packages as you install. Apart from this, there is no difference in the resulting system when installing via the two methods. I chose to perform an FTP install.
There is no question that the installer for Arch Linux is very basic. The install environment does indeed support Logical Volume Management (LVM) and software RAID devices; however, the installer has no ability to configure these and must be done on another console first. Likewise, other options, such as tweaking your file systems (i.e. setting the journal mode and labels, etc) must be done manually. The installer itself is an ncurses-based Bash script and automates the six main functions to perform a complete install. This process consists of setting up the network (if required), configuring your hard drives, setting up a mirror to download packages and refreshing the package database (if using the FTP install method), selecting and installing the base packages, configuring the system and finally, installing the bootloader (GRUB or LILO).
The script provides the option to manually configure your partitions, or it can do it for you. While many distributions create only one partition for the whole of root, the default scheme here includes separate partitions for root, /boot and /home. This is good to see! The installer also recommends allowing a script to automatically detect and configure your hardware, but you can specify all these yourself if you prefer. It will also ask what support you require in your initramfs (initial RAM disk - the mini environment loaded by the boot loader which prepares your system), such as booting from LVM and software RAID devices, or even NFS shares and USB devices. While many Linux distributions include everything in an initramfs to accommodate all users, with Arch Linux you can easily customise it to specifically suit your system. This shows the power and flexibility of this distribution.
Next, you must manually edit the configuration files for your system. While these will have been automatically populated, the installer gives you the option to tweak the system and set other important information, such as the hostname. One of the things I really like about Arch Linux is that all the main system configuration is kept in one simple file, /etc/rc.conf. Here you tell the system what modules to load, what services to start, what locale and keymap to use, set the time zone, clock and the system hostname, configure networking and more. The file is well commented and easy to understand. Now that really is keeping it simple! By default Arch Linux only automatically starts the base services for you, such as the logger, networking and cron. The rest is left up to you. Any other services that are installed must be added to the 'DAEMONS' list in rc.conf for them to automatically start on boot. You can also tell services to start in the background by adding an at sign to the name (i.e. @network) or disable a service with an exclamation mark (i.e. !network). The order in which services are executed relates to their position in this list (excluding any dependencies). I like this way of doing things. When it comes to installing the bootloader, the installer will automatically add the entries to boot Arch Linux. However, if you have other distributions you will need to add these manually. That's it! Time to boot into the new Arch Linux system.
Arch Linux uses a BSD-style boot system which consists of three boot levels; init, multi (or single if booting to single mode) and local. It does not use the "symlinks and numbers" method of SysV to manage services (as is widely used by most Linux distributions), but rather loads rules specified in the /etc/rc.d/functions file. This init system is very easy to understand and manage. Upon a successful initial boot of the system you should arrive at a standard terminal logon. Under VirtualBox, this system took 9 seconds to boot and used just over 10 MB of memory. Pretty neat. Most desktop users will want X Window and a graphical interface, as well as the ability to remotely connect to the box, but first there are other things to configure. I installed an OpenSSH server, but, by default, Arch Linux does not allow connections to the machine from other boxes on the network. I had to edit the /etc/hosts.allow file and add a rule for SSH, which I did with sshd: ALL. This then allowed outside connections into my SSH service.
Because I was logging in as root, I wanted to create my own user. I did this by running the adduser command. Next I installed the sudo package so that my user could run commands as root. This was as simple as editing the /etc/sudoers file to allow all users in the wheel group to run all commands. Then I added my user to the wheel group with gpasswd -a chris wheel and logged out of the root account. Now I was able to log in as my user and perform root commands via sudo. By default, my account was only a member of the "users" group, so as I added more functionality to Arch Linux I also had to add my user to the respective groups. For example, to play sounds, a user needs to be a member of the "audio" group and to use 3D it must be in the "video" group.
Because Arch Linux is not a fork of any other distribution (although founder Judd Vinet did take inspiration from CRUX), they have their own independently developed package management system called Pacman. It is a lightweight, simple, yet powerful package manager. It allows you to perform the usual commands to install, remove and manage packages, but also has the ability to use both official and custom compiled packages. This is part of the ports-style ABS (Arch Build System) and is a powerful feature which lets you create an even more customised system to suit your needs. Not only can you easily re-compile any official package, but also any of the community packages available in AUR (Arch User-community Repository). The ABS method also makes it very easy to build your own packages by creating a simple build script and then managing it like any other package as part of the wider Linux system. This provides the perfect mix between binary and source. While you can manually build these packages from source, there are a few tools (similar to Gentoo's Portage) that make it easier. One such package is called Yaourt (Yet AnOther User Repository Tool). To see how all this works under Arch Linux, I decided to build this package and try it. First of all, I installed the required build tools and 'lftp' (which I decided to use to download the source files).
chris@josiah $ sudo pacman -S base-devel lftp
Next I had to grab the various source files required to build Yaourt. These include the PKGBUILD script (which automates the compilation process) and other files such as a post-install script.
chris@josiah $ lftp -c http://aur.archlinux.org/packages/yaourt/yaourt
chris@josiah $ cd yaourt
Now, I had to build the package. Adding the -s option tells the build tool to automatically pull in any required dependencies using Pacman.
chris@josiah $ makepkg -s
==> Making package: yaourt 0.9.2.3-1 x86_64 (Wed Jan 7 17:45:36 EST 2009)
==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
-> Downloading yaourt-0.9.2.3.src.tar.gz...
--2009-01-07 17:45:37-- http://archiwain.free.fr/os/i686/yaourt/yaourt-0.9.2.3.src.tar.gz
Length: 65906 (64K) [application/x-gzip]
Saving to: `yaourt-0.9.2.3.src.tar.gz.part'
100%[==============================>] 65,906 36.3K/s in 1.8s
Once the package was built successfully, I just had to install it with Pacman.
chris@josiah $ sudo pacman -U yaourt-0.9.2.3-1-x86_64.pkg.tar.gz
Now I was able to use the "yaourt" command just like Pacman, except that installing a package this way automates the entire build and installation process for source packages. Pretty awesome.
Being used to other package managers such as emerge, zypper and apt-get, it took me a while to get my head around the syntax used with Pacman. This wasn't because it was hard, just different! After looking up the DistroWatch package management cheat sheet from a few months ago I was ready to sink my teeth into Pacman. Updating the repositories was easy, I just ran pacman -Sy which pulled down the "extra" and "community" repositories as specified in my /etc/pacman.conf file. Next I had to get my favourite text editor, Vim. Searching for Vim took a total of 0.44 seconds, which was pretty fast. Installing Vim revealed 15 required dependencies totalling 163 MB in size once installed, including Python, Ruby, GPM and some other libraries. This is where you could take advantage of the ABS and re-build the package. If you do not want Vim to have support for X, Python or indeed a console mouse with GPM, then you could re-build it without these options.
Nevertheless, installing Vim and its 15 dependencies from the repository took only 4.9 seconds using the command pacman -S --noconfirm vim. Removing Vim and all its dependencies via the command pacman -Rs --noconfirm vim took 0.51 seconds. Because Arch Linux is minimal, it does not install every dependency under the sun for each package, but only those required for the package to function (well, really whatever the developer decided to include support for). Because of this, another neat thing that Pacman does is suggest additional packages which would enable more features. For example, when installing Python, Pacman prints to the screen "Optional dependencies for python, tk: for IDLE, pynche and modulator". If you want support for any of these, simply install Tk. Once again this shows the power and flexibility of Arch Linux. While this is certainly very handy, I think this information should be given as a summary upon completion of an install rather than after each dependency. These messages can be easily missed when installing dozens of packages.
After installing the base Arch Linux on my trusty Dell Latitude X1 laptop (Intel Pentium M 1.10 GHz, 1.2 GB RAM, Intel 915 Video, 60 GB hard drive), I now had to get X Window and sound working, as well as some sort of graphical interface. The new X.Org sports fancy hotplugging features so HAL and D-Bus were required. First I installed these, added "hal" to the DAEMONS list in rc.conf and started the service. Then, following instructions from the Wiki, I ran the following command:
chris@josiah $ pacman -S libgl xorg xf86-input-evdev xf86-input-synaptics xf86-video-intel mesa
This provided me with a basic X Window environment and specific support for my video card and touchpad. Now I was able to test it, which I did with the startx command. X started up and I was greeted with the usual tab window manager (TWM) and some xterms. Running glxgears I noted that 3D was working correctly. So far so good! Unfortunately my touchpad didn't work properly when using hotplug mode, so to get this working correctly I had to create an xorg.conf file (with sudo X -configure) and then edit this appropriately. This is where new users will potentially fall down - when something doesn't work as expected, you have to configure it yourself. But then that's the audience that Arch Linux is directed at, those willing to tinker with their system and learn.
Next, I needed a graphical window manager, for which I usually use wmii. Installation was effortless, as expected. By default Arch Linux does not install a desktop login manager such as GDM or KDM (of course, it's up to the user!) so I instead opted to just run wmii from the terminal using xinit. After installation, all I had to do was edit my ~/.xinitrc file and set exec wmii in it. Now, running xinit resulted in X starting, followed by my desktop. I did notice an issue, however, when using wmii. Redraw was extremely slow and switching between tiles caused X.Org to chew up around 90% CPU. By using the 'vesa' driver for X instead of 'intel' this seemed to improve. I assumed this might have something to do with the new Intel driver using GEM (Graphics Execution Manager) instead of TTM (Translation Table Maps), which is only available in the 2.6.28 version of the Linux kernel. At the time of my install, Arch Linux still booted a 2.6.27 kernel, so I installed the 2.6.28 kernel from testing. Unfortunately the result was the same. I tested the same packages on a system with an NVIDIA graphics card and also under VirtualBox, where neither system had this issue. I posted the issue on the forums and after a suggestion to build the latest Intel driver and X.Org server the problem went away. In fact, it was noticeably faster and only used 3% CPU. It seems to me that a driver which has this sort of problem should not have found its way into the stable tree until the other required packages were also updated.
Arch Linux offers many other lightweight window managers, but for the majority of users out there who prefer a desktop manager, there are also plenty to choose from, including GNOME 2.24.2, KDE 4.1.3 and Xfce 4.4.3 (all the latest releases at the time of writing). All of these environments are available by simply installing either the "gnome", "kde" or "xfce4" meta-package (called a group). The KDE install appears to be reasonably complete, while the GNOME group is more minimalistic, providing a reasonable base GNOME environment but by no means complete. To extend the GNOME desktop, the group 'gnome-extra' can be installed which adds further 109 packages. Of course, this is not the only way to get such a system. The ability to install a more minimal desktop environment is available by installing specific KDE and GNOME packages. Naturally, the base can then be built up further by adding other packages. Unlike most other distributions, Arch Linux does not brand packages by default and appears to leave them in their default vanilla state without performing additional "tweaks". As a result, the default desktops are rather "normal" (as the screenshots will show), but Arch Linux artwork can easily be installed from the repositories.
Because of its minimalistic nature, there are many other aspects of your system that you will need to manually install and configure. This includes things like CPU speedstepping, suspend and resume, scanners, printers, cameras, and many more. Naturally this is not the place to cover these, but rest assured the support for them exists, you just have to install the required packages and, at times, modify the configuration. This is where the Wiki and community support are invaluable, especially when coming from a distribution which configures all these things out of the box.
Finally, Arch Linux does provide users with the ability to play proprietary media formats and also includes Flash support. These can be achieved by installing "flashplugin", "codecs" and "libdvdcss".
The "keep it simple" philosophy of Arch Linux really shines through in all aspects of this distribution. It lets the user control the system and doesn't do anything unless told to. It has the speed and convenience of binary with the power of source and is very flexible when it comes to optional dependencies. Being a rolling release, the packages are also reasonably up-to-date. Other than the problem with the Intel video driver, I have not had any issues with the quality of the packages. Still, I have to wonder how well a smaller distribution like this can provide overall stability. Perhaps time will tell. It also remains to be seen how well Pacman will perform after installing and removing thousands of packages. Certainly, Arch Linux isn't for everybody, no distribution is, but it sure is plenty of fun and you learn a lot. If you're the kind of person who likes to fiddle and tweak your system, then definitely give it a shot. Once you have your system up and running the way you want, it's very easy to maintain and it feels great. If you've been tempted to try it out, there is a Wiki page listing how it compares to others. As for my dream distribution, Arch Linux comes pretty darn close.
Arch Linux - KDE 4.1.3 Desktop (full image size: 218kB, screen resolution: 1024x768 pixels)
openSUSE calls for build contributors, Fedora focuses on artwork, Debian runs on Android, Singapore Airlines switches to Red Hat, Ubuntu on restricted software, mini distros, Gentopia
The recent release of openSUSE 11.1 was built entirely using Novell's Online Build Service (OBS). In issue 54 of openSUSE's weekly newsletter, the project put out a call for new build contributors. "The OBS developers have collected smaller projects on this Wiki page. These projects are ideal for anyone new to OBS development," writes Adrian Schröter who confirms that "we're happy to mentor new developers and contributors." In other openSUSE news, Joe Brockmeier announced the availability of the project's feature tracker to the wider community. Called "OpenFATE", the online system will allow anyone to "view and discuss features, so long as they have an account. This will allow the openSUSE community to see how the releases evolve and participate directly in feature discussions."
* * * * *
Now that the name of the next Fedora release has been decided upon, the project had turned their focus towards artwork. The project's Wiki has a page dedicated to the process. "Fedora 11's artwork process is going to work a little differently than our artwork process has worked in the past. Rather than having multiple theme concepts competing with one another and dividing artists' time and energies, we're going to try having one theme concept (inspired by the release code name) that everyone works together on. We're hoping to produce higher-quality artwork in a more timely manner this way." The new name must be linked somehow to the name of the previous release but is then open to interpretation. The new name 'Leonidas' is a ship in the British Royal Navy, as was Cambridge, but we may see artwork depicting 300 Spartans rather than nautical items.
* * * * *
Harnessing the power of the Debian Arm port, an unofficial installer for the Android phone has been released. Taking just 10 minutes to install, the process "leaves you with access to the full plethora of programs available in Debian and let's you continue using your phone as it was intended to be: as an Android device with all the capabilities thereof." The installer requires a modified version of the phone's firmware, an updated version of BusyBox and a FAT32 formatted SD card to run.
* * * * *
With the world experiencing an economic slowdown, Singapore Airlines has arranged the roll-out of Red Hat Linux to run the in-flight entertainment systems on their Airbus A380 and Boeing 787 aircrafts. "Singapore Airlines' latest investments in cabin service are designed to help it stand out from the competition and attract more passengers." The new version of KrisWorld will not only offer more movies and audio, but also turns each seat into a PC, complete with StarOffice and an accessible USB port. "The system consists of a central Linux server that connects to a network of PCs installed in every seat on the aircraft. The KrisWorld software offers an improved user interface and each economy-class seat is fitted with a 10.6-inch LCD screen that offers resolution of 1,280 pixels by 768 pixels." For those fortunate enough, the screens are larger in business and first class, where each seat comes with a 15.4-inch and 23-inch screen, respectively."
* * * * *
In a post to the project's "sounder" mailing list, Ubuntu developer Colin Watson explains why the distribution cannot include certain packages to provide support for all proprietary codecs and drivers. "There are certainly packages that we believe that we can distribute over the Internet but not ship on physical media," he writes. Some packages have a license which prohibits re-distribution by Canonical, but does not prohibit the end user from installing the software. "It's quite possible that distributing GPL-incompatible GStreamer plugins *by default* would violate the licence on GPLed GStreamer applications, because setting all that up by default goes a bit further than 'mere aggregation' and starts to look rather more like a derived work; but letting the user put it together after the fact is different." He also asserts that there are active patents against MP3 decoders which restrict Ubuntu's ability to include a codec out of the box.
* * * * *
Since its inception, the Gentopia project has brought many new unofficial features to the Gentoo Linux distribution. But developer Doug Goldstein reports that the Gentopia overlay will now merge into that of freedesktop. "Recently we've seen a freedesktop herd rise up in Gentoo which is a collaboration between the various desktop environment herds which is a good thing for users,", he writes. "From the get go I have wanted this herd to take over the Gentopia herd and project and fold it into its wing since it includes many freedesktop.org projects, the time has finally come for this to happen. As a result, the Gentopia overlay, web page and e-mail alias are going away and being replaced by the freedesktop herd's resources."
* * * * *
Ever wondered whether a mini distribution such as Damn Small Linux, TinyMe or Puppy Linux would be worth trying? The ZDNet Community site has published an article by Jamie Watson comparing these three 'big' players. He tests each of them and discusses the problems he encountered and what he liked about each system. "The first time I tried Damn Small Linux, I didn't care much for it," he writes. But once I got over a couple of problems, the more I tried it, the more I found that I liked it. It really is very, very good at what it sets out to do, and they have done an excellent job of staying focused on that while continuing development." Watson says that "Puppy Linux strikes a very good balance between small size and excellent functionality", while "TinyMe did the best job of starting up the desktop with a minimum of fuss. It didn't complain or get confused by the ATI display adapter."
Alexey Rusakov has announced the availability of an updated release of ALT Linux "Desktop" edition, version 4.1.1: "ALT Linux proudly presents a new release of our desktop distribution, ALT Linux 4.1.1 Desktop. This is a general-purpose GNU/Linux distribution intended for use on desktop systems, laptops and netbooks. Changes since ALT Linux 4.1.0 Desktop include: updated version of OpenOffice.org - 3.0.0, with bug fixes; Compiz works out-of-the-box, all you need to do is run it from the menu; fixes in NetworkManager, targeted on its stability and PPPoE operation; printer settings and management is fixed in a default KDE installation; CPU frequency changing fixed; miscellaneous fixes here and there; an installation DVD image with English as the default language." Here is the brief release announcement.
Volker Theile has announced the release of FreeNAS 0.69, a tiny FreeBSD-based operating system which provides free Network-Attached Storage (NAS) services: "After a long time of development FreeNAS 0.69 "Kwisatz Haderach" (revision 4276) has been released. Majors changes: add TFTP service, it is accessible via 'Services, TFTP' in the WebGUI; add Samba patch; upgrade nano to 2.0.9; upgrade PHP to 5.2.8; add WOL support for miscellaneous NICs; upgrade nfe driver; fixed Samba lock file problem; replace FTP server Pure-FTPd with ProFTPD 1.3.2rc3; add TCP wrappers, the rules can be configured via WebGUI 'Network, Hosts'; upgrade ATAidle to 2.4, Transmission to 1.42, rsync to 3.0.5; add ability to create a SWAP partition during installation; enhance the 'System, Advanced, Swap' page to select a file or disk device as swap space." Read the complete release announcement for a detailed list of changes and new features.
Philip Newborough has announced the release of CrunchBang Linux 8.10.02, an Ubuntu-based distribution featuring the lightweight Openbox window manager: "The final 8.10.02 builds of CrunchBang Linux, CrunchBang Linux 'Lite' and CrunchEee are now available. The new releases contain numerous changes and many fixes provided by the CrunchBang community. Features: PCMan File Manager replaces Thunar; Xfce integration and dependencies removed in favour of LXDE components; VLC returns to replace Totem as the default media player; Qt4 application (VLC and Skype) are now styled with QGtkStyle, providing a unified look-and-feel to the desktop; a new Tango icon theme for Claws Mail; Leafpad included as an alternative editor to gedit; Gdebi installed by default; gPodder podcast catcher installed and included in the 'Internet' menu...." See the release announcement and release notes for further details.
* * * * *
Development, unannounced and minor bug-fix releases
PureOS. PureOS and PureOSlight are GNU/Linux live CDs based on Debian's testing repository. These are desktop distributions that can be used as live media (CD or USB) or as full-featured operating systems installed on a hard disk. PureOS is a 700 MB live CD with KDE, Iceweasel, Icedove, OpenOffice.org, Songbird, VLC and K3B. PureOSlight is a small 300 MB live CD with Xfce, Iceweasel, Icedove, AbiWord, Gnumeric and Exaile.
PureOS 1.1 - a desktop live CD based on Debian's testing branch. (full image size: 765kB, screen resolution 1280x1024 pixels)
* * * * *
New distributions added to waiting list
Amahi. Amahi is a home server distribution designed to efficiently manage the networking and backup of all the computers, game consoles and other devices in a network, and securely access the network from the Internet. It is based on Fedora.
Galinux. Galinux is an Ubuntu-based distribution with full support for Galician, a language spoken in one of Spain's autonomous communities.
Icadyptes. Icadyptes is a Linux distribution based on Arch Linux. Currently in early development.
SOAD Linux. SOAD (SUSE On Active Diet) Linux is an openSUSE-based minimalist distribution featuring the Enlightenment 17 window manager.
Mockito is an open source testing framework for Java; it allows the creation of test double objects (mock objects) in automated unit tests for the purpose of test-driven development (TDD) or behavior-driven development (BDD). FREE 74-page Cookbook