DistroWatch Weekly

A weekly opinion column and a summary of events from the distribution world

DistroWatch Weekly

DistroWatch Weekly, Issue 631, 12 October 2015

Welcome to this year's 41st issue of DistroWatch Weekly!
Modern computers and operating systems are complicated, yet hundreds of millions of people use them every day. This means distributions need to not only provide useful features, but it is also important these features be made accessible. This week we begin with a review of Parsix GNU/Linux, a Debian-based distribution which attempts to make Debian easier to use on desktop computers. In our Questions and Answers column we discuss how to easily send commands to multiple computers, making administration easier for both businesses and individuals who run multiple systems at home. In our News section we discuss Manjaro Linux's quest for fresh artwork, Debian dropping efforts to comply with the Linux Standard Base, rumours that Ubuntu may soon support ZFS file systems and conflict over communication styles among the Linux kernel developers. Plus we share the torrents we are seeding and provide a list of releases from the past week. We wish you all a fantastic week and happy reading!

Listen to the Podcast edition of this week's DistroWatch Weekly in OGG (31MB) and MP3 (26MB) formats
• Music credit: Clouds Fly With Me by Matti Paalanen

Feature Story (by Jesse Smith)

Parsix GNU/Linux 8.0

The Parsix project released Parsix GNU/Linux 8.0 in September. The distribution is based on Debian and, in the project's own words, their goal is "to provide a ready to use and easy to install desktop and laptop optimized operating system based on Debian's Testing branch and the latest stable release of GNOME desktop environment."

Version 8.0 of the Parsix distribution is available in 32-bit and 64-bit builds. The 64-bit build of the latest release supports booting on UEFI enabled computers and the distribution ships with version 3.16 of the GNOME desktop. One thing I found strange about the project's release notes is that the first paragraph states Parsix 8.0 is based on Debian's Testing branch. However, the second tells us "This version has been synchronized with Debian Jessie repositories as of September 12, 2015." Since Debian Jessie is the latest Stable release of Debian, not Debian's Testing branch, it raises some questions about where Parsix packages originate. I think Parsix 8.0 is based on Debian Testing, since several key packages (including the GNOME desktop and Linux kernel) have version numbers which are more recent than the same packages in Debian's Stable repositories.

The live disc image for Parsix 8.0 is 1.2GB in size. Booting from this media brings up a menu asking if we would like to explore Parsix's live disc in graphics mode or text mode. There is also a menu entry which will check the media's integrity. Taking the graphic mode option boots Parsix and presents us with the GNOME desktop. The wallpaper is a beautiful photograph of the sky during sunrise/sunset. There are icons on the desktop for launching the project's system installer and opening a file manager. A panel at the top of the screen shows us the application menu, the current date & time and the system tray. I found that when I clicked on the application menu button the desktop would crash. Usually the desktop would automatically restart, but sometimes GNOME would display an error message indicating it could not recover and send me to a graphical login screen. I could sign back into the desktop from the login page using the password "parsix". Once I had signed back into the desktop, I found that sometimes I could access the application menu and other times the desktop would crash again. While I was still exploring the live desktop environment a notification appeared letting me know software updates were available in the project's repositories. I decided to ignore these updates until after I had installed the distribution.

Parsix offers users a graphical system installer. When the installer is first launched we are instructed to make sure an empty partition is available for the operating system. The installer then offers to launch a partition manager for us. The partition manager the installer opens is GParted, a program which provides a nice graphical interface for working with our storage disks and partitions. Once we have divided up our disk the way we want, we can close GParted and the Parsix installer moves on to the next step. We are asked if we are performing a fresh installation or upgrading an existing copy of Parsix. The installer next asks which partition we would like to use to house the operating system. Once we have selected a partition we are asked which file system we would like to use on our root partition. The presented options are ext3, ext4, JFS and Reiser. I found these file system choices to be unusual as they include perhaps the two most widely used and two least common file systems with nothing in between. The following steps get us to create a user account for ourselves and protect the root account with a password. Parsix then shows us a list of actions it will take and it asks for our permission to begin the installation. Once the installer has copied its files to our hard drive, its window closes and we are returned to the GNOME desktop.

