Chapter 9. Ubuntu-Related Projects and Derivatives

Ubuntu is not merely a complete operating system; it is also the center of a growing ecosystem of distributions. Some, referred to as the partner projects, work closely with and within Ubuntu. Others prefer to work on the edges of the Ubuntu project by developing official Flavors, which share the Ubuntu software sources but are created to highlight a specific selection of software or use case, such as the Ubuntu Studio project, which focuses on multimedia creation and editing. Others, like the Lubuntu project, are created by a community of users with specific desires.

Still others are created for reasons connected to the international nature of Linux and open source software. While most Ubuntu development happens in English, there are large developer and user communities in other languages and countries. Thus, a derived distribution might spring up to satisfy that need. There are derived distributions targeted at Christians, children, people with slow computers, and people who prefer to have an Ubuntu system optimized for any of several alternative user interfaces or for use in several different schools and government bureaucracies around the world. Should you use any of these over Ubuntu? We can’t answer that question for you. Some of these projects are fully within and, as a result, not mutually exclusive from Ubuntu; others are based on Ubuntu, but distinct projects. One may be more appropriate than another depending on your preferences or circumstances. You can mix, match, and sample these distributions until you find one that works well for you. As we mentioned in Chapter 1, Ubuntu sees these derivatives as a sign of a healthy and vibrant community. One of the goals of the project is to make it easier for this type of distribution to appear. We can all expect to see more of them in the future.

Recognized Flavors

Recognized flavors (Figure 9-1) release on the same schedule, share a common repository of packages, and work in close relation with Ubuntu. At the time of this book’s publication, there were nine officially recognized flavors—Xubuntu, Ubuntu Studio, Mythbuntu, Kubuntu, Edubuntu, Lubuntu, Ubuntu Kylin, Ubuntu GNOME, and Ubuntu MATE—which are discussed in more depth later in this chapter. Canonical supplies these recognized flavors with infrastructure, daily ISO build and publish resources, coordination with the Ubuntu release, and support after the release. However, there are also certain services that Canonical does not offer for these recognized flavors: automated ISO or upgrade testing, fixing of packages not in Ubuntu desktop or server images, security updates of packages not in main, publishing on http://releases.ubuntu.com, and mastering of the CD or USB images. It is now the responsibility of each of the recognized flavor communities to take ownership of those services.

Image

Figure 9-1 Ubuntu.com Flavors download page

Like Ubuntu, each of these recognized flavors has vibrant communities that help develop it, maintain it, test it, support it, advocate on its behalf, and more. Each has Internet Chat Relay (IRC) channels on freenode.net, mailing lists, Launchpad teams, forums, wiki pages, and Web sites for users to actively participate in. More information on these resources is listed under each recognized flavor section, and further general information can be found at https://wiki.ubuntu.com/RecognizedFlavors.

Kubuntu

Kubuntu (Figure 9-2) is the first and oldest of all the partner projects. First released alongside Ubuntu 5.04, Kubuntu, which means “toward humanity” in Bemba, builds on the strengths of the K Desktop Environment (KDE) rather than on Unity as Ubuntu does. It strives to take the best of Ubuntu and the best of the KDE to produce a great Linux distribution.

Image

Figure 9-2 Kubuntu 16.04 desktop

Like Ubuntu, Kubuntu makes the following commitments: Kubuntu will provide the very best translations and accessibility infrastructure that the free software community has to offer; Kubuntu will always be free of charge, and there is no extra cost for an “enterprise” version; and Kubuntu will always provide the latest and best software from the KDE community.

Kubuntu is a complete desktop but one built around KDE and Qt. Kubuntu opts for a more traditional blue and makes only a few other visual changes. The project is led by the Kubuntu Council (an elected group of developers) and an army of volunteers. The current Kubuntu Council members can be found at https://launchpad.net/~kubuntu-council.

Edubuntu

Edubuntu (Figure 9-3) is a version of Ubuntu for use in schools and other educational environments. It uses the thin client technology of the Linux Terminal Server Project (LTSP) as well as a number of programs aimed at the educational market, such as GCompris and the KDE Education suite. In 2016, instead of doing a 16.04 release, the Edubuntu project committed only to continuing support for release 14.04 through the end of its life cycle in 2017.

