| 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)
If you've enjoyed this week's issue of DistroWatch Weekly, please consider sending us a tip.
(Tips this week: 0, value: US$0.00)
|• Issue 704 (2017-03-20): ToarusOS 1.0.4, Linux Mint's security record, Debian starts Project Leader election, Ubuntu 12.04 reaches end-of-life|
|• Issue 703 (2017-03-13): SolydXK 201701, CloudReady, Solus announces new features, KDE Connect sends text messages from desktop, openSUSE's YaST module for Let's Encrypt|
|• Issue 702 (2017-03-06): Fatdog64 Linux, elementary OS bundled with new netbook, Haiku announces new features, security and the size of a distro's development team|
|• Issue 701 (2017-02-27): OBRevenge 2017.02, Mageia 6 delays, NetBSD reproducible builds, questions about swap space, trying to steam video on a Raspberry Pi|
|• Issue 700 (2017-02-20): RaspBSD, Debian replaces Icedove with Thunderbird, Fedora's licensing guidlines, tips for switching shells, finding battery charge, getting IP address and killing processes|
|• Issue 699 (2017-02-13): Clear Linux, GhostBSD network utility ported to FreeBSD, Ubuntu coming to Fairphone, elementary OS crowd funding an app store|
|• Issue 698 (2017-02-06): Solus 2017.01.01, comparing containers with portable applicatins, Tails dropping 32-bit support, Debian Stretch enters freeze|
|• Issue 697 (2017-01-30): Subgraph OS 2016.12.30, running Ubuntu on an Android phone, Arch Linux phasing out 32-bit support, Linux Mint testing updated LMDE media|
|• Issue 696 (2017-01-23): GoboLinux 016, remotely running desktop applications, Solus adopting Flatpak, KDE neon using Calamares, TrueOS tests OpenRC|
|• Issue 695 (2017-01-16): Zorin OS 12, Peppermint team fixes installer bug, Debian refreshes Jessie media, Ubuntu improves low graphics mode, Exciting things coming in 2017|
|• Issue 694 (2017-01-09): MX Linux 16, Fedora considers systemd security features, DragonFly BSD to support massive swap space, Ubuntu Touch roadmap, Puppy's newsletter, sudo's password prompt|
|• Issue 693 (2017-01-02): Comparing small distros, fig language, video driver comparsion, Debian+PIXEL, Wayland on FreeBSD|
|• Issue 692 (2016-12-19): Bodhi Linux 4.0.0, Cappsule containers, Calculate's new Utilities package, Solus and Ubuntu MATE build new application menu|
|• Issue 691 (2016-12-12): SalentOS 1.0, openSUSE improves YaST, Fedora considers slower release cycle, KDE neon gets LTS branch|
|• Issue 690 (2016-12-05): Fedora 25, Ubuntu adopts rolling HWE kernel, running Android apps on GNU/Linux, Haiku working toward EFI support|
|• Issue 689 (2016-11-28): openSUSE 42.2, Fedora's upgrade path, plans for Korora 25, transitioning from PC-BSD to TrueOS, Webconverger's reproducible builds|
|• Issue 688 (2016-11-21): Endless OS 3.0.5, KDE neon fixes security hole, FreeBSD's Quarterly Status Report, Rolling release trial #2 concludes|
|• Issue 687 (2016-11-14): NAS4Free 10.3.0.3, Fedora gains MP3 playback, budgie-remix becomes Ubuntu Budgie, Ubuntu flavours compared, Rolling release trial #2|
|• Issue 686 (2016-11-07): FreeBSD 11.0, rolling release trial #2, Debian announces supported architectures, Simplicity switching to antiX base, farewell to Mythbuntu|
|• Issue 685 (2016-10-31): elementary OS 0.4, SUSE gains ARM support, Mint improves language support, Dirty COW explained, Rolling release trial #2|
|• Issue 684 (2016-10-24): Ubuntu 16.10, Linux popularity in different markets, Fedora runs on Raspberry Pi, Ubuntu features live kernel patching|
|• Issue 683 (2016-10-17): Refracta 8.0, making packages for distributions, Alpine switches to LibreSSL, 386BSD website publishes classic code|
|• Issue 682 (2016-10-10): KDE neon 20160915, Android-x86 6.0, Fedora warns of update bug, HandyLinux drops English translation, LXQt benchmarks|
|• Issue 681 (2016-10-03): OpenBSD 6.0, DragonFly BSD to support LibreSSL in ports, systemd denial of service bug, upgraded Mintbox Mini|
|• Issue 680 (2016-09-26): Uruk GNU/Linux 1.0, blocking applications at the firewall, Lenovo controversy, Ubuntu running on the Nextcloud Box|
|• Issue 679 (2016-09-19): OpenMandriva 3.0, 32-bit vs 64-bit performance, openSUSE updates, KaOS unveils first run wizard|
|• Issue 678 (2016-09-12): Apricity 07.2016, Mageia adopts DNF, KDE neon to use Wayland, FreeBSD updates Linux compatibility, creating cron jobs|
|• Issue 677 (2016-09-05): Peppermint OS 7, Manjaro updates leadership, TrueOS becomes rolling release, organizing files, creating torrents|
|• Issue 676 (2016-08-29): Korora 24, Fedora 25 to use Wayland by default, Linux turns 25, PC-BSD becomes TrueOS, finding software licensing information|
|• Issue 675 (2016-08-22): Gentoo LiveDVD "Choice Edition", moreutils, Ubuntu improves terminal convergence, MATE packaged for Openindiana, FreeBSD improves video support|
|• Issue 674 (2016-08-15): Zenwalk Linux 8.0, Ubuntu phone follow-up, Lubuntu transitioning to LXQt, Steam running on FreeBSD|
|• Issue 673 (2016-08-03): noop linux and EasyNAS, Debian's GnuPG switch, Fedora "Flock", using "nice"|
|• Issue 672 (2016-08-01): Ubuntu Phone 15.04, Solus embraces rolling release model, interview with Jane Silber, FreeBSD Quarterly Report|
|• Issue 671 (2016-07-25): Slackware 14.2, Point Linux 3.2, OpenBSD disables usermount, KaOS releases significant changes, Fedora 22 reaches end of life.|
|• Issue 670 (2016-07-18): Linux Lite 3.0, Bodhi team plans 4.0.0, pfSense changes licensing, running software across distributions, Linux Mint upgrade path|
|• Issue 669 (2016-07-11): Linux Mint 18, proving a system is secure, LibreSSL in FreeBSD, Ubuntu plans phasing out 32-bit, pfSense status report|
|• Issue 668 (2016-07-04): Fedora 24, Linux Mint plans for 18.1, FreeBSD and DragonFly BSD improve their file systems, comparing Flatpak, Snap and AppImage|
|• Issue 667 (2016-06-27): GeckoLinux 421, Fedora supports Flatpak, Solus unveils new features, running GNU/Linux on tablets|
|• Issue 666 (2016-06-20): Comparing more live update methods, Ubuntu's snap packages, Antergos drops 32-bit media, GeckoLinux unveils Rolling edition, learning Linux resources|
|• Issue 665 (2016-06-13): BunsenLabs Linux Hydrogen, Fedora 24 delayed, NetBSD grows in size, Clonezilla questions|
|• Issue 664 (2016-06-06): Sabayon 16.05, Debian updates install media, the cost of free software, Qubes explains secure build process|
|• Issue 663 (2016-05-30): Comparing live update methods, Ubuntu MATE's progress, distros debate systemd change, DistroWatch turns 15|
|• Issue 662 (2016-05-23): Clonezilla Live, new Fedora community repository, DragonFlyBSD runs Wayland, a live edition of Slackware and kernel components|
|• Issue 661 (2016-05-16): FreeBSD 10.3, OpenMandriva adopts Clang, Debian adds ZFS packages, PCLinuxOS drops 32-bit and comparing CentOS with RHEL|
|• Issue 660 (2016-05-09): Ubuntu MATE 16.04, Mint's xapps, FreeBSD Quarterly Report, Debian updates 32-bit support, addressing GPL violations|
|• Issue 659 (2016-05-02): Ubuntu 16.04, compiling custom kernels, Cinnamon 3.0, Sabayon launches ARM build, Devuan ships Beta release|
|• Issue 658 (2016-04-25): Kali Linux 2016.1, elementary OS 0.3.2, Debian elects Project Leader, Fedora 24 feature preview, Nard reaches 1.0|
|• Issue 657 (2016-04-18): Redox, Linux Mint improves update manager, planned Fedora 24 features, Ubuntu 16.04 getting Snappy packages|
|• Issue 656 (2016-04-11): Qubes OS 3.1, Whonix offers bug bounties, Puppy's family tree, setting up disk partitions and running bash on Windows|
|• Issue 655 (2016-04-04): Parsix 8.5, Sabayon's Community repository, Red Hat offers free subscriptions, Ubuntu tablets, command line tips|
|• Issue 654 (2016-03-28): PCLinuxOS 2016.03, Using signatures to create a web of trust, Arch Linux rolls out Pacman update, GuixSD packages GNOME|
|• Issue 653 (2016-03-21): Antergos 2016.02.21, Debian prepares for election, a Unix-like OS written in Rust, watching Netflix on FreeBSD|
|• Full list of all issues|
|Free Tech Guides
This FREE 404-page eBook will assist you in making the leap from competent web developer to confidence software engineer.
|Free Tech Guides
Mockito Programming Cookbook
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