Commit | Line | Data |
---|---|---|
1bac2ebb DL |
1 | Linux and the GNU system |
2 | ||
3 | The GNU project started 12 years ago with the goal of developing a | |
4 | complete free Unix-like operating system. "Free" refers to freedom, | |
5 | not price; it means you are free to run, copy, distribute, study, | |
6 | change, and improve the software. | |
7 | ||
8 | A Unix-like system consists of many different programs. We found some | |
9 | components already available as free software--for example, X Windows | |
10 | and TeX. We obtained other components by helping to convince their | |
11 | developers to make them free--for example, the Berkeley network | |
12 | utilities. Other components we wrote specifically for GNU--for | |
13 | example, GNU Emacs, the GNU C compiler, the GNU C library, Bash, and | |
14 | Ghostscript. The components in this last category are "GNU software". | |
15 | The GNU system consists of all three categories together. | |
16 | ||
17 | The GNU project is not just about developing and distributing some | |
18 | useful free software. The heart of the GNU project is an idea: that | |
19 | software should be free, and that the users' freedom is worth | |
20 | defending. For if people have freedom but do not consciously | |
21 | appreciate it, they will not keep it for long. If we want to make | |
22 | freedom last, we need to call people's attention to the freedoms they | |
23 | have in free software. | |
24 | ||
25 | The GNU project's method is that free software and the idea of users' | |
26 | freedom support each other. We develop GNU software, and as people | |
27 | encounter GNU programs or the GNU system and start to use them, they | |
28 | also think about the GNU idea. The software shows that the idea can | |
29 | work in practice. Some of these people come to agree with the idea, | |
30 | and then they are more likely to write additional free software. | |
31 | Thus, the software embodies the idea, spreads the idea, and grows from | |
32 | the idea. | |
33 | ||
34 | By 1992, we had found or written all of the essential major components | |
35 | of the system except the kernel, which we were writing. (This kernel | |
36 | consists of the Mach microkernel plus the GNU HURD. Currently it is | |
37 | running but not ready for users. The first test release was made in | |
38 | 1996.) | |
39 | ||
40 | Then the Linux kernel became available. Linux is a free | |
41 | Unix-compatible kernel initially written by Linus Torvalds. It was | |
42 | not written for the GNU project, but Linux and the almost-complete GNU | |
43 | system made a useful combination. This combination provided all the | |
44 | major essential components of a Unix-compatible operating system, and | |
45 | with some work, people made it into a usable system. It was a variant | |
46 | GNU system, based on the Linux kernel. | |
47 | ||
48 | Ironically, the popularity of these systems undermines our method of | |
49 | communicating the GNU idea to people who use GNU. These systems are | |
50 | mostly the same as the GNU system--the main difference being the | |
51 | choice of kernel. But people usually call them "Linux systems". At | |
52 | first impression, a "Linux system" sounds like something completely | |
53 | distinct from the "GNU system," and that is what most users think it | |
54 | is. | |
55 | ||
56 | Most introductions to the "Linux system" acknowledge the role played | |
57 | by the GNU software components. But they don't say that the system as | |
58 | a whole is a modified version of the GNU system that the GNU project | |
59 | has been developing and compiling since 1984. They don't say that the | |
60 | goal of a free Unix-like system like this one came from the GNU | |
61 | project. So most users don't know these things. | |
62 | ||
63 | Since human beings tend to correct their first impressions less than | |
64 | subsequent information calls for, those users who later learn about | |
65 | the relationship between these systems and the GNU project still often | |
66 | underestimate it. | |
67 | ||
68 | This leads many users to identify themselves as a separate community | |
69 | of "Linux users", distinct from the GNU user community. They use all | |
70 | of the GNU software; in fact, they use almost all of the GNU system; | |
71 | but they don't think of themselves as GNU users, and often they don't | |
72 | think that the GNU idea relates to them. | |
73 | ||
74 | It leads to other problems as well--even hampering cooperation on | |
75 | software maintenance. Normally when users change a GNU program to | |
76 | make it work better on a particular system, they send the change to | |
77 | the maintainer of that program; then they work with the maintainer, | |
78 | explaining the change, arguing for it, and sometimes rewriting it for | |
79 | the sake of the overall coherence and maintainability of the package, | |
80 | to get the patch installed. | |
81 | ||
82 | But people who think of themselves as "Linux users" are more likely to | |
83 | release a forked "Linux-only" version of the GNU program, and consider | |
84 | the job done. We want each and every GNU program to work "out of the | |
85 | box" on Linux-based systems; but if the users do not help, that goal | |
86 | becomes much harder to achieve. | |
87 | ||
88 | How should the GNU project deal with this problem? What should we do | |
89 | now to spread the idea that freedom for computer users is important? | |
90 | ||
91 | We should continue to talk about the freedom to share and change | |
92 | software--and to teach other users to value these freedoms. If we | |
93 | enjoy having a free operating system, it makes sense for us to think | |
94 | about preserving those freedoms for the long term. If we enjoy having | |
95 | a variety of free software, it makes sense for to think about | |
96 | encouraging others to write additional free software, instead of | |
97 | additional proprietary software. | |
98 | ||
99 | We should not accept the idea of two separate communities for GNU and | |
100 | Linux. Instead we should spread understanding that "Linux systems" | |
101 | are variants of the GNU system, and that the users of these systems | |
102 | are GNU users as well as Linux users (users of the Linux kernel). | |
103 | Users who know this will naturally tend to take a look at the GNU | |
104 | philosophy which brought these systems into existence. | |
105 | ||
106 | I've written this article as one way of doing that. Another way is to | |
107 | use the terms "Linux-based GNU system" or "GNU/Linux system", instead | |
108 | of "Linux system," when you write about or mention such a system. | |
109 | ||
110 | ||
111 | Copyright 1996 Richard Stallman | |
112 | Verbatim copying and redistribution is permitted | |
113 | without royalty as long as this notice is preserved. | |
114 |