Image

Figure 9-3 Edubuntu 14.04 desktop

One of Edubuntu’s unique features is the inclusion of the LTSP in an easy-to-use, out-of-the-box installer. LTSP uses a different method of deploying clients over a network than is used in traditional computer deployments. Instead of full-powered computers, LTSP uses thin clients—that is, less capable, cheaper computers that connect to a larger server and have it do all the processing work. LTSP is covered in greater detail in The Official Ubuntu Server Book, also available from Prentice Hall.

For most readers of this book, Ubuntu is an alternative operating system for an extraordinarily exciting generation of users. No team or project within Ubuntu has done more to target, support, and grow this group of users than the Edubuntu project.

While the Ubuntu, Kubuntu, and other desktop-focused flavors highlight the products of the GNOME, KDE, and other communities, the Edubuntu project aims to provide the best of everything in Ubuntu—properly tailored for use in schools and as easy to use as possible.

Lubuntu

Lubuntu (Figure 9-4) gained its official recognized flavor status during the 11.10 release cycle and strives to provide an even lighter and faster desktop by using the Lightweight X11 Desktop Environment (LXDE), by default, in place of GNOME, KDE, or Xfce. While LXDE can be built on many current Linux distributions, it is the native environment of Lubuntu alone.

Image

Figure 9-4 Lubuntu 16.04 desktop

Lubuntu is targeted at “normal” PC and laptop users who are running on low-spec hardware and who may not know how to use command-line tools. In most cases, they just don’t have enough resources for all the bells and whistles of the “full-featured” mainstream distributions.

Xubuntu

Xubuntu (Figure 9-5) is a version of Ubuntu built on top of the Xfce desktop environment. In Xubuntu, Xfce and its associated applications play a role analogous to KDE in the context of Kubuntu. Xfce is small and lightweight compared to the much fancier Unity, GNOME, and KDE. It uses less memory and fewer CPU cycles than any of the alternatives in a normal configuration. While this means that Xubuntu is often seen as having fewer features or being less user-friendly than Ubuntu or Kubuntu, it also means that it runs faster, is more responsive, and tends to run very quickly on older or less powerful computers. Xubuntu is also more flexible when it comes to full customization of the desktop, from placement of menus and panels to inclusion of a variety of panel applets. As a result, Xubuntu has been used frequently by computer recyclers, by the owners of old computers, and by those who just want to squeeze out better performance from their hardware using a more efficient interface.

Image

Figure 9-5 Xubuntu 16.04 desktop

Like Kubuntu, Xubuntu is community driven and began outside the project in the universe repository of Ubuntu. In releases 5.04 and 5.10, Xfce 4 was supported by a special Xfce Team in Ubuntu. Due to the great work done on Xfce, Xubuntu was brought into the fold and became Ubuntu’s third partner project and a part of the main Ubuntu repository, where it has remained since release 6.10.

Ubuntu Studio

Ubuntu Studio (Figure 9-6) is a flavor of Ubuntu that is designed and optimized for multimedia production. The system includes a wide variety of applications useful to those engaging in audio and video recording, mixing, editing, synthesis, and production as well as graphics production and manipulation. It contains a modified kernel that allows the system to reduce latency for audio in ways that dramatically improve performance in professional audio recording and manipulation, but the kernel may be inappropriate in other environments. Its first release was based on Ubuntu 7.04. The Studio team puts a focus on LTS releases.

Image

Figure 9-6 Ubuntu Studio 16.04 desktop

Mythbuntu

MythTV is one of the most popular pieces of home theater free software, but it has a bit of a reputation as a beast to set up. Mythbuntu (Figure 9-7) is designed to make that setup easy. Like Xubuntu and Studio, Mythbuntu uses Xfce as a desktop environment, has a custom-made Mythbuntu Control Center, and has a LiveCD for easy testing. Mythbuntu’s first release was based on Ubuntu 7.10. Today, Mythbuntu offers only an LTS version.

Image

Figure 9-7 Mythbuntu 16.04 desktop

Ubuntu Kylin

