www-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

www/philosophy how-apply-free-software-criteria...


From: Pavel Kharitonov
Subject: www/philosophy how-apply-free-software-criteria...
Date: Mon, 02 Nov 2015 16:28:16 +0000

CVSROOT:        /web/www
Module name:    www
Changes by:     Pavel Kharitonov <ineiev>       15/11/02 16:28:16

Removed files:
        philosophy     : how-apply-free-software-criteria.html 

Log message:
        Remove RT #1058142.

CVSWeb URLs:
http://web.cvs.savannah.gnu.org/viewcvs/www/philosophy/how-apply-free-software-criteria.html?cvsroot=www&r1=1.1&r2=0

Patches:
Index: how-apply-free-software-criteria.html
===================================================================
RCS file: how-apply-free-software-criteria.html
diff -N how-apply-free-software-criteria.html
--- how-apply-free-software-criteria.html       2 Nov 2015 16:20:39 -0000       
1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,333 +0,0 @@
-<!--#include virtual="/server/header.html" -->
-<title>Applying the Free Software Criteria
-- GNU Project - Free Software Foundation</title>
-<!--#include virtual="/server/gnun/initial-translations-list.html" -->
-<!--#include virtual="/server/banner.html" -->
-
-<h2>Applying the Free Software Criteria</h2>
-
-<p>by Richard Stallman</p>
-
-<p>The four essential freedoms provide the criteria for <a
-href="/philosophy/free-sw.html">whether a particular piece of code is
-free/libre</a> (i.e., respects its users' freedom).  How should we
-apply them to judge whether a software package, an operating system, a
-computer, or a web page is fit to recommend?</p>
-
-<p>Whether a program is free affects first of all our decisions about our
-private activities: to maintain our freedom, we need to reject the
-programs that would take it away.  However, it also affects what we
-should say to others and do with others.</p>
-
-<p>A nonfree program is an injustice.  To distribute a nonfree program,
-to recommend a nonfree program to other people, or more generally
-steer them into a course that leads to using nonfree software, means
-leading them to give up their freedom.  To be sure, leading people to
-use nonfree software is not the same as installing nonfree software in
-their computers, but we should not lead people in the wrong direction.</p>
-
-<p>At a deeper level, we must not present a nonfree program as a solution
-because that would grant it legitimacy.  Non-free software is a
-problem; <a href="/philosophy/compromise.html"> to present it as a
-solution denies the existence of the problem</a>.</p>
-
-<p>This article explains how we apply the basic free software criteria to
-judging various kinds of things, so we can decide whether to recommend
-them or not.</p>
-
-<h3>Software packages</h3>
-
-<p>For a software package to be free, all the code in it must be free.
-But not only the code.  Since documentation files including manuals,
-README, change log, and so on are essential technical parts of a
-software package, <a href="/philosophy/free-doc.html">they must be
-free as well</a>.</p>
-
-<p>A software package is typically used alongside many other packages,
-and interacts with some of them.  Which kinds of interaction with
-nonfree programs are ethically acceptable?</p>
-
-<p>We developed GNU so that there would be a free operating system,
-because in 1983 none existed.  As we developed the initial components
-of GNU, in the 1980s, it was inevitable that each component depended
-on nonfree software.  For instance, no C program could run without a
-nonfree C compiler until GCC was working, and none could run without
-Unix libc until Glibc was working.  Each component could run only
-on nonfree systems, because all systems were nonfree.</p>
-
-<p>After we released a component that could run on some nonfree systems,
-users ported it to other nonfree systems; those ports were no worse,
-ethically, than the platform-specific code we needed to develop these
-components, so we incorporated their patches.</p>
-
-<p>When the kernel, Linux, was freed in 1992, it filled the last gap in
-the GNU system.  (Initially, in 1991, Linux had been distributed under
-a nonfree license.)  The combination of GNU and Linux made a complete
-free operating system&mdash;<a
-href="/gnu/linux-and-gnu.html">GNU/Linux</a>.</p>
-
-<p>At that point, we could have deleted the support for nonfree
-platforms, but we decided not to.  A nonfree system is an injustice,
-but it's not our fault a user runs one.  Supporting a free program on
-that system does not compound the injustice.  And it's useful, not
-only for users of those systems, but also for attracting more people
-to contribute to developing the free program.</p>
-
-<p>However, a nonfree program that runs on top of a free program is a
-completely different issue, because it leads users to take a step away
-from freedom.  In some cases we disallow this: for instance, <a
-href="https://gcc.gnu.org/ml/gcc/2014-01/msg00247.html";>GCC prohibits
-nonfree plug-ins</a>.  When a program permits nonfree add-ons, it
-should at least not steer people towards using them.  For instance, we
-choose LibreOffice over OpenOffice because OpenOffice suggests use
-nonfree add-ons, while LibreOffice shuns them.  We developed <a
-href="http://directory.fsf.org/wiki/IceCat";>IceCat</a> initially to
-avoid proposing the nonfree add-ons suggested by Firefox.</p>
-
-<p>In practice, if the IceCat package explains how to run IceCat on
-MacOS, that will not lead people to run MacOS.  But if it talked about
-some nonfree add-on, that would encourage IceCat users to install the
-add-on.  Therefore, the IceCat package, including manuals and web
-site, shouldn't talk about such things.</p>
-
-<p>Sometimes a free program and a nonfree program interoperate but
-neither is based on the other.  Our rule for such cases is that if the
-nonfree program is very well known, we should tell people how to use
-our free program with it; but if the proprietary program is obscure,
-we should not hint that it exists.  Sometimes we support
-interoperation with the nonfree program if that is installed, but
-avoid telling users about the possibility of doing so.</p>
-
-<p>We reject &ldquo;enhancements&rdquo; that would work only on a nonfree 
system.
-Those would encourage people to use the nonfree system instead of GNU,
-scoring an own-goal.</p>
-
-<h3>GNU/Linux distros</h3>
-
-<p>After the liberation of Linux in 1992, people began developing
-GNU/Linux distributions (&ldquo;distros&rdquo;).  Only a few distros
-are <a href="/distros">entirely free software</a>.</p>
-
-<p>The rules for a software package apply to a distro too: an ethical
-distro must contain only free software and steer users only towards
-free software.  But what does it mean for a distro to
-&ldquo;contain&rdquo; a particular software package?</p>
-
-<p>Some distros install programs from binary packages that are part of
-the distro; others build each program from upstream source, and
-literally <em>contain</em> only the recipes to download and build it.
-For issues of freedom, how a distro installs a given package is not
-significant; if it presents that package as an option, or its web site
-does, we say it &ldquo;contains&rdquo; that package.</p>
-
-<p>The users of a free system have control over it, so they can install
-whatever they wish.  Free distros provide general facilities with
-which users can install their own programs and their modified versions
-of free programs; they can also install nonfree programs.  Providing
-these general facilities is not an ethical flaw in the distro, because
-the distro's developers are not responsible for what users get and
-install on their own initiative.</p>
-
-<p>The developers become responsible for installation of nonfree software
-when they steer the users toward a nonfree program&mdash;for
-instance, by putting it in the distro's list of packages, or
-distributing it from their server, or presenting it as a solution
-rather than a problem.  This is the point where most GNU/Linux
-distros have an ethical flaw.</p>
-
-<p>People who install software packages on their own have a certain level
-of sophistication: if we tell them &ldquo;Baby contains nonfree code,
-but Gbaby is free,&rdquo; we can expect them to take care to remember
-which is which.  But distros are recommended to ordinary users who
-would forget such details.  They would think, &ldquo;What name did
-they say I should use?  I think it was Baby.&rdquo;</p>
-
-<p>Therefore, to recommend a distro to the general public, we insist that
-its name not be similar to a distro we reject, so our message
-recommending only the free distro can be reliably transmitted.</p>
-
-<p>Another difference between a distro and a software package is how
-likely it is for nonfree code to be added.  The developers of a
-program carefully check the code they add.  If they have decided to
-make the program free, they are unlikely to add nonfree code.
-There have been exceptions, including the very harmful case of the
-&ldquo;binary blobs&rdquo; that were added to Linux, but they are a
-small fraction of the free programs that exist.</p>
-
-<p>By contrast, a GNU/Linux distro typically contains thousands of
-packages, and the distro's developers may add hundreds of packages a
-year.  Without a careful effort to avoid packages that contain some
-nonfree software, some will surely creep in.  Since the free distros
-are few in number, we ask the developers of each free distro to make a
-commitment to keep the distro free software by removing any nonfree
-code or malware, as a condition for listing that distro.  See the <a
-href="/distros/free-system-distribution-guidelines.html">GNU free
-system distribution guidelines</a>.</p>
-
-<p>We don't ask for such promises for free software packages: it's not
-feasible, and fortunately not necessary.  To get promises from the
-developers of 30,000 free programs to keep them free would avoid a few
-problems, at the cost of much work for the FSF staff; in addition,
-most of those developers have no relationship with the GNU Project and
-might have no interested in making us any promises.  So we deal with
-the rare cases that change from free to nonfree, when we find out
-about them.</p>
-
-<h3>Peripherals</h3>
-
-<p>A computer peripheral needs software in the computer&mdash;perhaps a
-driver, perhaps firmware to be loaded by the system which into the
-peripheral to make it run.  Thus, a peripheral is acceptable to use
-and recommend if it can be used from a computer that has no nonfree
-software installed: if the peripheral's driver, and any firmware that
-the system needs to load into it, are free.</p>
-
-<p>It is simple to check this: connect the peripheral to a computer
-running a totally free GNU/Linux distro and see if it works.  But most
-users would like to know <em>before</em> they buy the peripheral, so
-we list information about many peripherals in h-node.org.</p>
-
-<h3>Computers</h3>
-
-<p>A computer contains software at various levels.  On what criterion
-should we certify that a computer &ldquo;Respects Your Freedom&rdquo;?</p>
-
-<p>Obviously the operating system and everything above it must be free.
-In the 90s, the startup software (BIOS, then) became replaceable, and
-since it runs on the CPU, it is the same sort of issue as the
-operating system.  Thus, programs such as firmware and drivers that
-are installed in or with the system or the startup software must be free.</p>
-
-<p>If a computer has hardware features that require nonfree drivers or
-firmware installed with the system, we may be able to endorse it.  If
-it is usable without those features, and if we think most people won't
-be led to install the nonfree software to make them function, then we
-can endorse it.  Otherwise, we can't.  This will be a judgment call.</p>
-
-<p>A computer can have modifiable preinstalled firmware and microcode at
-lower levels.  It can also have code in true read-only memory.  We
-decided to ignore these programs in our certification criteria today,
-because otherwise no computer could comply, and because firmware that
-is not normally changed is ethically equivalent to circuits.  So our
-certification criteria cover only the code that runs on the computer's
-main processor and is not in true read-only memory.  When and as free
-software becomes possible for other levels of processing, we will
-require free software at those levels too.</p>
-
-<p>Since certifying a product is active promotion of it, we insist that
-the seller support us in return, by talking about <a
-href="/philosophy/free-software-even-more-important.html">free
-software</a> rather than <a
-href="/philosophy/open-source-misses-the-point.html">open source</a>
-and referring to the combination of GNU and Linux as <a
-href="/gnu/linux-and-gnu.html">GNU/Linux</a>.  We have no obligation
-to actively promote projects that won't recognize our work and support
-our movement.</p>
-
-<p>See http://www.fsf.org/resources/hw/endorsement/criteria for our
-certification criteria.</p>
-
-<h3>Web pages</h3>
-
-<p>Nowadays many web pages contain complex JavaScript programs and won't
-work without them.  This is a harmful practice since it hampers users'
-control over their computing.  Furthermore, most of these programs are
-nonfree, an injustice.  Often the JavaScript code spies on the user.
-<a href="/philosophy/javascript-trap.html">JavaScript has morphed into
-a attack on users' freedom.</a></p>
-
-<p>To address this problem, we have developed <a
-href="/software/librejs">LibreJS</a>, an add-on for Firefox that
-blocks nontrivial nonfree JavaScript code.  (There is no need to block
-the simple scripts that implement minor user interface hacks.)  We ask
-sites to please free their JavaScript programs and mark their licenses
-for LibreJS to recognize.</p>
-
-<p>Meanwhile, is it ethical to link to a web page that contains a nonfree
-JavaScript program?  If we were totally unyielding, we would link only
-to free JavaScript code.  However, many pages do work even when their
-JavaScript code is not run.  Also, you will most often encounter nonfree
-JavaScript in other ways besides following our links; to avoid it,
-you must use LibreJS or disable JavaScript.  So we have decided to go
-ahead and link to pages that work without nonfree JavaScript, while urging
-users to protect themselves from nonfree JavaScript in general.</p>
-
-<p>However, if a page can't do its job without running the nonfree
-JavaScript code, linking to it undeniably asks people to run that
-nonfree code.  On principle, we do not link to such pages.</p>
-
-<h3>Conclusion</h3>
-
-<p>Applying the basic idea that <em>software should be free</em> to
-different situations leads to different practical policies.  As new
-situations arise, the GNU Project and the Free Software Foundation
-will adapt our freedom criteria so as to lead computer users towards
-freedom, in practice and in principle.  By recommending only
-freedom-respecting programs, distros, and hardware products, and
-stating your policy, you can give much-needed support to the free
-software movement.</p>
-
-</div><!-- for id="content", starts in the include above -->
-<!--#include virtual="/server/footer.html" -->
-<div id="footer">
-<div class="unprintable">
-
-<p>Please send general FSF &amp; GNU inquiries to
-<a href="mailto:address@hidden";>&lt;address@hidden&gt;</a>.
-There are also <a href="/contact/">other ways to contact</a>
-the FSF.  Broken links and other corrections or suggestions can be sent
-to <a href="mailto:address@hidden";>&lt;address@hidden&gt;</a>.</p>
-
-<p><!-- TRANSLATORS: Ignore the original text in this paragraph,
-        replace it with the translation of these two:
-
-        We work hard and do our best to provide accurate, good quality
-        translations.  However, we are not exempt from imperfection.
-        Please send your comments and general suggestions in this regard
-        to <a href="mailto:address@hidden";>
-        &lt;address@hidden&gt;</a>.</p>
-
-        <p>For information on coordinating and submitting translations of
-        our web pages, see <a
-        href="/server/standards/README.translations.html">Translations
-        README</a>. -->
-Please see the <a
-href="/server/standards/README.translations.html">Translations
-README</a> for information on coordinating and submitting translations
-of this article.</p>
-</div>
-
-<!-- Regarding copyright, in general, standalone pages (as opposed to
-     files generated as part of manuals) on the GNU web server should
-     be under CC BY-ND 4.0.  Please do NOT change or remove this
-     without talking with the webmasters or licensing team first.
-     Please make sure the copyright date is consistent with the
-     document.  For web pages, it is ok to list just the latest year the
-     document was modified, or published.
-     
-     If you wish to list earlier years, that is ok too.
-     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
-     years, as long as each year in the range is in fact a copyrightable
-     year, i.e., a year in which the document was published (including
-     being publicly visible on the web or in a revision control system).
-     
-     There is more detail about copyright years in the GNU Maintainers
-     Information document, www.gnu.org/prep/maintain. -->
-
-<p>Copyright &copy; 2015 Richard Stallman</p>
-
-<p>This page is licensed under a <a rel="license"
-href="http://creativecommons.org/licenses/by-nd/4.0/";>Creative
-Commons Attribution-NoDerivatives 4.0 International License</a>.</p>
-
-<!--#include virtual="/server/bottom-notes.html" -->
-
-<p class="unprintable">Updated:
-<!-- timestamp start -->
-$Date: 2015/11/02 16:20:39 $
-<!-- timestamp end -->
-</p>
-</div>
-</div>
-</body>
-</html>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]