| DistroWatch Weekly
|DistroWatch Weekly, Issue 477, 8 October 2012
Welcome to this year's 41st issue of DistroWatch Weekly! Taking a break from the usual distro reviews, this week's feature story is a hardware adventure that explores the ARM-based ODROID-X development platform. Robert Storey has spent a few weeks turning a complex-looking device into a useful computer system and is happy to share his experiences. With the growing number of ARM-based boards available for purchase on the Internet, this is an area where any Linux geek will be only too happy to explore for fun and profit. In the news section, Ubuntu's Amazon controversy continues despite the project's new option to turn off the Amazon search feature, OpenBSD takes a stab at Linux for having a damaging effect on the POSIX standards system, and openSUSE's new board chairman Vincent Untz defends GNOME 3 from the continued criticism in the media. Also in this issue, an article about installing Debian GNU/Linux on Raspberry Pi, a story of Tiny Core Linux serving as a single-purpose virtual appliance, and an opinion piece calling for the creation of a "Linux operating system" with a common base shared across the many distributions. Happy reading!
Listen to the Podcast edition of this week's DistroWatch Weekly in OGG (100MB) and MP3 (27MB) formats
|Feature Story (by Robert Storey)
ODROID-X - a call to ARMs
Man does not live by breadboards alone.
* * * * *
I've been waiting an awfully long time for an ARM-based computer. Not that I couldn't have had one earlier - the Acorn Archimedes - released in 1987 - boasted an ARM microprocessor. However, that machine didn't exactly take the world by storm - it was very much a UK thing, and I've never lived in the UK. Indeed, I've never seen an Acorn computer, though from everything I've heard they were quite capable and ahead of their time. Although the company gained a respectable reputation as "Britain's Apple," the cut-throat competition proved to be too much. Acorn broke up in the 1990s, but pieces of the company live on, notably ARM Holdings plc, which licenses its technology to numerous manufacturers of ARM chips.
Of course, many of you reading this already own an ARM-based computer - sort of. The ARM chip, in its various iterations, powers nearly all the world's cell phones. Whether or not a phone should be considered a "computer" has become a point of debate, but I can say without hesitation that my stupid phone (as opposed to a smart phone) doesn't make the grade. Aside from talking, my phone has a few endearing applications - calculator, alarm clock and a nifty built-in flashlight - but I can safely say that NASA won't be using it for calculating the flight path of their next Martian rover.
So for definition's sake, my idea of a "computer" has to be something with a usable screen and keyboard, connects to the Internet, has a zillion applications to suit my every whim, gives me root access and basically lets me get all my geek work done. Until very recently, if you wanted all of the above you were pretty much restricted to something from the Intel world, or a compatible counterpart from AMD. A few other microprocessors have come and gone - DEC Alpha, PowerPC, MIPS and others. Yes, I know some of these are still around, but don't expect to find them in your local computer shop. If you're looking to leave the i386/AMD64 world behind, the only serious player is ARM.
The ARM instruction set has evolved over time, gaining speed and other capabilities. We are currently at version 7, a 32-bit implementation, usually incorporated into a "system on a chip" (SoC). The ARM Cortex-A15 is the most advanced ARM architecture out there, but these chips seem to be thin on the ground. Most boards that you can buy today use the still very respectable ARM Cortex-A9 design. ARM version 8 is promised for the future and will deliver 64-bit instructions, but they don't exist yet in the real world.
Geeks have been salivating over the prospect of owning an ARM board, but until a couple of years ago you pretty much had to break out a breadboard and soldering iron and roll your own. Then some manufacturers started offering more or less complete "development boards." The first ones were rather lame, but they have improved and suddenly demand has skyrocketed. Probably the best-known one is the Raspberry Pi - it has proven to be so popular that there is a long waiting list to get one. There are several other notable ARM boards from various other manufacturers trying to milk this market, including the BeagleBoard, PandaBoard, VIA APC. A variation on the theme is the cstick Cotton Candy which looks like a USB stick.
When I first decided to jump on the ARM bandwagon, I wanted to purchase a Raspberry Pi because I was impressed by its popularity and low price (US$35). So I went ahead and ordered one, and have been waiting... and waiting, seemingly forever. Due to raging demand, the device has yet to ship. Being an impatient lot, I went looking for an alternative, and finally settled on purchasing the ODROID-X. At US$129, it's more than three times the price of the RasPi, but it's also considerably more powerful. The processor is a Samsung quad-core ARM Cortex-A9 running at a respectable 1.4GHz, with 1GB of RAM (not upgradable) included. These specs should be capable of delivering performance roughly equivalent to a recent model Intel Atom processor, and possibly exceeding it - a tantalizing prospect considering that I do most of my work on an ASUS Eee PC which runs on an Intel Atom. Thus, I was hooked on the ODROID-X before I could even get my credit card out of my wallet.
ODROID-X - an open mobile development platform based on Exynos4412 ARM Cortex-A9 Quad Core processor
If you want one of these boards, you won't find it in your local computer store. The manufacturer is located in South Korea and you order directly from their website. The money gets processed via PayPal, which caused me some difficulty as PayPal rejected my credit card for no apparent reason. I eventually was able to place an order using a friend's credit card. In addition to the board itself, there are a few rather essential "options" you'll have to order to make the thing work, the most important being the 5-volt AC/DC power adaptor. Another essential item is an adaptor to make video output work - sadly there is no VGA/DVI port. You have a choice between using HDMI (requires an HDMI Type A to Micro-size Type D cable which costs US$9) or a proprietary 14-inch LCD module kit (US$79) which connects to the card's 50-pin connector. Like most users, I went for the HDMI cable, though I'm a little disappointed that the manufacturer didn't opt of a full-sized HDMI port.
Of course, if you go with the HDMI adaptor cable, that poses the additional requirement of having an HDMI monitor to connect it to. The good news is that most larger (22-inch and up) monitors now include an HDMI port. The bad news is that smaller monitors do not. Furthermore, you may already possess a perfectly good old monitor. So what to do? Probably the most cost effective solution is to purchase an HDMI-to-DVI adaptor cable, such as this one which I bought on Amazon for US$6 (note that this supports DVI but not VGA). I am mildly perturbed that ODROID doesn't sell these cables - I do understand their desire to reduce costs and save space on the board by not including VGA/DVI, but it would be nice if they could provide us with one-stop shopping and not make users scramble around looking to solve the basic problem of getting workable video output. Another suggestion for them - why not include an HDMI port on the 14-inch monitors they sell?
Once I placed my order, service was fast - I had the board in my hot little hands less than two weeks later. Where I live there were no import duties, but do be aware that some countries will slam you with this and it is the customer's responsibility - not ODROID's - to pay the ransom.
Setting up the hardware was simplicity itself. The most complicated issue that presented itself was that I needed an adaptor to plug-in the AC/DC power brick since it uses two round prongs and I live in a flat-pronged country. Such adaptors are readily available in electronic stores, even airport shops. The ODROID-X boasts six USB ports (sadly only USB 2.0, not 3.0) making it easy to hook up a keyboard and mouse. There are standard analog audio and microphone ports, and of course an Ethernet port. There are three buttons on the board - the crucial on/off one is the button next to the DC power input jack.
The board lacks a case, a major oversight in my opinion. Most people just live without one, but if you're handy you could consider constructing one from plywood or acrylic plastic. Most people would prefer acrylic, but note that it takes special glue and tools - check out this video if you want to tackle such a project. There are reports of people building cases out of LEGO.
The final hardware issue is the boot device. Like most of these development boards, the ODROID-X lacks a SATA port. The operating system is booted off an SD card, and if you're going to buy one you need to pay close attention to a few details. Compared to hard drives and SSD (solid-state drives), SD cards have slow input/output but it varies a great deal according to the card's "class" rating. The slowest SDHC cards are class 2, fastest are class 10 which indicates a write speed of at least 10MB/sec. Look carefully at the card and you should see the class number enclosed inside the letter "C". Even faster than class 10 is UHS, indicated on the card with the symbol "U" enclosing a number (currently no higher than UHS-1). However, I'm not sure that the ODROID-X SD port yet supports UHS as it's a relatively new standard.
In addition to the card's speed rating, capacity is also important. You need 8 GB minimum, but I'd recommend at least 16 GB. This is not only to give yourself extra storage space for your data, but also because SD cards have file fragmentation issues but a larger card has less problem with this.
One of the nice things about purchasing an ARM development board is that there's no "Microsoft tax" which is one of the reasons why they're so cheap. I've lost count of the number of times I was forced to purchase a mandatory Windows license, only to immediately erase the "free" installed operating system and install Linux. Blessedly, when you first boot the ODROID-X you will not be greeted with pages of legal jargon followed by an "I agree" button and mandatory online "product registration."
The big question, of course, is "boot with what?" As it turns out, you've got a couple of options. For an extra US$13, ODROID will throw in an 8 GB SD card (class 10) with Android 4.0.x pre-installed. If you've already got a blank SD card that you'd like to use, you can download an image file and write it to the card on a Linux computer with the user-friendly usb-imagewriter utility, or the user-hostile dd command (usb-imagewriter is actually just a front-end for dd). The only tricky part involved is making sure you've downloaded an image that works with ODROID-X. I'm sorry to say that ARM SoCs suffer from a lack of standards, so you can't just grab any Android image file on the Internet and expect it to work - you must get a version specifically compiled for the ODROID-X.
The good news is that everything you need can be found on the ODROID download mirror. The ODROID forum had details of what is available - a specific announcement about Android can be found here. It's probably worth mentioning that there is a "standard" version and another that will give you root access, a prized possession for devout Android geeks. Also recognize that these Android downloads are all alpha releases, though from what I hear they work reasonably well.
"From what I hear?" Yes, I confess, I didn't even try Android. As I already admitted, I don't own a smartphone, and while I'm sure Android has its charms, I'm just not terribly interested. My passion is Linux, which offers everything one needs in life, and fortunately there is a version of Ubuntu 12.04 compiled for ODROID-X - again, find it on the download mirror. If you peek at the mirror, you'll see that there are separate downloads depending on whether you are using an HDMI monitor or ODROID's proprietary LCD. You may also notice that the image files are compressed with gzip, so you'll need to use the Linux gunzip command before burning the image with usb-imagewriter or dd.
The image file will only create an 8 GB partition on your SD card even if you've got 16 GB or more available. So as to not let all that valuable digital real estate go to waste, on any Linux computer you can (as root) create an additional partition in the unused space using the cfdisk command (the SD card must be unmounted when you do this). You can then format the newly created partition with the ext4 file system.
Starting up requires holding down the minuscule power button for about a second or two. Upon first boot, we can see that this is a customized version of Ubuntu's Unity desktop, specially made by the Linaro Foundation, a not-for-profit engineering organization that develops software for the ARM architecture. At boot time, you will be automatically logged in (without a password) as privileged user linaro. The password (needed for updating and installing packages) is (no points for guessing) "linaro." The root password is not set, but it's convenient to add one with the command: "sudo passwd root".
The Linaro Ubuntu desktop
(full image size: 335kB, screen resolution 1920x1080 pixels)
Trick or Tweak
As any experienced Debian/Ubuntu user should know, the very first thing to do with a new installation is to run the "apt-get update" command followed by "apt-get dist-upgrade." You may see some intimidating error messages, such as this one: W: Duplicate sources.list entry http://ports.ubuntu.com/ubuntu-ports/ precise-updates/universe armhf Packages (/var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_precise-updates_universe_binary-armhf_Packages). However, the error appears to be harmless, and the system updates as required. More than likely a new kernel will be installed, which means a reboot is called for. At that point you'll discover a little bug - the reboot/shutdown button doesn't work. The developers are aware of this and a fix is in the works, but if that hasn't occurred by the time you're reading this, the best solution for an orderly shutdown is to open a terminal and (as root) type either "reboot" or "halt." Another old Linux trick that still works (but requires considerable manual dexterity) is to simultaneously hold down the Alt-Shift-SysRq keys and type REISUB (for reboot) or REISUO (for shutdown). You may find that rebooting doesn't always work, necessitating that you cut the power (easy if you plug the AC/DC power adaptor into a switched power strip) and then pressing the power button again.
Now with our fully updated and rebooted system, we can at last begin installing software. The Linaro software repository isn't as totally awesome as the mainstream Ubuntu ones, but it comes pretty close. One of the first things you'll notice that is missing is the package ubuntu-restricted-extras, and that's a rather important one since it includes the all-important Adobe Flash that allows us to watch online videos. This grievous oversight is not the fault of Linaro or Ubuntu, but rather due to the fact that Flash is closed-source and Adobe has shown no interest in supporting a version for ARMed Linux. Luckily, there is a solution for this lamentable situation, though a somewhat imperfect one. The open source community has spent some time trying to reverse engineer Flash, and though it's still a work-in-progress, these efforts have paid off. First, install Firefox (even if you don't use it), along with any other browser you like (Midori, Chromium, etc). Then open a terminal and as root:
apt-get install gnash browser-plugin-gnash lightspark browser-plugin-lightspark
A reboot will make the new settings take effect. I found that YouTube videos played reasonably well, though a bit sluggish. Full-screen video doesn't seem to work at all, even a downloaded video played with MPlayer. That situation might get fixed when the Mali X11 driver for Ubuntu is released - there have been vague rumblings indicating that this could happen as early as the end of October. Currently, the lack of video acceleration is something of a bottleneck for Ubuntu's performance on ARM.
cp /usr/lib/gnash/libgnashplugin.so /usr/lib/firefox/plugins
Google Earth is another nice application which I use, but like Adobe Flash, it's closed source and it may be awhile (if ever) before we see a version that can run on ARM processors (except perhaps under Android). I went looking for an open source equivalent, and the best I could find was Marble. It works in conjunction with OpenStreetMaps, which is quite good for some regions but clearly is still very far behind GoogleMaps in providing details. The satellite photos in Marble are almost useless, a reflection of the fact that this data has been privatized and is not in the public domain. Commercial satellite companies don't normally sell their images, but rather require a license for access. Google pays untold millions for the images in Google Earth, but Marble has to make do with whatever crumbs that NASA, ESA and others toss out for free. Marble is easily installed: apt-get install marble. It's reasonably point-and-click friendly, and you shouldn't have much trouble learning how to use it.
You may have noticed by now that I've been using the phrase "apt-get install" quite a bit. Aside from the fact that geeks like showing off their command-line prowess, the fact is that this version of Ubuntu doesn't come with the pretty point-and-click Synaptic package manager by default, but you can install it. Even command-line gurus might want to install Synaptic anyway, since it has several endearing features (like the ability to remove broken packages that were accidentally installed).
Because we installed Linaro Ubuntu by copying an image file (as opposed to running an installation program), the time zone was never set, so you should do that. This can be done from either the Preferences-Time_and_Date menu, or with command-line lingo dpkg-reconfigure tzdata. It would also be very worthwhile to install the package ntpdate which allows your computer to use NTP servers to set the time and date from the Internet. Ntpdate will automatically run while booting your system (Ubuntu stores the script at /etc/network/if-up.d/ntpdate). However, I found that on occasion the script either did not run or got the wrong time - this may be due to a bug or a defect on my board. If that happens to you and your clock is wrong, you can run this command:
sudo ntpdate pool.ntp.org
I soon grew tired of being user linaro who always gets logged in by default, without a password, and decided I would nuke him. To do that, I first added user robert at the command line (as root) by typing "adduser robert". It was critically important to make sure that robert had the same privileges as linaro before sending linaro to the bit bucket. To do this, as root, I edited file /etc/group after first making a backup copy of it (cp /etc/group /etc/group.original). Then edit /etc/group, adding robert after linaro separated by a comma (no space). Of course, no need to add robert to group linaro since it will be purged. After doing this, the relevant parts of /etc/group looked like this:
Then all I had to do was reboot, again got automatically logged in as linaro, then logged out, logged in as robert, opened a terminal, used su to become root, and issued the command:
On all subsequent reboots, linaro was never heard from again, having been sent to digital oblivion.
I've never been a fan of Ubuntu's Unity, and doubly so on the ODROID since graphics performance is less than optimal. I decided to switch to Lubuntu by installing package lubuntu-desktop, but ran into an odd problem in that the default display manager, LightDM, did not display the Lubuntu option. I fixed this, sort of, by installing package lxdm. After a reboot, LXDM showed its pretty face but the Lubuntu option was still absent. However, LXDM did give me LXDE as an option, something that LightDM did not. Fortunately, LXDE works brilliantly on the ODROID, so I will no longer have to suffer the indignity of Unity.
I installed package "ufw", the Ubuntu firewall, but I wasn't able to enable it. When, as root, I typed "ufw enable" I would see this message: "ERROR: Could not load logging rules". Fortunately I have a hardware router, so the firewall would have been redundant anyway. However, for those who connect to the Internet directly without a router, this could be an issue. No doubt the problem is solvable, and there are other firewalls besides ufw, but it was disconcerting that it didn't work out of the box.
I encountered a significant issue when attempting to download a (perfectly legal) file via BitTorrent. On my Intel-based computer I generally like to use KTorrent. However, after installing and starting KTorrent on the ODROID-X, graphics performance absolutely collapsed - the machine was so slow and unresponsive that I had to pull the plug. I nuked KTorrent and installed Transmission-gtk which performed somewhat better, but still unacceptably slow. Note that by "slow" I don't mean that the torrents downloaded slowly - in fact, download speed was amazingly fast. It's just that everything else was a slow as molasses. Even trying to edit a file in text-mode Emacs was a painful experience.
The solution proved to be using a text-mode torrent program. The best of the bunch seems to be rTorrent. If you've never used it before, you may find that configuring rTorrent is a bit more hassle than point-and-click bliss, but I won't digress in this already too-long article to give a detailed explanation. However, I may delve into the intricacies of rTorrent in a future report. Anyway, I can safely say that on the ODROID-X, it blows away the competition. One extra tip - turn off the screensaver, as it can steal processor cycles from rTorrent when you're making a long unattended download.
Linaro Ubuntu uses PulseAudio for sound, and it works well. Sound quality is excellent, provided that another app isn't hogging CPU resources which can cause the music to stutter. I found that the lightweight music player Aqualung did a fine job.
For years I've been hearing about how the super-efficient ARM processor was destined to eventually revolutionize portable (if not desktop and server) computing. The idea of an energy-saving board that requires no fan (thus quiet, and gathers no dust) is very appealing. Another attraction was the promise of being able to buy a computer without having to pay for a Windows or iEverything license. Unfortunately, until very recently it was all talk, but no products one could actually buy.
I'm happy to see that this is changing. Over the past couple of years there has been a trickle, lately turning into a flood, of ARM development boards. The lack of standards has been a real drawback, but this too may be changing as the latest Linux 3.7 kernel can now handle multiple ARM platforms.
At present, the ODROID-X appears to be the most powerful of the ARM development boards on the market. Despite a few hiccups, I find it quite useful for everyday use. It fulfills about 80% of my computing needs. The major weak spot is multimedia, but that will hopefully be addressed with the new much anticipated Mali driver.
I do have a few suggestion for the ODROID developers if they are reading this: update the SD card slot to support UHS-1 (if you haven't done so yet), put at least one USB 3.0 port on the board, consider a full-sized HDMI slot and start selling a good-quality HDMI-to-DVI adaptor cable plus a plastic case as accessories. If you need to cut costs, I wouldn't mind if you tossed out the 50-pin slot, though I realize that some might not agree. And finally, if you can find a way to bypass PayPal so that I can use my credit card, I'd be grateful.
|Miscellaneous News (by Ladislav Bodnar)
Debian on Raspberry Pi, more on Ubuntu and Amazon, OpenBSD's new anti-Linux song, interview with openSUSE's Vincent Untz, Tiny Core Linux as virtual appliance
To expand on this week's feature story, let's start the news section by linking to another review of a small ARM-based computer - the popular Raspberry Pi. William Shotts shares the adventure of installing Debian GNU/Linux "Wheezy" on the mini device: "I had been hearing a lot about the Raspberry Pi computer which appeared to be very similar to the BeagleBoard but only costs US$35. That price, being clearly in impulse-buy territory, appealed to my computer buying impulses. I ordered mine from Allied Electronics and waited about 12 weeks for delivery. For US$35 all you get is a bare board, nothing else, not even documentation. That's available on-line. I ordered a case, power supply, and cables from Adafruit Industries which offers an extensive array of Raspberry Pi accessories. You'll also need a 4 GB (or larger) SD card to act as its boot disk." After the successful installation the author concluded: "The Raspberry Pi, along with my BeagleBoard, has replaced two old desktop machines that acted as servers on my home network. My office is now eerily quiet (and much cooler!)."
* * * * *
In the meantime, Ubuntu's upcoming release, currently in final stages of development, continues to be marred not only by the integration of Amazon search into its desktop, but also by the way the controversy has been handled by the distribution's leadership. In an article entitled "Ubuntu has a bigger problem than its Amazon blunder" author Paul Venezia explains his reasons for no longer wanting to have Ubuntu installed on his computers: "The biggest problem I have with the Amazon debacle is another comment by Shuttleworth: 'Don't trust us? Erm, we have root. You do trust us with your data already.' That level of hubris from the founder of Ubuntu, in the face of what is clearly a bad idea badly implemented, should leave everyone with a bad taste in their mouth. If this idea can make it to the next Ubuntu release, then what other bad ideas are floating around? What's next? Why should we maintain that trust? So fine, Mr. Shuttleworth. You have root. But not on my box. Not any more."
* * * * *
Last weekend OpenBSD's Bob Beck announced the upcoming release of version 5.2, accompanied by a new OpenBSD tune. However, this time the lyrics of the song, entitled Aquarela do Linux! and written by Bob Beck himself, are bound to create controversy since they criticise the most widely-used open-source operating system for having unacceptable influence on the POSIX standards body. POSIX was originally designed to help maintain compatibility between operating systems, but the growing "Linuxism" (as OpenBSD calls it) in the standards body is having negative effects on other UNIX-derived systems. From the lyrics page: Just as the original song professed its love for Brazil, 'World, you'll love my Linux' is the passionate call of an idealistic dreamer who can't bear the thought of software that will only run under Windows, and yet loves the situation with software that will only run under particular Linux distributions. This problem has proliferated itself into the standards bodies, with POSIX adopting 'Linuxisms' ahead of any other variant of UNIX. POSIX and UNIX have made it where you can write reasonably portable software and have it compile and run across a multitude of platforms. Now this seems to be changing as the love for Linux drives the standards bodies into accepting everything Linux, good and bad." On a more technical note, the release notes for OpenBSD 5.2 can be found here.
* * * * *
A Frenchman at the helm of a German open-source software outfit? Unlikely as it sounds, this notion became reality when the openSUSE project announced the appointment of Vincent Untz as openSUSE Board Chairman last month. The new project leader, who is also a GNOME developer and the GNOME release manager, has been recently interviewed by Muktware. Apart from talking about his new role, Vincent also took his time to answer the criticism directed at GNOME 3: For GNOME 3, the complaints we receive are generally about the change in the user experience. People were really fond of what we achieved with GNOME 2, and some didn't want any real change. As a community, though, we wanted GNOME to move in a new direction, towards a new vision. We believe this vision is better than the GNOME 2 one, and we're working hard to satisfy our users. We are definitely listening, and working on addressing the issues people see with GNOME 3, while still standing true to our vision. Our iterative process of releasing GNOME 3 enabled us to deliver a steady flow of improvements in the GNOME 3 experience since April 2011. This is why we've seen in the last few months more and more people starting to speak up about how they really like GNOME 3."
* * * * *
Finally, a link to an article about the world's smallest graphical Linux distribution Tiny Core Linux. Entitled "Thinking Small With Tiny Core Linux, the article by Jon Buys describes the experience of building a small, single-purpose virtual appliance: I recently had the need to build a virtual appliance, a small Linux server that did one thing, and required no interaction. And by small, I mean really small, tiny. After considering the options and searching around a bit, I found the Tiny Core Linux, and when they say tiny, they mean it. The Tiny Core download is only 12 MB. Tiny Core Linux is meant to be a minimalist desktop operating system. The main download includes a window manager, a text editor, and that's about it. ... It was a fair bit of work to get my virtual appliance working the way I wanted, but it was also an interesting look at an alternative concept for building a Linux system. I now have a downloadable virtual appliance that weighs in at right around 27 MB, zipped. I am also considering using this system for other servers, at least for testing. It might be interesting to see what kind of load the appliance can take, especially running something like nginx."
|Opinions (by Jesse Smith)
What Linux needs is an operating system
Anyone who has spent any significant amount of time in the Linux community has heard the questions raised: "Why are there so many distributions? Why can't the various projects get together and make one unified distribution?" Of course this is never going to happen, nor should it. One of the greatest benefits of open source software is that it gives people the ability to use their computers the way they wish to and modify their systems to work they way they want. This has given the Linux community a great degree of flexibility, letting it run anywhere, from extremely low-resource systems to super computers, from stable servers to cutting-edge desktops to niche administration tools like Clonezilla and KNOPPIX. The ideal of one unified distribution sounds nice to newcomers overwhelmed by choice and to third-party developers, but it won't fly in a community where freedom, empowerment and flexibility are priorities. One might as well ask why the human race has so many languages when having one would seem so much more simple.
Another phrase that comes up frequently on technical forums is "Linux is a kernel, not an operating system," and this is true. Linux, on its own, is a kernel. That kernel gets combined with various other pieces of software, usually the GNU userland tools, a package manager and a desktop environment in order to make a Linux (or GNU/Linux) distribution. And herein lies the real issue for newcomers to the Linux scene and for developers: each Linux distribution is, in effect, a separate operating system. Software built and packaged for one distribution often will not run on another, even if the two projects are closely related. This leads us to some ridiculous situations where not only will software packaged for Ubuntu not necessarily work on Fedora, but software built for Linux Mint's main edition may not work properly on Linux Mint Debian edition. It can be increasingly frustrating for developers and packagers because sometimes software which builds and runs fine on a handful of the major distributions will not even compile on another due to library incompatibilities. So, what is the solution?
A number of ideas have been put forward over the years. Merging distributions, which as already mentioned, isn't practical (or perhaps even desirable). In days past lip service was given to standards by which all major distributions might be guided. However, if we look at the list of certified distributions conforming to the Linux Standards Base we find that very few distributions follow it and those which do often aren't up to speed -- either they are on an older version of the standard or only older versions of the distribution were certified. Why didn't the Linux Standards Base catch on? I think it comes down to one simple fact: the Linux community follows working examples, not abstract designs. A person can put forward a design for the most robust video stack or the most flexible sound system or the most elegant packaging system, but the Linux community is interested in working examples, what is mostly functioning, now.
So now we're faced with the question of what might be a unifying solution if abstract standards aren't the answer and neither is trimming down the number of distributions? I think the Linux community might find its answer in the FreeBSD ecosystem. Looking at the FreeBSD project we find that, unlike Linux, FreeBSD is a complete, functioning operating system featuring a kernel, userland tools and package management. FreeBSD is a small OS on its own, but it can be expanded using a huge collection of packages, packages which are configured in such as way that they should work across multiple versions of the FreeBSD operating system. One practical way in which this separates FreeBSD from the various Linux distributions is projects based on FreeBSD share a lowest common denominator.
There are a number of derivative projects based on FreeBSD, including PC-BSD, GhostBSD, FreeNAS and DesktopBSD. What is interesting about these derivative projects is that, in sharing the FreeBSD base, they are mostly compatible. A program compiled and packaged for FreeBSD will work on GhostBSD. A program built on GhostBSD should likewise work on PC-BSD. This is because, despite their many differences, including separate installers, different desktop environments and different package management front-ends, they share a common foundation. Compare this scenario with FreeBSD to the situation we face with, say, Debian in the Linux community. A package built for Debian's latest Stable release isn't necessarily going to work on Ubuntu. A package designed to run on Ubuntu may or may not work on aptosid, despite the fact both Ubuntu and aptosid are derived from the Debian project.
The Linux community could greatly benefit from a common operating system. Not achieved by a merging of distributions, but rather by pulling a common base into each separate distribution. Right now most Linux distributions build and package their own version of the kernel, their own version of the compiler and of the GNU utilities and they are supplying their own low-level package manager. Having one central, minimal base with these key components would be of huge benefit to the Linux community. It would reduce duplication of effort, allowing each distribution to use the same base, it would reduce the need for building packages in multiple formats, it would help to insure software compiled on one distribution could be installed and run on another and it would provide a standard lowest common denominator without relying on an abstract third-party to write the standard. Furthermore, this approach does not limit the creativity and diversity of the Linux ecosystem as most distributions are, almost exclusively, using similar GNU/Linux bases, just with slightly different versions of software and configurations.
Each week I install a different GNU/Linux operating system and, while each one is different, most of them are using the same version of the Linux kernel, most of them are packaging similar versions of the GNU Compiler Collection and similar versions of the C library. Yet these distributions are rarely compatible in a practical sense. Meanwhile, when I venture into the FreeBSD community, I find they are using a common foundation of software and users are therefore able to trade software packages, scripts and configurations with a reasonable level of assurance their software will work on the various derivative projects. I hope we someday have that level of "interconnectedness" with Linux distributions. The flexibility we enjoy is empowering and wonderful, but to date it has come with the heavy price of fragmentation. The FreeBSD community is currently enjoying an expansion by way of new designs and is discovering more corners into which to grow without the same level of fragmentation and I think we, in the Linux community, should pay attention to what the FreeBSD community is doing right.
|Released Last Week
Andrew Wyatt announced the release of Fuduntu 2012.4, an updated version of the project's rolling-release distribution forked from Fedora: "The Fuduntu team is proud to announce the immediate availability of Fuduntu 2012.4. This is the fourth quarterly release for 2012. Like all previous Fuduntu releases, this release follows our tradition of making small incremental distribution improvements that don't sacrifice the stability of our Linux distribution. Existing Fuduntu users have already rolled up to 2012.4, as all of the updates available are released to our stable repository. This release comes with several changes, new features, and improvements. There have been changes to the way TMPFS works. With this update, the management of TMPFS mount points has been optimized. Several mount points have been mounted under /run to reduce disk I/O, increasing speed and battery life." Here is the full release announcement with details about the new features.
Fuduntu 2012.4 - the latest of the regular quarterly updates
(full image size: 1,770kB, screen resolution 1280x1024 pixels)
OS4 13 "OpenDesktop"
Roberto Dohnert has announced the release of OS4 13 "OpenDesktop" edition, an Ubuntu-based distribution featuring the Xfce desktop: "Today we are pleased to announce the arrival of the next generation of desktop operating systems, OS4 OpenDesktop 13. With this release we bring a lot of new functionality and bug fixes to the OS4 family. OS4 OpenDesktop 13 is the most capable Linux desktop featuring an easy-to-use interface and including a vast array of hardware support, WiFi support, along with all the multimedia codecs, Blu-Ray and DVD playback. OS4 OpenDesktop 13 is the premier Linux distribution for the home or business user. Our unprecedented commitment to cloud computing and Internet technologies makes OS4 OpenDesktop 13 the best platform for consumption of cloud services." Read the full release announcement for further details.
Absolute Linux 14.0
Paul Sherman has announced the release of Absolute Linux 14.0, a major new version of the project's lightweight desktop distribution based on Slackware Linux and featuring the IceWM window manager: "Absolute Linux 14.0 released. Coincides with the Slackware 14.0 release, keeping in step with libraries, toolchain and basic applications. Absolute has moved away from udisks to use the lighter SpaceFM file manager, which takes advantage of native kernel polling. So as always, Absolute will run fast on modest hardware. NetworkManager is taking care of Internet connections by default. Java and multimedia add-ons need to be installed (via system tools, as root) post-installation. Chrome browser is now the default (taking the place of chromium and/or Firefox). I distribute the browser with several plugins and the Chrome browser comes with a more up-to-date Flash release than what is available as a generic plugin for Linux machines." Visit the distribution's home page to read the release announcement.
Nanni Bassetti has announced the release of CAINE 3.0, an Ubuntu-based live DVD offering a complete digital forensic environment in a friendly graphical interface: "CAINE 3.0 is out! CAINE (Computer Aided INvestigative Environment) is an Italian GNU/Linux live distribution created as a project of digital forensics. Changelog: Linux kernel 3.2; MATE desktop 1.4; rbfstab - a utility that writes read-only entries to /etc/fstab so devices are safely mounted for forensic imaging/examination; mounter - a GUI mounting tool that sits in the system tray, left clicking the system tray drive icon activates a window where the user can select devices to mount or un-mount; scripts that are activated within the Caja web browser designed to make examination of allocated files simple; root file system spoofing patch...." Visit the project's home page to read the release announcement and to see a few screenshots of the new release.
Alex Filgueira announced the release of Cinnarch 2012.10.01 earlier this week. As the name suggests, Cinnarch is an Arch-based Linux distribution featuring the user-friendly Cinnamon (a fork of GNOME Shell) as the graphical desktop; it is also a live CD image with a simple text-mode installation program. From the release announcement: "Cinnarch 2012.10.01 released. Changelog: systemd as a system and service manager, no initscripts, the boot process is now faster with the parallelization capabilities; Welcn, the new welcome screen for Cinnarch is present, but the graphical installer button is de-activated; quiet boot; CLI installer - other operating systems added to GRUB, fixed Intel drivers in Lenovo laptops; cinnarch-wallpapers now contains some wallpapers from deviantART; changed the default wallpaper; packages - Linux kernel 3.5.4, Cinnamon 1.6.1, LightDM 1.3.3, Xnoise 0.2.11, Pantheon-files 0.1, Hotot 0.9.8.8, Chromium 22."
Mahdi Fattahi has announced the release of AriOS 4.0, an Ubuntu-based Linux distribution with a highly customised and enhanced GNOME Shell: "I'm happy to announce that AriOS 4.0 final has been released. Built upon the solid base of Ubuntu 12.04 LTS, AriOS comes with GNOME Shell as the default desktop, carefully modified and enhanced using a number of extensions to offer a better and more familiar user experience. AriOS is not a yet-another Ubuntu remaster. It comes with a slew of features, some of them unique. A beautiful, productivity-oriented desktop session using Avant Window Navigator + Compiz/Metacity; a script to auto-detect NVIDIA Optimus chips and install Bumblebee software; a GUI to turn on/off auto-mounting of partitions at boot; a handpicked selection of multimedia, graphics and office software." Read the rest of the release announcement for more information and screenshots.
Arch Linux 2012.10.06
Pierre Schmitz has announced the release of Arch Linux 2012.10.06, the latest release of the project's installation CD image - now with systemd as the service manager: "The October release of the Arch Linux install medium is available for download and can be used for new installs or as a rescue system. It contains a set of updated packages and the following notable changes: systemd is used to boot up the live system; initscripts are no longer available on the live system but are still installed by default on the target system - this is likely to change in the near future; EFI boot and setup has been simplified; Gummiboot is used to display a menu on EFI systems; the following new packages are available on the live system: ethtool, FSArchiver, Gummiboot, Midnight Commander, Partclone, Partimage, rEFInd, rfkill, sudo, TestDisk, wget, xl2tpd." Here is the brief release announcement.
* * * * *
Development, unannounced and minor bug-fix releases
|Upcoming Releases and Announcements
Summary of expected upcoming releases
New distributions added to database|
* * * * *
New distributions added to waiting list
- Linux Lite. Linux Lite is an Ubuntu-based desktop Linux distribution featuring the Xfce desktop and some of some commonly used open-source applications and utilities, such as Firefox, LibreOffice, VLC, GIMP, Thunderbird and others.
* * * * *
DistroWatch database summary
* * * * *
This concludes this week's issue of DistroWatch Weekly. The next instalment will be published on Monday, 15 October 2012. To contact the authors please send email to:
- Robert Storey (feedback on this week's review of ODROID-X)
- Jesse Smith (feedback, questions and suggestions: distribution reviews, questions and answers, tips and tricks)
- Ladislav Bodnar (feedback, questions, suggestions and corrections: news, donations, distribution submissions, comments)
- Bruce Patterson (feedback and suggestions: podcast edition)
|• Issue 586 (2014-11-24): Scientific Linux 7.0, Debian and systemd, Ubuntu MATE, application-level firewalls|
|• Issue 585 (2014-11-17): openSUSE 13.2, PC-BSD's "roles", MATE + Compiz on Mint, cleaning package cache|
|• Issue 584 (2014-11-10): OpenMandriva 2014.1, Debian freeze, trickle, systemd and boot times|
|• Issue 583 (2014-11-03): Ubuntu 14.10, ownCloud, Kylin interview, The Book of PF, Elive's commercial ways|
|• Issue 582 (2014-10-27): GhostBSD 4.0, Tumbleweed and Factory merge, systemd and fork of Debian|
|• Issue 581 (2014-10-20): SparkyLinux 3.5, Fedora's graphics stack, Debian and systemd, OpenBSD 5.6|
|• Issue 580 (2014-10-13): Rolling releases, Arch as best distro, GNOME on Wayland, MINIX 3.3.0|
|• Issue 579 (2014-10-06): PC-BSD 10.0.3, Debian's Jessie freeze, setting up home server|
|• Issue 578 (2014-09-29): Calculate 14, Debian's default desktop, Shellshock vulnerability, practical Tiny Core|
|• Issue 577 (2014-09-22): SymphonyOS 14.1, FreeBSD drops pkg_add, MINIX on ARM, GNU screen|
|• Issue 576 (2014-09-15): PCLinuxOS 2014.08, Mint's documentation, Debian's hardware database, CDE|
|• Issue 575 (2014-09-08): Porteus 3.0.1, Fedora's blivet-gui, Red Hat's Docker, systemd|
|• Issue 574 (2014-09-01): Ubuntu Kylin 14.04, Haiku and Linux kernel, Wayland support, Lumina, Bash completion|
|• Issue 573 (2014-08-25): SolydXK 201407, VPN gateway with FreeBSD, Ubuntu MATE, Raspbian, trusting binary packages|
|• Issue 572 (2014-08-18): ZFSguru 10.1, Fedora's Flock, beta installer for "Jessie", Ubuntu Core, rolling releases|
|• Issue 571 (2014-08-11): HandyLinux 1.6, LMDE update, default desktop in "Jessie", running out of disk space|
|• Issue 570 (2014-08-04): Neptune 4, Kubuntu's KDE Plasma 5, FreeBSD and UEFI, Linux servers|
|• Issue 569 (2014-07-28): Deepin 2014, Ask Fedora, Gentoo and LibreSSL, encrypted package downloads|
|• Issue 568 (2014-07-21): Antergos 2014.06.24, Mint based on Debian stable, upgrading CentOS, BinaryTides|
|• Issue 567 (2014-07-14): Manjaro 0.8.10, PC-BSD jails, Debian and glibc, Fedora's DNF, Xiki and Opera 24|
|• Issue 566 (2014-07-07): LXLE 14.04, OpenBSD's SimpleDE, openSUSE artwork, home security basics|
|• Issue 565 (2014-06-30): Chakra 2014.05, Fedora on BeagleBone, Matthew Miller interview, e-book readers|
|• Issue 564 (2014-06-23): Antergos 2014.05.26 and Q4OS 0.5.11, Debian LTS and glibc, Fedora DNF|
|• Issue 563 (2014-06-16): Mint 17, CentOS 7 pre-release, Debian MATE, accessing encrypted content|
|• Issue 562 (2014-06-09): GoboLinux 015, Gentoo interview, Fedora leader change, climagic tricks|
|• Issue 561 (2014-06-02): OpenMandriva 2014.0, Debian GNU/Hurd, Lubuntu and LXQt, Final Term, TrueCrypt|
|• Issue 560 (2014-05-26): KaOS 2014.04, Wayland and KDE 5 on Fedora, distros with commercial support, DenyHosts|
|• Issue 559 (2014-05-19): VortexBox 2.3, LTS-only Linux Mint, FreeBSD 11 ambitions, KDE 5 beta|
|• Issue 558 (2014-05-12): RHEL 7 Workstation impressions, LXQt and Lumina, Haiku interview|
|• Issue 557 (2014-05-05): Xubuntu 14.04, Ubuntu 14.10 roadmap, Fedora Workstation, ownCloud|
|• Issue 556 (2014-04-28): Ubuntu 14.04, LibreSSL, Lumina desktop, Deepin interview|
|• Issue 555 (2014-04-21): Robolinux 7.4.2, Ubuntu release day stats, Debian security, Porteus update|
|• Issue 554 (2014-04-14): Review of FreeNAS, OpenSSL bug, Fedora.next, Robolinux Stealth VM, measuring memory|
|• Issue 553 (2014-04-07): Puppy 5.7 "Slacko", end of Ubuntu One, file encryption with GPG|
|• Issue 552 (2014-03-31): Tanglu 1.0, Ubuntu GNOME LTS, SliTaz for ARM|
|• Issue 551 (2014-03-24): Linux Mint "Debian" 201403, call for end to proprietary firmware, LVM|
|• Issue 550 (2014-03-17): Review of NixOS 13.10, Lubuntu seeking feedback, Android-x86 4.4-rc1 impressions|
|• Issue 549 (2014-03-10): ClearOS 6.5 and UCS 3.2, Gentoo interview, Ubuntu app contest, Into the Core|
|• Issue 548 (2014-03-03): Review of Mageia 4, FreeBSD console driver, filtering web content, Pitivi fundraiser|
|• Issue 547 (2014-02-24): Chakra 2014.02, Ubuntu privacy, preventing unwanted remote logins|
|• Issue 546 (2014-02-17): Review of PC-BSD 10.0, Red Flag closure, Ubuntu and systemd, SlackE18, Fedora book review|
|• Issue 545 (2014-02-10): Impressions of FreeBSD 10.0, Debian votes systemd, Ubuntu file manager, server security|
|• Issue 544 (2014-02-03): Netrunner 13.12, openSUSE future, Ubuntu Touch in emulator, running commands in multiple places|
|• Issue 543 (2014-01-27): Review of Korora 20, FreeBSD 10.0, DNF, ZFS rescue CD, Bridge Linux interview|
|• Issue 542 (2014-01-20): QupZilla, Ubuntu with MATE, Arch on Raspberry Pi, best applications|
|• Issue 541 (2014-01-13): openSUSE 13.1 and Zentyal 3.3, CentOS joins Red Hat, Bodhi on Chromebooks|
|• Issue 540 (2014-01-06): SMS 2.0.6 and SME Server 8.0, Hawaii desktop, PHR statistics 2013, more on multi-part archives|
|• Issue 539 (2013-12-23): Centrych 12.04.3, Fedora 20 and its spins, dividing archives across multiple discs|
|• Issue 538 (2013-12-16): Mint 16 review, RHEL and CentOS 7 plans, SteamOS, Windows XP replacement suggestions|
|• Issue 537 (2013-12-09): OpenMandriva 2013.0, Gentoo developer interview, project Neon, Linux Mint and security|
|• Issue 536 (2013-12-02): Impressions of openSUSE 13.1, Ubuntu Touch, FreeBSD 10 delay, troubleshooting OS lock-ups|
|• Full list of all issues|
|Free Tech Guides
C/C++ Essential Training
In this FREE video course, Bill Weinman dissects the anatomy of C and C++, from variables to functions and loops, and explores both the C Standard Library and the C++ Standard Template Library.