One of the fastest-growing markets for the Ubuntu community is China. To meet the needs of this market, the Chinese Ubuntu community has developed a version of Ubuntu specifically targeted at Chinese users, Ubuntu Kylin (Figure 9-8). In addition to an interface fully translated into Chinese, this flavor ships with applications that many Chinese users tend to install by default. Optimizations include the Chinese calendar, a weather application that pulls from a source in China, and integration with a popular Chinese office suite. The first official release of this flavor was 13.04 on April 25, 2013.

Image

Figure 9-8 Ubuntu Kylin 16.04 desktop

Ubuntu GNOME

With the move to Unity as the default, the GNOME community found itself without a flavor of Ubuntu dedicated to its desktop environment. On April 25, 2013, the team released the first official version of Ubuntu GNOME, 13.04. This flavor (Figure 9-9) seeks to ship the newest version of GNOME possible at release time, and keep it “relatively pure” to upstream GNOME, without too many customizations.

Image

Figure 9-9 Ubuntu GNOME 16.04 desktop

Ubuntu MATE

The Ubuntu MATE flavor (Figure 9-10) caters to users who wanted to retain the familiar GNOME 2 desktop by using the MATE desktop environment. MATE bills itself as a continuation of GNOME 2—that is, as a fork of the code from GNOME 2, but now maintained and modernized for continued use. As a result, the desktop is very familiar to users who are used to a layout with more traditional panels and menus. This flavor is also a bit lighter weight than Unity or the latest Ubuntu GNOME, putting it near Xubuntu with regard to speed and recommended specifications.

Image

Figure 9-10 Ubuntu MATE 16.04 desktop

The first unofficial releases of Ubuntu MATE occurred in 2014. Its creators took the unusual step of releasing the 14.10 version first, and then going back to release a 14.04 LTS version to provide longer support. The Ubuntu MATE flavor was accepted as official by the Technical Board in 2015 with the release of 15.04.

Editions

Official Ubuntu editions include the Ubuntu desktop, server, phone, and core. They are fully supported by Canonical.

Ubuntu Server

Ubuntu Server was created with the aim of making Ubuntu easy to install and use on servers. The Server Edition was officially launched with Ubuntu 5.04 and initially focused on making certain that the highest-quality server applications were available for easy installation and configuration, including MySQL, Apache, and others.

The most recent work has involved improvements to the cloud computing capabilities of Ubuntu Server. Ubuntu Cloud features for Ubuntu Server seek to provide you with all the tools and services needed to build your own cloud infrastructure with Ubuntu (Figure 9-11). Whether at an enterprise or individual level, it allows you to manage cloud workloads on your own servers and send identical workloads to the public cloud when you need extra capacity.

Image

Figure 9-11 Ubuntu Cloud. Systems administrators, dev-ops engineers, and users can use Juju—DevOps Distilled—charms to deploy, orchestrate, and scale services in the public, private, or hybrid cloud.

To learn more about Ubuntu Server Edition, we recommend The Official Ubuntu Server Book, also available from Prentice Hall.

Ubuntu Server is also available in preinstalled cloud images customized to run on cloud platforms such as Amazon EC2, OpenStack, and LXC. Many services also provide these images in their default consoles when you set up a deployment using Ubuntu.

Ubuntu Phone

One of the newer entrants into the Ubuntu editions is the version of Ubuntu developed for and targeted at phones and tablets, originally referred to as Ubuntu Touch and now called Ubuntu Phone. A great deal of effort has been put into developing the default applications for this project. An innovative swipe-driven interface has been developed that is specifically tailored to smaller-form touchscreen devices.

At the time of writing, this is a separate project from Ubuntu desktop. With the introduction of Mir beginning in Unity 8, however, the team introduced a Mir- and Unity 8-based desktop for users to try with 16.04. Chapter 10 provides more information on Ubuntu Phone, Mir, and Unity 8.

Ubuntu Core

The most recent addition to the array of Ubuntu editions is Ubuntu Core. Explored more in Chapter 10, it aims to be a very small server image that is well suited for Internet of Thing devices and containers. Ubuntu Core relies on transactional updates and application isolation, which allows for easy updates and rollbacks. To do so, it uses the new Snappy package management system, which also allows for easier packaging than with the traditional Debian packages that the standard Ubuntu desktop and server editions use.

Other Distributions

