OpenELEC is a Linux-based distribution designed to act as a media hub and, in particular, to run the Kodi media software. (Kodi was previously named XBMC.) The Kodi software essentially turns the computer into a dedicated media centre which can either play media directly or through an attached television. The OpenELEC distribution provides a range of builds for x86-powered computers, Raspberry Pi and WeTek devices, along with a few other platforms.
The installation images we download from OpenELEC are compressed disk images which can be written to USB thumb drives or SD cards. There do not appear to be any ISO images which would be suitable for writing to a CD or DVD.
Since I had previously experimented with OpenELEC on my Raspberry Pi computer which features an ARM processor, I decided to shift focus and run OpenELEC 7.0.0 on a laptop computer, running on a 64-bit x86 processor. I downloaded the 221MB compressed disk image which, when unpacked, expanded to 548MB. I then copied this image file to a USB thumb drive and used it to boot my laptop.
Booting from the OpenELEC media brought up a series of text menus which asked if I would like to install a fresh copy of the distribution or upgrade an existing installation. Selecting the fresh install option brought up a menu asking me to select which hard drive would host my new copy of OpenELEC. I selected my hard drive and a warning appeared letting me know any data on the disk would be lost when OpenELEC was installed.
I opted to proceed and, a minute later, the installer announced it was finished. From there I removed my thumb drive and rebooted the computer. At this point I ran into a wall as OpenELEC failed to boot. I was a little disappointed as my past experimented with OpenELEC 5.0.8 had gone well.
OpenELEC's latest version looks enticing and I've had good luck with the distribution before, but this time around the system did not play well with my laptop so I moved on to a new project I had not tried before.
* * * * *
I next turned my attention to a distribution which has only recently been added to the DistroWatch database: Clear Linux. The Clear Linux distribution is unusual in a few ways. For one, the project is not designed to be a full featured or general purpose operating system; Clear Linux focuses on performance more than features. The distribution is fairly minimal and is designed with cloud computing in mind, though it may also be used in other areas, particularly on servers. The project's website states:
The Clear Linux Project for Intel Architecture is a distribution built for various cloud use cases. We want to showcase the best of Intel Architecture technology and performance, from low-level kernel features to complex applications that span across the entire OS stack. We're putting emphasis on power and performance optimizations throughout the operating system as a whole... Our aim was not to make yet another general-purpose Linux distribution; sometimes lean-and-fast is better than big-and-universal.
Another aspect of Clear Linux which sets it apart is the distribution does not handle software the same way most other Linux distributions do. Instead of upgrading thousands of individual packages, the Clear Linux operating system gets upgraded as a whole. We do not upgrade the desktop or our text editor individually, with Clear Linux we upgrade the entire operating system from one version to the next. This makes Clear Linux a sort of unified rolling release operating system. We can add or remove software, but these components (called "bundles" rather than "packages") encapsulate a piece of software and its dependencies. Again, the project's website explains:
We do not deploy software through packages as many distributions do. Instead, we provide "bundles" that each contain a set of functionality for the system administrator -- functionality that is enabled by composing all the required upstream open source projects into one logical unit: a bundle.... There is another notable difference between package-based distributions and the Clear Linux OS for Intel Architecture. On a package-based OS, a system administrator can update each individual package or piece of software to a newer (or older!) version. In the Clear Linux OS for Intel Architecture, an update translates to an entirely new OS version, containing one or many updates; it is not possible to update a piece of the system while remaining on the same version of Clear Linux.
Clear Linux is available in several builds for various virtual environments, including KVM, Azure and Hyper-V. However, the build I wanted to try on my laptop was the "Live" edition which can be run from a USB thumb drive. I feel it worth mentioning the Live edition collects and sends telemetry data back to the project's developers.
The Live edition of Clear Linux was a 211MB download which gave me a compressed image file. Unpacking the downloaded file resulted in a 5,185MB (approximately 5GB) image file which I could then transfer to a USB thumb drive. I plugged the drive into my laptop and attempted to boot Clear Linux. I found the distribution failed to boot when my laptop was run in legacy BIOS mode, but Clear Linux booted without issue when running in UEFI mode.
Clear Linux's Live edition boots very quickly, taking just a few seconds to bring us to a text console with a login prompt. From here we can sign into the root account without a password. The system insists on getting us to create a password for the root account and we cannot complete logging in until a suitable password is provided. This caused me a little frustration as Clear Linux insisted on a long password that was not based on a dictionary word, it had to be complex and not based on any recognizable pattern. It took me more than a few tries to come up with something the distribution would accept.
Once we get signed in we find ourselves in a very minimal environment. Clear Linux basically just runs a few systemd background services and the login terminal. There are only about a dozen processes running in total, using about 51MB of memory. The distribution features the GNU command line utilities, the OpenSSH secure shell service and Python. I intentionally downloaded a version of Clear Linux which was a few versions out of date to test the upgrade functionality. Version 12100 of the operating system used systemd 231 and version 4.8.12 of the Linux kernel. There are no manual pages or compiler and there is no graphical environment. The distribution takes up about 914MB of disk space.
At first, the root account is the only user on the system. There are not even any other accounts for background services as is common on other distributions. We can add other users to the system using the useradd command line program.
When running on my laptop, I noticed Clear Linux did not recognize my wireless network card, but I was able to plug into a wired connection and use the Ethernet port. Clear Linux automatically sets up a wired network connection and uses Google's DNS servers to resolve hostnames.
Since Clear Linux starts us off with a minimal environment, we will likely want to install new software (bundles) from the distribution's software repository. Installing new bundles, removing unwanted bundles and upgrading the operating system are all tasks handled by a command line program called swupd. To check for new versions of the operating system we can run swupd check-update. This will display the version of the operating system we are using (12100 in my case) and display the version number of the latest release, such as 12400. We can then run swupd update to grab the next version. There is no prompt to confirm the action, swupd simply proceeds. I found upgrades happened fairly quickly, requiring just a few minutes.
To find new bundles we may want to install we can run swupd bundle-add --list. This shows us a simple list of available bundles. The names of these bundles can be short and a bit cryptic and there are no detailed descriptions of bundles so far as I could find. Some item names are fairly straight forward, like the php bundle installs the PHP development language. But I wasn't sure what bat was, or what the differences were between the iot, iot-base and iot-extras bundles.
I noticed there was a bundle for the Xfce desktop. This package does install the components of the Xfce desktop environment, but I was unsuccessful in getting the desktop environment to launch on my laptop.
The swupd software manager works quickly and with very little output. This can make it look like the software manager has locked up, but it always successfully completed its tasks while I was experimenting with it. I was able to install a few tools and experiment with them and found Clear Linux to be stable and fast, as advertised.
I was pleased to note changes to the operating system are persistent across reboots with the changes and upgrades I made being written to the USB thumb drive. All in all, I felt like Clear Linux was a cousin to RancherOS which I explored in my article on small Linux distributions. Like RancherOS, Clear Linux focuses on being a small platform on which we can add new bundles, containers or services. It's probably not an operating system a person would run at home, at least not on a desktop computer, but Clear Linux's performance and simplified software management does make it an appealing option for cloud and server deployments. If you are interested in squeezing more performance out of a server system, I recommend looking through the distribution's documentation as it has several helpful hints and tutorials for setting up services.
* * * * *
Hardware used in this review
My physical test equipment for this review was a de-branded HP laptop with the followingspecifications:
Processor: Intel i3 2.5GHz CPU
Display: Intel integrated video
Storage: Western Digital 700GB hard drive
Memory: 6GB of RAM
Wired network device: Realtek RTL8101E/RTL8102E PCI Express Fast