I tried running Parsix on a physical desktop computer and in a virtual machine powered by VirtualBox. Parsix refused to boot on the physical computer, something which surprised me as this same computer was also running Debian at the same time as I was writing this review. I'm always a little disappointed when a child distribution doesn't run on the same equipment as its parent. I also noted Parsix, despite the release notes mentioning UEFI support, was not compatible with my system when running in UEFI mode (as opposed to BIOS compatibility mode). The distribution fared better in the VirtualBox environment. The distribution booted and its various components worked in VirtualBox, though I experienced some odd behaviour I'll talk about later. Parsix did not integrate into my virtual environment and I ended up installing VirtualBox's guest modules so I could run Parsix using my screen's full display resolution. The GNOME desktop tended to be slow to respond in the virtual environment and applications were usually sluggish to respond to input. When logged into the GNOME Classic desktop, Parsix used approximately 430MB of memory.

Booting our new copy of Parsix brings us to a graphical login screen. From here we can sign into one of four sessions, including GNOME Shell, GNOME Classic, GNOME on Wayland and TWM. The TWM option launches a very minimal window manager which most people probably will not use, but it might be useful for performing system recovery if our main desktop stops working. Selecting the GNOME on Wayland option would cause the screen to go blank for a few seconds and then I would be returned to the login page. I tried the GNOME Shell session a few times, but I found every time I tried to access GNOME's Activities menu to launch an application the desktop would crash. Sometimes GNOME Shell would simply restart itself, but other times I would be evicted to the login page and I soon gave up on using GNOME Shell. This meant, for the bulk of my trial, I was using the GNOME Classic desktop environment.

The GNOME Classic desktop displays its Applications and Places menus at the top of the screen on the left side. Over in the upper-right corner we find the system tray. At the bottom of the display we find the task switching panel. The first time I logged into GNOME Classic, and a few times later during the course of my trail with Parsix, I saw a pop-up window after the login screen, but before the desktop appeared. This window would request my password in order to "set the network proxy" so the system could begin performing downloads. I have never observed any other Linux distribution display a password prompt after login, but before the desktop environment appears. Frankly, the pop-up window looks like common Windows malware and since no proxy was in use, the window should not have appeared at all. Another aspect of the GNOME Classic desktop I found annoying was that clicking the "Activities Overview" button (accidentally or otherwise) in the Applications menu would consistently cause the desktop environment to crash, sending me back to the login screen.

From time to time while I was running Parsix a notification would appear on the desktop letting me know there were package updates available in the distribution's repositories. I tried a few approaches to updating the software on my system. The first thing I tried was running the Package Updater program from the application menu. Unfortunately, Package Updater failed to launch and there was no error or indication of why the program was not working. Next, I tried another menu entry called Packages. This program also failed to load. Next on my list was the Software application, but while this program launches and it has a tab for dealing with software updates, there were no new packages listed in the updates tab. According to the Software program, my system was up to date. (I'll come back to talk more about Software later.) Finally, I opened a virtual terminal and used the apt-get command line program to update the system. Early in the week there were 35 new packages waiting in Parsix's repositories, totalling 43MB in size. These updates were all applied to the system without any problems. Parsix, I noted, maintains its own package repositories.

On the second day of my trial I logged into my Parsix account and was greeted with another notification that said there were more software updates available. I refreshed my local package database and again ran apt-get to acquire the updates, only to learn there were no new software updates available.

Earlier I mentioned Parsix includes a software manager, appropriately named Software. The Software application deals with desktop applications (almost) exclusively and divides packages into categories such as Internet and Office. Clicking on these categories causes a list of of desktop programs in the given category to be displayed on the right side of the window while additional categories appear on the left. Each program is listed with its name, a short description and an icon. Clicking on a specific program brings up a page with a screen shot and some technical details on the software, such as the package's size. The user is presented with an Install or Remove button at the top of the page. I found I could install new packages easily enough, but I was unable to use Software to remove packages. Clicking the Remove button would bring up a window asking for confirmation the selected application should be removed from the operating system. Clicking the confirmation button simply returned me to the program's information page and no action was taken. I further found it strange that Software shows us such a small selection of programs. Each category typically only featured two or three items, which meant I usually had to use apt-get to install software, even common desktop applications. Earlier I mentioned Software deals with desktop software almost exclusively. The exception I found to this rule was a command line program for browsing the web via a text-only interface.