Some distributions generally work outside of the Ubuntu community and usually have their own package repositories. They may not be released at the same time as Ubuntu. In the past, several of these derived distributions have been built directly upon other distributions, such as Debian, which is also the base for Ubuntu. The changes that Ubuntu developers make in the process of creating the distribution have been seen as positive and useful as a foundation for others with custom needs or desires. The list of derivative distributions has grown rapidly, and as distributions come and go, the list is constantly in flux. In the first edition of this book, our list was nearly comprehensive; since then, the size of the derivative distribution community has grown so much that compiling a complete list for this ninth edition is no longer possible. Instead, we provide a bit of the flavor of the diversity of derived distributions with some examples of the oldest and most visible derived distributions to give you an idea of the scope of the community.

Guadalinex

Guadalinex is the GNU/Linux distribution developed and promoted by the regional government of Andalusia, the most populated autonomous community in Spain with almost 8 million inhabitants. It is currently one of the largest free software implementations worldwide, with more than 200,000 desktops—and increasing. The project is a consequence of the unanimous support of the Andalusian Parliament on the Information Society and Innovation policies approved in 2002 and 2003, urging all the regional institutions to promote and use free software and open licenses. This makes the Guadalinex initiative unique in the world.

Guadalinex was initially released in 2003, and the first two versions were based on Debian. In 2005, the Guadalinex project decided to develop the third version deriving from Ubuntu. Guadalinex version 3 was released in January 2006 based on Ubuntu 5.10, making it the first major Ubuntu derivative. The project is part of a government plan to implement free software as the default option in the public schools. At the beginning of 2006, this project involved 500 schools and approximately 200,000 desktops equipped with Guadalinex and free software only. These numbers increase every year as new courses start every September and new computers are purchased (about 40,000 in 2006). This initiative alone puts Guadalinex in the top position as the biggest free software implementation worldwide. Additionally, the software is used in public Internet access centers, senior centers, libraries, and women’s associations, as well as citizens’ homes. Guadalinex is merely one example of many Ubuntu derivatives created by or in cooperation with governments for use in schools and bureaucracies. It is now only one among many massive deployments of Ubuntu in these settings.

Linux Mint

Because Ubuntu is dedicated to using free software by default as much as possible, it does not come with proprietary media codecs installed. That was the reason Linux Mint was originally created. Over time, it has developed a community that focuses on creating an easy-to-use-and-install Linux desktop that is nice to look at with a focus on making things as simple and enjoyable as possible, especially for newcomers. The distribution is completely compatible with and uses the Ubuntu software repositories. The main differences are in the look and feel as well as choices for software installed by default. Linux Mint also produces a Debian-based version.

Launchpad

As we mentioned in Chapter 1, most of Canonical’s technical employees do not work on Ubuntu. Rather, they work on infrastructure. The majority of this infrastructure comprises a large collection of services that work together to provide the framework through which Ubuntu is built. This superstructure of related applications is collectively referred to as Launchpad. While it has several non–Web-based systems, it is almost wholly accessible over the Web.

While Launchpad (Figure 9-12) is primarily used to develop Ubuntu, the open source (AGPLv3) infrastructure was designed to be useful for any free software project and is becoming more popular, with several non-Ubuntu projects now being hosted on Launchpad. It aims to provide these projects with the code tracking, bug tracking, and translation tracking software necessary to more easily and more powerfully collaborate with others and to develop free and open source software. Each of these functions (code, bug, and translation tracking) is highly integrated, making it much more ambitious, and potentially much more powerful, than traditional Web-based solutions with similar goals. Early on, the Launchpad Web page described the project as follows:

Image

Figure 9-12 Ubuntu project in Launchpad

A collection of services for projects in the Open Source universe. You can register your project, and then collaborate with the Open Source community on translations, bug tracking, and code.

That description continues to be valid even as the project has expanded with support and specification modules. In addition to code, bug, and translation tracking, Launchpad provides the ability to deal with code, not just on a per-package or per-project level but on the distribution level as well. If a bug has been reported against a piece of software in Ubuntu, it is visible to both the upstream and downstream projects. The project can track how its software evolves over time and see, at a glance, whether bugs apply. Developers can track translations in a similar way.

