Non-free software in GNU/Linux

Source: Internet
Author: User

When using GNU/Linux, we will find that some non-free software exists in this free country, many people who are interested in Software Freedom will regard GNU/Linux as their operating system choices.

But few people realize that many major GNU/Linux distributions are not completely free. Imagine that when you migrate from Windows and install GNU/Linux, you find that you are accepting a strict Microsoft License!

Many distributions use patented software, intentionally display a wrong license, and try to hide the problem behind a "free option" appearance. Most software container developers do not pay attention to freedom, not to mention users. Non-free releases almost never try to remind them of how important their user freedom is, even if they do not do so, users will no longer exist. In this article, I will discuss "free option" as an unacceptable method and propose some real solutions.

Problem

I have been using GNU/Linux for more than five years, but it was not until recently that I found out how many non-free software is included in my release. I decided to search for and delete all items that are not free in the system. As a result, I deleted more than n items.

A floating GNU-symbol of software freedom and peace

These are what I found:

Linux Kernel

Linux kernels released by Linus Torvalds and others through kernel.org, namely the public version kernel, including many non-free firmware refer to the footer), are mainly used to support hardware not supported by free firmware.

Imagine that when you migrate from Windows and install GNU/Linux, you find that you are accepting a strict Microsoft License!

Although most distributions maintain their own kernels, they are heavily based on the public version and generally adopt non-free binary images.

One solution is to use the Linux Libre Project, which is a collection of all non-free firmware public kernel versions. Most releases do not provide free kernel options, let alone recommend one.

Non-free driver

Many releases include non-free drivers such as graphics cards and wireless NICs. Since those hardware is closed-source and not documented, they can only include these drivers to do their best to enhance hardware support.

Many releases use a non-free version of the driver to * replace * free version

In many cases, the free replacement version of the driver actually exists, but many releases use a non-free version * instead of * free version.

Common non-free software

Many releases also provide other non-free software that does not belong to the above categories. These include non-free Web browsers, video conferencing clients, and other common applications. The system itself does not need the software, including the software only for convenience, or to enrich the software package list.

They told users that freedom is a secondary issue and guided them to use non-free software.

Although some releases use a dedicated repository to maintain non-free software, this does not mean anything for common users. By simultaneously promoting free and non-free programs, they are actually telling users that freedom is a secondary issue and guiding them to use non-free software.

A software package I removed from the system, corefonts, is a non-free bag with a Microsoft License. Its license limits the use of the software package and prohibits modification to it. Corefonts is an optional dependency for ImageMagic installation. Gentoo enables ImageMagic by default.

ImageMagic itself is a free software. This means that most users who install it assume that it is free, but mistakenly use corefonts in the system. They may be affected by this restricted non-free license.

Summary

This is just an example of how the GNU/Linux release limits user freedom. Another problem is: Simply checking the various program license information described in the package manager is not reliable. For example, the Linux kernel is usually advertised to be completely in line with the GPL-2, but it actually contains some non-free software.

Without a clear policy to precisely distinguish the software contained in a release and accurately describe its license, even the most careful user may install non-free software.

Free Option

Some Distributions try to solve the problem by providing another free version or some tools to help users maintain system freedom. This does not solve the problem, because most people do not care about software freedom, so they will not end their use. What's more, the release almost does not do anything to advocate the use of free versions, or even tell users the superiority of using them.

Mandriva

It is important to tell the public how patented software harms you and how to escape the restriction. However, this is not involved at all.

My first example is Mandriva. This release provides seven different versions, and only one of them is completely free. Most people who visit their websites will download their Powerpack version, because it is placed first and its name implies that it is the most powerful version. No one will describe the differences between their versions, and there is no advocate or even an explanation of the superiority of pure free software.

The side effect of this approach is that the only user who uses the free version is those who have known the problem and are very careful with it. These users may already be running a 100% free system. It is important to tell the public how patented software will harm you and how to escape the restriction. However, these are not involved at all.

Gentoo Linux

Another example is Gentoo Linux, which provides an optional license filtering system to help users avoid patent software installation. This is worse than the case of Mandriva, because the filtering feature is rarely involved in the document and does not provide any recommendations for use.

This means that the only person who uses the Gentoo free version is those who specifically searched for how to filter software based on licenses. Most users may not know that such a feature exists. More seriously, some software licenses such as Linux kernel licenses are inaccurate. Therefore, even if there is a strict filter, the patented software may leak the network.

I pointed out on the Gentoo developer mailing list that the Linux kernel shows inaccurate licenses. I asked them to update to include licenses for non-free firmware so that people can precisely filter their software. Some developers supported this idea, but some kernel team members refused the modification method at the beginning. Shortly after the publication of this article, I was told that the license has been updated and was initially developed by a supporter.

Summary

Non-free releases almost never try to remind them of how important their user freedom is, even if they do not do so, users will no longer exist.

Most software container developers do not pay attention to freedom, not to mention users. Non-free releases almost never try to remind them of how important their user freedom is, even if they do not do so, users will no longer exist. A release has a huge impact on its users, and they have a social responsibility to advocate the use of pure free software.

Solution

Obviously, the real solution is to use a release that respects user freedom. The FSF organization maintains a list of fully free releases that you can use. Developers work together to protect users' freedom and do their best to maintain a completely free system. For example, you can find and fix all non-free software that may miss the Internet due to mistakes. Other non-free releases are likely to ignore these issues.

However, switching to a new operating system is not always feasible. You may prefer to refactor the non-free release you already have. In this case, you may want to install the conversion software to implement a fully self-owned operating system. In this way, there will be a lot of work, but it is feasible:

First, you should remove all non-free software from the system. This includes converting to a Linux Libre kernel, fully scanning installed software packages and checking their licenses. This may be a huge and boring job.

Every user needs to do so is obviously stupid. You can contact the developers of your release and tell them-of course, in a polite manner-that you think Software Freedom is an important issue and suggest them improve the flexibility of the release. You can also provide help, whether it is technical support or problem report. It would be a good start to maintain a completely free system in a non-controversial way.

If you write code, you can focus on improving a free release. If you have a favorite design decision, you can implement it in the free release. You can also help those non-free releases by compiling the free replacement version of the non-free software included in it. Of course, this will also benefit the free releases, the victory of Free Software !).

Sometimes you may have hardware that is not supported by free software. If possible, you should try to avoid supporting such a company, although this may not be realistic. In all circumstances, you should write a polite and firm demand to the producer to release the driver in free software, or open their normative documents so that others can write them freely.

When purchasing hardware, first check the list of hardware supported by FSF to support as many free companies as possible.

The last point I want to mention is the powerful influence of recommendations. Whenever you recommend GNU/Linux to your friends and family, do not forget to emphasize the importance of freedom. Whether or not they accept your suggestions, you will help promote your knowledge objectively. This is the first step to solve any problem.

Footer

For example, please refer to the Linux source file. What you are looking at is a non-free binary firmware. The meaning of this Code usually refers to a trade secret. Therefore, users cannot modify it, or even understand it.

The problem is not limited to Linux. OpenBSD has developed their own kernels, but it also contains binary images. You can quickly browse this kernel source file, which contains a large segment of Non-free code using restricted licenses.

You can also view more examples of non-free Binary Images in Ubuntu and Debian.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.