The distribution ships with a number of useful programs, including the Iceweasel web browser (with Adobe's Flash plugin), the Filezilla file transfer application, the Empathy messaging application and the Polari IRC client. Parsix also ships with the Transmission bittorrent software, LibreOffice, a dictionary and the Evolution e-mail application. Network Manager is available to help us get on-line. Parsix includes the GNU Image Manipulation Program and Inkscape in the default installation. We are also treated to a couple of small games. The Brasero disc burning software, the Cheese webcam application and the VLC multimedia player are included too. Parsix ships with multimedia codecs, enabling us to play most media files. The distribution provides us with the Midnight Commander file manager, a services manager and an application for managing user accounts. I also found a document viewer, an archive manager, system monitor and text editor on the system. Parsix ships with Java and the GNU Compiler Collection. The distribution ships with systemd and version 4.1.6 of the Linux kernel.

Parsix presented me with a number of quirks during my time with the distribution. For example, about once in every three times I attempted to either shut down or reboot the operating system, Parsix would prompt me for my password. Of the other two-thirds of the time, when I was not prompted for my password, about half of those times Parsix would shut down properly. The remaining times, the system would simply ignore my shut down request and return me to the desktop.

Another quirk of the operating system presented itself when I opened the services manager. This application is available to help us enable or disable background services. Whenever I opened the services manager, no services were listed. The window was always blank, rendering it useless.

Perhaps the most unusual aspect of running Parsix was the way the distribution handled my name. During the installation process, the system installer asks us for our name and, from the name provided, suggests a user name for our account. I zipped through the first time, using "Jesse" as my proper name. Once the system had been installed and I started using the command line I noticed that while my name appeared as "Jesse" on the login screen, my account's user name was "jjesse". I assumed this was a typo on my part. Later in the week, when I re-installed the operating system, I went through the system installer more slowly. I made sure my proper name was entered as "Jesse" and found that the installer then suggested that my user name be "jjesse". I'm not sure why this happens, but it was a little frustrating as it meant the first time I installed Parsix doing anything involving my user name required that I intentionally misspell my own name. The second time through I corrected the suggested user name in the installer and avoided the issue.

Conclusions

Running Parsix 8.0 was a disappointing experience for me. It seemed as though every aspect of the distribution had serious bugs of one kind or another. From the system installer mangling my user name, to the Software package manager not handling updates and only providing access to a small group of applications, to the distribution refusing to run on my desktop computer. I experienced regular crashes from the GNOME desktop environment and Parsix did not work with my computer's implementation of UEFI. The GNOME Shell desktop crashed frequently enough to be impractical to use and the GNOME Classic desktop was slow to respond in my virtual environment, even with video acceleration enabled.

Perhaps the only nice feature Parsix presented was the default selection of software. The distribution ships with several useful desktop applications and multimedia support. It is unfortunate that these programs are mixed in with programs which simply refused to work, such as the Package Updater and the Services manager which, strangely, does not list any available services.

Quite often when I have poor experiences with a distribution readers will e-mail to ask if I checked to make sure the installation media wasn't corrupted while others might suggest my hardware was not working properly. I would like to head off those questions up front. I checked and then double-checked that the Parsix media not only passed its own integrity test, but the installation media also matched the project's published checksums. I perform the installation three times during the week to try to rule out problems during the install process. While I was trying to test Parsix 8.0 on this machine, and in a VirtualBox environment, I also ran Debian (Parsix's parent) on the same machine and in a virtual machine powered by VirtualBox. Debian displayed none of the issues I experienced with Parsix. Debian, in fact, worked smoothly and quickly on the same hardware Parsix was unable to boot on, which I found curious.

I ended up cutting my trial with Parsix short after five days. The system was too slow and too unstable to be practical for work and clicking on the wrong menu item would sometimes log me out, losing whatever I had been working on at the time. A few years ago I felt as though Parsix was one of the better Debian-based desktop projects available, but I'm sorry to say Parsix 8.0 caused me one headache after another.

* * * * *

Hardware used in this review

My physical test equipment for this review was a desktop HP Pavilon p6 Series with the following specifications:

The Manjaro Linux team has announced they will soon be changing the distribution's artwork and have invited members of the community to submit new designs. "Manjaro will get some great innovations soon and maybe also a new logo. We are asking our great community to help us choose a new design. If you are a designer or you have some graphical skills, please feel free to propose a logo draft. Help us and send us great logos, ideas and choose your favourite designs. Although the inspiration for the name originates from Mount Kilimanjaro. Maybe we can include a mountain into the new logo as we already tried in our drafts." Sample artwork is available in the project's blog post.

* * * * *

The Linux Standard Base (LSB) is a set of guidelines which distributions can follow in order to give software developers a common platform to target that will be the same across multiple distributions. Over the years, most distributions (and application developers) have generally ignored the LSB and the Debian project appears to be dropping support for the standard. Didier Raboud suggested scaling back Debian's LSB compliance, noting that the standard is seldom used: "The crux of the issue is, I think, whether this whole game is worth the work: I am yet to hear about software distribution happening through LSB packages. There are only eight applications by six companies on the LSB certified applications list, of which only one is against LSB >= 4. Amongst the distributions, RHEL 7.0 is LSB 4.1, and Oracle 6, RHEL 6.0 and Ubuntu 9.04 are LSB 4." The Debian developers are planning to make small adjustments to insure software continues to work on their distribution while dropping time consuming efforts to comply with the specific guidelines in the LSB.

* * * * *

Last week rumours swirled around the idea that the Ubuntu distribution may soon include out-of-the-box support for the advanced ZFS file system. ZFS includes many attractive features, including file system snapshots, on-line resizing of storage volumes and easy manipulation of multiple drives. The rumours all appear to be derived from a series of mailing list posts, one of which is from an Ubuntu user asking about adding ZFS support to Ubuntu Core and a response from Ubuntu's founder, Mark Shuttleworth, saying, "If it's ZFS you're after, it will be included in Ubuntu as standard in due course." Though not exactly official, this does follow Debian's investigation into the legal status of ZFS and confirmation that Debian, Ubuntu's parent distribution, could legally ship ZFS support enabled by default.

* * * * *

Some less happy news came to light last week when Sarah Sharp, the developer who introduced USB 3.0 support into Linux, announced her resignation from kernel development citing "This came about after a very long period of thought, and a lot of succession planning. I didn't take the decision to step down lightly. I felt guilty, for a long time, for stepping down. However, I finally realized that I could no longer contribute to a community where I was technically respected, but I could not ask for personal respect. I could not work with people who helpfully encouraged newcomers to send patches, and then argued that maintainers should be allowed to spew whatever vile words they needed to in order to maintain radical emotional honesty." Later in the week, Matthew Garrett also posted that he would avoid communicating on the Linux kernel mailing list: "In the end it's a mixture of just being tired of dealing with the crap associated with Linux development and realizing that by continuing to put up with it I'm tacitly encouraging its continuation, but I can't be bothered any more." These resignations from Linux development follow a similar exit from Con Kolivas a few years ago who was lead developer on a process scheduler which optimized desktop performance. These exits have raised questions regarding the management style of the lead kernel developers and Linux's vaguely defined code of conduct.

Questions and Answers (by Jesse Smith)

Sending commands to multiple servers

Managing-many-servers asks: I have started maintaining multiple servers and it's tedious to connect and type commands into each one, one after another. What tools can help with this situation?

DistroWatch answers: There are a number of tools that can help you work with multiple servers (I'm going to assume Linux and/or BSD servers in this case). The specific tool you will want to use may depend on exactly what you are trying to accomplish and just how many servers you are looking after.

For instance, if you want to run a single command that will be performed on a relatively small number of servers and you want to collect the output from the command, then you might want to use Distributed Shell (dsh). The dsh command will connect to a group of servers over secure shell, typically one at a time, perform a single command and then display the output on your local terminal.

Using dsh is fairly straight forward and the software is available in most distribution repositories. Essentially we create a file, ~/.dsh/machines.list, with a list of hosts we want to connect to. Place the names of the servers in the file, one server per line. Then we can run a command on all the servers in the machines.list file and see the resulting output by running "dsh -a" followed by a command. This example connects to each computer in our machines.list file and displays the uptime for each server:

dsh -a uptime

A similar, but more powerful tool, is ClusterSSH (cssh). The cssh command uses a similar setup to dsh. We begin by creating a text file in the location ~/.clusterssh/clusters. This file contains groups of servers we may wish to connect to. For example, let's say I have two groups of servers I manage. One group at home and another at an office. I might have a clusters file which looks like this:

With the above file in place, I can connect to either group of computers by running a command such as:

cssh office

The above command will open three terminals on my desktop. These terminals will show my secure shell connections to the web, mail and storage servers in my group of "office" computers. I can then type commands in the cssh window and the keystrokes will be echoed on each of the remote computers. ClusterSSH is especially useful in situations where I want to perform some simple maintenance on a group of computers and make sure everything is proceeding as planned.

While Distributed Shell is good for performing status checks, such as running "uptime" or "df -h" to check on system resources, ClusterSSH is better for making changes to the system, such as performing software upgrades on every server at once or changing the same configuration file on twenty different computers at the same time.

However, often times what we really need is not a way to send the same commands to multiple servers, but a way to make sure each server has the same up to date configuration. Ideally, once a server has been set up, we should not need to connect and run commands on it all that often. Instead, we usually want to automate daily tasks with cron jobs and have a way to automatically push new configurations to each server. One simple and free tool to do this is git. While git is usually used as a way to manage source code, it does a pretty good job of handling any text files, including configuration files. Setting up a git repository and having each server pull configuration changes from the repository will likely save a lot of time in the long run. More information on using git can be found in the project's documentation.

Finally, though this is not a tool I have used personally, I have heard several people recommend Puppet for managing large scale deployments. Puppet is quite a bit more involved than the other utilities I have mentioned and probably only makes sense when dealing with dozens or hundreds or servers. However, Puppet Labs offers a good deal of documentation and virtual machines to use as learning tools. For people dealing with a large amount of infrastructure, this is probably a good tool to have in the toolbox.

* * * * *

Last week we mentioned a command line trick for finding unaccessed files buried in the hidden directories of a user's home. One of our readers asked:

In your last DistroWatch article this command was used: "for i in .[^.]?*; do find "$i" -depth -atime +365 -type f -print; done"

I'm not very good with regular expressions. Can you put a few words
around why the [^.]? exists in your regular expression? I don't understand what they filter or include.

The .[^.]?* expression basically looks for any directories where...

The directory begins with a dot. We want to work with hidden directories only.

The second character is not a dot. The [^.] combination is a fancy way of filtering out the "." character. This avoids including the ".." directory.

The question mark means we want to only find directories which start with a dot and then include at least one more character. This means the current directory "." is not included in the searches, it's too short. And ".." is not included because the second character is a dot. But ".a" would be valid since it starts with a dot and then has a non-dot character.

The trailing "*" matches anything beyond what we have already specified. So not only would ".a" be okay, but ".a122334abc" would also match.

Bittorrent is a great way to transfer large files, particularly open source operating system images, from one place to another. Most bittorrent clients recover from dropped connections automatically, check the integrity of files and can re-download corrupted bits of data without starting a download over from scratch. These characteristics make bittorrent well suited for distributing open source operating systems, particularly to regions where Internet connections are slow or unstable.

Many Linux and BSD projects offer bittorrent as a download option, partly for the reasons listed above and partly because bittorrent's peer-to-peer nature takes some of the strain off the project's servers. However, some projects do not offer bittorrent as a download option. There can be several reasons for excluding bittorrent as an option. Some projects do not have enough time or volunteers, some may be restricted by their web host provider's terms of service. Whatever the reason, the lack of a bittorrent option puts more strain on a distribution's bandwidth and may prevent some people from downloading their preferred open source operating system.

With this in mind, DistroWatch plans to give back to the open source community by hosting and seeding bittorrent files. For now, we are hosting a small number of distribution torrents, listed below. The list of torrents offered will be updated each week and we invite readers to e-mail us with suggestions as to which distributions we should be hosting. When you message us, please place the word "Torrent" in the subject line, make sure to include a link to the ISO file you want us to seed. To help us maintain and grow this free service, please consider making a donation.

The table below provides a list of torrents we currently host. If you do not currently have a bittorrent client capable of handling the linked files, we suggest installing either the Transmission or KTorrent bittorrent clients.

Archives of our previously seeded torrents may be found here. All torrents we make available here are also listed on the very useful Linux Tracker website. Thanks to Linux Tracker we are able to share the following torrent statistics.

Proxmox, a company which builds commercial computing solutions based on Debian GNU/Linux, has released Proxmox Virtual Environment 4.0. The new release includes support for Linux Containers (LXC), Bash shell completion and IPv6 support. "We are proud to announce the final release of our Proxmox VE 4.0 - based on the great Debian Jessie. Watch our short introduction video, What's new in Proxmox VE 4.0? Linux Containers (LXC): The new container solution for Proxmox VE is fully integrated into our frameworks, e.g. this includes our advanced storage plugins like ZFS, Ceph or even DRBD9, full IPv6 support and much more. LXC works with all modern and latest Linux kernels. Bash completion: All our CLI tools support now advanced bash completion, Linux experts will just love it! New Proxmox VE HA Manager for High Availability Clusters: The new HA manager dramatically simplifies HA setups - it works with only a few clicks on the GUI, test it! And it eliminates the need of external fencing devices, watchdog fencing is automatically configured." People who are already running Debian Jessie can install Proxmox Virtual Environment 4.0 on top of their existing installation. Further information can be found in the distribution's release announcement.

Barry Kauler has announced a new release of the Quirky distribution, a sister project to the popular Puppy Linux distribution. This release includes mostly package updates, including a move to version 4.1.7 of the Linux kernel. This release also reorganizes the files of the Xorg graphical software to better match the organization of other distributions. "The latest incarnation is version 7.2. A brief statement about this release: Since the previous release of Quirky, there have been steady improvements, nothing really dramatic, but lots of things here and there. As well, various packages have been updated or improved. Significant updates include SeaMonkey and Samba, and a new application, Dia. One new minor application is PupWhoIs, a front-end for the 'whois' utility. A major structural change is the doing-away with /usr/X11R7, the path where T2 compiled Xorg into -- now, Xorg is in /usr, in line with all other distros. The kernel has been upgraded to version 4.1.7." Further information can be found in the project's release announcement and in the release notes.

The NetBSD Project has announced the release of NetBSD 7.0. NetBSD is a highly portable operating system which runs on most CPU architectures. The latest release features several improvements, including better graphics performance, multiprocessor ARM support and NetBSD has been tested on Raspberry Pi 2 and BeagleBoard mini computers. This release also includes the blacklist daemon (blacklistd), a service which protects network services from brute force attacks. "The NetBSD Project is pleased to announce NetBSD 7.0, the fifteenth major release of the NetBSD operating system. This release brings stability improvements, hundreds of bug fixes, and many new features. Some highlights of the NetBSD 7.0 release are: DRM/KMS support brings accelerated graphics to x86 systems using modern Intel and Radeon devices. Multiprocessor ARM support. Support for many new ARM boards: Raspberry Pi 2, ODROID-C1, BeagleBoard, BeagleBone, BeagleBone Black, MiraBox, Allwinner A20, A31: Cubieboard2, Cubietruck, Banana Pi, etc. Freescale i.MX50, i.MX51: Kobo Touch, Netwalker, Xilinx Zynq: Parallella, ZedBoard..." A full list of changes and improvements can be found in the project's release notes.

Many of us use productivity suites, either at work or at home. Some of us like to get lots of features, others like to keep things simple and light and some like to be able to customize their productivity software. This week we would like to know: what is your preferred open source productivity software?

You can see the results of last week's poll on acquiring installation media here. All previous poll results can be found in our poll archives.

Favourite productivity suite

Calligra:

75 (3%)

GOffice:

39 (2%)

LibreOffice:

1900 (77%)

OpenOffice:

101 (4%)

The default on my distro:

99 (4%)

Other:

146 (6%)

None:

104 (4%)

DistroWatch.com News

Glossary of open source terms added

In the open source community we tend to throw around a lot of technical terms. We talk about software licenses, computer hardware, different package formats and kernels. Newcomers to the community can be understandably overwhelmed with the jargon and we frequently encounter people who want clarification on what certain terms mean.

In an attempt to make things easier on people who are new to our community we have created a glossary of technical terms people tend to use in the open source community, especially in relation to Linux and BSD. This glossary can be accessed through the Glossary link at the top of this website.

The glossary is still a work in progress, so please feel free to send us suggestions for new technical terms which can be added to the list.