The best way to understand Launchpad is to see it in action. This section walks through the individual pieces of Launchpad in more depth. Much of the Ubuntu infrastructure is highly integrated into Launchpad. If you have created an account for reporting bugs or joining Ubuntu teams, you already have a Launchpad account.

Soyuz

Soyuz is the distribution and archive management software integrated into Launchpad. It handles all of the automatic building of software in Ubuntu on each of the architectures and the integration of successfully built software into the archive. Soyuz means “union” in Russian and is the name of the spacecraft that Mark Shuttleworth traveled in during his voyage to space.

Soyuz works almost entirely behind the scenes. It was first activated in early February 2006, but had no initial effect on the way software was uploaded or downloaded in Ubuntu. What Soyuz does is integrate the process by which software is built and inserted into different parts of the Ubuntu archive. The building of software cannot be tracked using the Launchpad Web infrastructure.

Launchpad Translations

Translations is a Web-based translation system integrated into Launchpad (Figure 9-13). It was the first piece of Launchpad to be publicly released. It is codenamed Rosetta after the Rosetta Stone, the famous piece of dark gray granite with the same text in three scripts that led to the deciphering of Egyptian hieroglyphics.

Image

Figure 9-13 Ubuntu translations in Launchpad

Rosetta is a Web-based version of a “PO” file editor. In other words, it provides a simple mechanism by which translators can view a list of untranslated phrases or strings and then translate each of them into their language. At the moment, the system works only with translations from English. Rosetta’s non–Web-based predecessors include Kbabel and Gtranslate, both of which can be downloaded and installed on Ubuntu. By putting this functionality on the Web and integrating it into the archive management scripts, Rosetta lowers the barrier of entry for translation and increases the chance that a translation will make it into the distribution.

Rosetta includes each of the translatable strings contained in every application in Ubuntu. When new software is uploaded into Ubuntu, Rosetta will check to see if any strings have changed or been added. Changes to a string that has previously been translated will result in the translation being marked as fuzzy until a translator can check the translation and the new string, make any necessary changes, and then mark the translation as no longer fuzzy. By tracking new strings, Rosetta can easily prompt translators with new strings to translate as they appear as well as provide statistics on the percentage of strings within a particular application or within all of Ubuntu that have been translated into a particular language.

As users translate strings, they build up positive “karma” within the system—an innovation that has now been deployed to many other parts of Launchpad. Users can also work together in localization teams (called l10n teams because the word localization has 10 letters between its first and last letters). Rosetta provides a great way for Ubuntu users to get involved in the distribution. Anybody who knows English and another language can begin contributing. Because the system is integrated into Launchpad, users do not need to submit their translations a second time to have them included in Ubuntu—the project already has them. After they are submitted in Rosetta and approved, new translations are automatically pushed out to users who use Ubuntu in those languages.

Launchpad Bugs

Launchpad Bugs (Figure 9-14) is a Web-based bug system like the Mozilla project Bugzilla, which might be familiar to some users. It provides a location where users can file bugs they find in their Ubuntu software by using easily accessible pieces of software such as Apport, by suing the command-line tool ubuntu-bug, or by reporting over the Web.

Image

Figure 9-14 Ubuntu Bugs in Launchpad

Launchpad Bugs’ first role is to provide a location where users can submit bugs. Launchpad Bugs is not just a way to collect complaints, though. Rather, its job is to track and record a bug through its full life cycle, from report to close. Bugs can be assigned to a particular developer or reassigned. If the bug is, in fact, the result of another application, the bug can be reassigned to another package. Bugs can be rated according to severity, or tagged and categorized in any number of useful manners. Information, files, and patches that fix a bug can be uploaded into Launchpad Bugs. When the bug has been resolved, it can be closed. The bug report provides a single venue in which to collect information from the bug submitter, the bug fixer, the upstream maintainer if necessary, and any other involved party.

All of this, of course, is exactly what you would expect from any usable modern bug tracker. Where Launchpad Bugs aims to distinguish itself from its competitors is through its integration in Launchpad and ability to track multiple pieces of software with a single bug report. First and foremost, this means that users of Launchpad Bugs can track the status of a bug as it relates to a particular patch or a particular piece of code. Because Ubuntu supports every release for nine months and some releases, such as Ubuntu 16.04 LTS, for much longer, it’s important that Ubuntu be able to track which bugs show up in which releases. As derivative works of Ubuntu are created in Launchpad, Launchpad Bugs also allows these derivatives to use Launchpad Bugs to see whether bugs submitted against Ubuntu or other distributions apply to their code and, if so, to quickly grab a fix.

As with Rosetta, Launchpad karma can be built up by fixing, reporting, and interacting with bugs over time. Bug triage that involves closing irreproducible bugs and merging duplicate bugs is one way that users can build up their karma. Of course, simply running developer versions and submitting new bugs is another great way to build good karma.

Launchpad Blueprint Tracker

The Launchpad Blueprint Tracker (Figure 9-15), or Blueprints, is Ubuntu’s custom specification and feature-tracking system. Blueprints provides a way that users can create specification pages, linked into the existing Ubuntu wiki, for features they would like to see in Ubuntu. Other interested parties can use Blueprints to subscribe to specifications or proposals they are interested in to collaborate on the development of the specification and to track progress. Over time, users working in the wiki and in Blueprints help new ideas through a process that starts with “brain dump”—a very rough collection of ideas and brainstorming—and ends with an implemented feature. In Ubuntu, this process involves (1) review by the community and trusted members and (2) approval by decision makers and the Ubuntu Technical Board or by appropriate team leaders and councils. Blueprint provides technology to support this process and ensure that nothing important is dropped on the floor.

Image

Figure 9-15 Launchpad Blueprint Tracker

In particular, Blueprints helps leaders and decision makers on Ubuntu prioritize features and specifications and ensure that work is progressing on necessary features toward on-time completion for releases. As a result, Blueprint is used as both the primary specification tracker and the major release management tool for Ubuntu.

While Blueprints is extremely useful for technical specifications, it is also used heavily for developing and tracking community-related proposals as well as for brainstorming stages into implementation. Blueprints also has features designed around sprints and conferences to help organize sessions and coordinate groups to bring forward specifications. As a final bit of trivia, it’s interesting to note that Blueprints was written largely by Ubuntu founder and financier Mark Shuttleworth himself!

Other Functionality

In addition to the visible flagship products within Launchpad just discussed, Launchpad has several other important uses. Launchpad integrates with Ubuntu One to hold a username and other important information valuable to participating in the community, including a GNU Privacy Guard encryption key, contact information, and more. More important, Launchpad contains representations of every team and group within Ubuntu and handles permission within the entire Ubuntu world. For example, the only people who are allowed to upload core packages to Ubuntu are people who are part of the Ubuntu Core Developers Team in Launchpad.

Bazaar

Bazaar (Figure 9-16) is a distributed revision control system. What does that really mean? First, a revision control system is a program that tracks how the source code of a program changes. It tracks what each specific change was, such as the addition of a new piece of code, as well as who made the change. It also allows a developer to roll back to a previous version or create a branch, or a separate and parallel code version, to try a new idea without forcing the change on the main code.

Image

Figure 9-16 Bazaar Explorer (can be installed from the GNOME Software Center)

The second key piece about Bazaar is that it is distributed, much like the popular revision control software Git. Traditional revision control systems have a single place where the code is stored. Only certain people can access this place and change the code there. A distributed revision control system is different in that there is no single place for code storage. Each branch a developer is working on is considered equal, and they all take code from each other. This system is much like a number of equal merchants at a bazaar—hence the name.

Bazaar started out as a fork of the Arch distributed revision control system. (A fork means that the developers disagree on where to take the program, and they break into different groups to work toward each group’s different goals.) However, Bazaar 2 was completely rewritten, as it was found that the then-current code did not work in the long term.

Ubuntu One

Ubuntu One is a single sign-on service. Ubuntu One accounts are used to handle authentication for services throughout the Ubuntu community, including the wikis and Launchpad.

Summary

In addition to building a great OS that many people use, the Ubuntu project has developed an OS that those building other operating systems use as a basis to build from. This has come in the form of both internal partner projects and external derivative distributions. Together, these span languages, continents, and markets. Also, Ubuntu is tightly linked to Canonical’s other projects: Launchpad and Bazaar. Bazaar provides a compelling version control system, and Launchpad provides a one-stop show for bugs, translations, and much more.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.17.140