summaryrefslogtreecommitdiff
path: root/talermerchantdemos/blog/articles/ru/applying-free-sw-criteria.html
blob: cb435c892c4961a5d61b1f1cefce07667522e718 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
<!--#set var="ENGLISH_PAGE" value="/philosophy/applying-free-sw-criteria.en.html" -->

<!--#include virtual="/server/header.ru.html" -->
<!-- Parent-Version: 1.79 -->

<!-- This file is automatically generated by GNUnited Nations! -->
<title>Применение критериев свободы программ - Проект GNU - Фонд свободного
программного обеспечения</title>

<!--#include virtual="/philosophy/po/applying-free-sw-criteria.translist" -->
<!--#include virtual="/server/banner.ru.html" -->
<h2>Применение критериев свободы программ</h2>

<p>Ричард Столмен</p>

<p>Четыре важных свободы составляют критерий того, <a
href="/philosophy/free-sw.html">является ли конкретная программа
свободной</a> (т.е. уважает ли она свободы своих пользователей). Как нам
следует применять их, чтобы судить о том, можно ли рекомендовать пакет
программ, операционную систему или страницу сайта?</p>

<p>Ответ на вопрос о том, свободна ли программа, влияет прежде всего на наши
решения о своей личной деятельности: чтобы сохранять свою свободу, нам нужно
отказываться от программ, которые отняли бы ее. Однако это влияет также на
то, что нам следует говорить другим и делать по отношению к ним.</p>

<p>Несвободная программа&nbsp;&mdash; это несправедливость. Распространять
несвободную программу, рекомендовать несвободную программу другим или вообще
направлять их на путь, ведущий к применению несвободной программы, означает
вести их к отказу от свободы. Разумеется, подталкивать других к применению
несвободных программ&nbsp;&mdash; это не то же самое, что устанавливать
несвободные программы на их компьютеры, но мы не должны вести людей в
неверном направлении.</p>

<p>На более глубоком уровне мы не должны представлять несвободную программу как
решение, потому что это узаконивало бы ее. Несвободная
программа&nbsp;&mdash; это проблема; <a href="/philosophy/compromise.html">
представлять ее как решение значит отрицать существование проблемы</a>.</p>

<p>В этой статье объясняется, как мы применяем основной критерий свободы
программ, чтобы судить о различного рода предметах и решать, рекомендовать
их или нет.</p>

<h3>Пакеты программ</h3>

<p>Чтобы пакет был свободен, должны быть свободны все его программы. Но не
только программы. Поскольку файлы документации, включая руководства, README,
журнал изменений и так далее составляют технически важную часть пакета
программ, <a href="/philosophy/free-doc.html">документация тоже должна быть
свободна</a>.</p>

<p>Пакет программ, как правило, применяется вместе со многими другими
пакетами. взаимодействуя с некоторыми из них. Какого рода взаимодействие с
несвободными программами этически приемлемо?</p>

<p>Мы разрабатывали GNU, чтобы была свободная операционная система, потому что
в&nbsp;1983&nbsp;году ни одной такой системы не существовало. При разработке
первых компонентов GNU в восьмидесятых годах XX&nbsp;века каждый компонент
неизбежно должен был зависеть от несвободных программ. Например, никакая
программа на Си не могла работать без несвободного компилятора, пока не
заработал GCC, и никакая программа на Си не могла работать без библиотеки
libc Unix, пока не заработала glibc. Каждый компонент мог работать только в
несвободных системах, потому что все системы были несвободными.</p>

<p>После того как мы выпускали компонент, который мог работать в некоторых
несвободных системах, пользователи переносили их на другие несвободные
системы; с точки зрения этики это было не хуже, чем специфические для
платформы участки программ, которые нам были нужны для разработки этих
компонентов, так что мы принимали их доработки.</p>

<p>Когда в 1992 году было освобождено ядро, Linux, оно заполнило последний
пробел в системе GNU. (Первоначально, в&nbsp;1991&nbsp;году, Linux
распространяли под несвободной лицензией.) Сочетание GNU и Linux дало полную
операционную систему&nbsp;&mdash; <a
href="/gnu/linux-and-gnu.html">GNU/Linux</a>.</p>

<p>В этот момент мы могли бы удалить поддержку несвободных платформ, но мы
решили не делать этого. Несвободная система&nbsp;&mdash; это
несправедливость, но если пользователь работает на ней&nbsp;&mdash; это не
наша вина. Поддержка свободной программы на этой системе не составляет
несправедливости. Но это полезно, не только для пользователей этих систем,
но и для привлечения новых людей к разработке свободной программы.</p>

<p>Однако несвободная программа, которая работает поверх свободной,&mdash; это
совсем другое дело, потому что она подталкивает пользователей сделать шаг от
свободы. В некоторых случаях мы не допускаем этого: например, <a
href="https://gcc.gnu.org/ml/gcc/2014-01/msg00247.html"> в GCC запрещены
несвободные внешние модули</a>. Когда программа допускает несвободные
дополнения, она по крайней мере не должна направлять к ним людей. Например,
мы отдаем предпочтение LibreOffice перед OpenOffice, потому что OpenOffice
предлагает несвободные дополнения, в то время как LibreOffice обходит их
стороной. Мы разработали <a
href="http://directory.fsf.org/wiki/IceCat">IceCat</a> первоначально для
того, чтобы не предлагать несвободные дополнения, которые предлагаются в
Firefox.</p>

<p>На практике если в пакете IceCat объясняется, как работать с IceCat под
MacOS, это не подтолкнет людей к работе на MacOS. Но если бы в нем
говорилось о каком-то несвободном дополнении, это поощряло бы пользователей
IceCat устанавливать это дополнение. Стало быть, в пакете IceCat, включая
сайт и документацию, о таких вещах говориться не должно.</p>

<p>Иногда свободная и несвободная программы взаимодействуют, но ни одна из них
не опирается на другую. Для таких случаев у нас есть правило, что если
несвободная программа широко известна, то мы должны рассказывать людям, как
пользоваться свободной программой вместе с несвободной; но если несвободная
программа малоизвестна, мы не должны упоминать о ее существовании. Иногда мы
поддерживаем взаимодействие с несвободной программой, когда та установлена,
но не говорим пользователям о такой возможности.</p>

<p>Мы отвергаем &ldquo;улучшения&rdquo;, которые работали бы только на
несвободной системе. Они поощряли бы людей применять несвободную систему
вместо GNU, это все равно что забивать гол в свои ворота.</p>

<h3>Дистрибутивы GNU/Linux</h3>

<p>После освобождения Linux в 1992 году люди стали разрабатывать дистрибутивы
GNU/Linux. Только немногие из них представляют <a href="/distros">полностью
свободные программы</a>.</p>

<p>Правила для пакета программ применимы и для дистрибутива: этичный
дистрибутив должен содержать только свободные программы и направлять
пользователей только к свободным программам. Но что значит, что дистрибутив
&ldquo;содержит&rdquo; конкретный пакет программ?</p>

<p>Некоторые дистрибутивы устанавливают программы из скомпилированных пакетов,
входящих в состав дистрибутива; другие собирают каждую программу из исходных
текстов разработчика пакета и, строго говоря, <em>содержат</em> только
указания по получению и сборке пакета. В аспекте свободы то, как дистрибутив
устанавливает данный пакет, не существенно; если дистрибутив или его сайт
представляет пакет в качестве возможности, мы говорим, что он
&ldquo;содержит&rdquo; этот пакет.</p>

<p>Пользователи свободной системы контролируют ее, так что они могут
устанавливать, что им угодно. Свободные дистрибутивы предоставляют общие
средства, с помощью которых пользователи могут устанавливать свои
собственные программы и свои собственные модифицированные версии свободных
программ; они могут также устанавливать несвободные
программы. Предоставление этих общих средств не является этическим
недостатком дистрибутива, потому что разработчики дистрибутива не
ответственны за то, что пользователи берут и устанавливают по своей
инициативе.</p>

<p>Разработчики становятся ответственными за установку несвободной программы,
когда они направляют к ней пользователей&nbsp;&mdash; например добавляя ее в
список пакетов дистрибутива, распространяя ее со своего сервера или
представляя ее как решение, а не как проблему. В этом-то большинство
дистрибутивов GNU/Linux этически небезупречно.</p>

<p>Те, кто сами устанавливают пакеты программ, обладают определенным уровнем
умственной культуры: если мы им говорим, что Иго-го содержит несвободные
программы, а И-иго-го свободно, можно ожидать, что они запомнят, что есть
что. Но дистрибутивы рекомендуются обычным пользователям, а они такие
подробности в голове не держат. Они подумают: &ldquo;Как они сказали? Что
мне нужно? Кажется, Иго-го&rdquo;.</p>

<p>Итак, если мы собираемся рекомендовать дистрибутив публике, мы настаиваем,
чтобы его название не было сходным с названием дистрибутива, который мы
отвергаем, чтобы наше сообщение с рекомендацией только свободного
дистрибутива можно было надежно передать.</p>

<p>Другое отличие между дистрибутивом и пакетом программ заключается в том,
насколько вероятно добавление несвободных программ. Разработчики программы
тщательно проверяют тексты, которые они добавляют. Если они решили сделать
программу свободной, маловероятно, что они добавят несвободный
текст. Известны исключения, в том числе очень вредный случай &ldquo;двоичных
клякс&rdquo;, которые были добавлены в Linux, но это малая часть
существующих свободных программ.</p>

<p>Напротив, дистрибутив GNU/Linux, как правило, содержит тысячи пакетов, и
разработчики дистрибутива могут добавлять сотни пакетов в год. Если не
прилагать серьезных усилий, чтобы избегать пакетов, содержащих какие-то
несвободные программы, некоторые такие пакеты в дистрибутив наверняка
закрадутся. Поскольку число свободных дистрибутивов невелико, мы просим
разработчиков каждого свободного дистрибутива объявить о намерении сохранять
дистрибутив свободным, удаляя любые несвободные или вредоносные программы, в
качестве условия перечисления в списке свободных дистрибутивов. См. <a
href="/distros/free-system-distribution-guidelines.html"> рекомендации GNU
для свободных дистрибутивов систем</a></p>

<p>Мы не просим, чтобы такие обещания делали разработчики пакетов свободных
программ: это нереально и, к счастью, не нужно. Получение обещаний сохранять
программу свободной от разработчиков 30&nbsp;тысяч свободных программ
позволило бы избежать некоторых проблем за счет больших затрат труда со
стороны сотрудников ФСПО; кроме того, большинство этих разработчиков никак
не связаны с проектом GNU, так что у них может и не быть никакого резона
давать нам какие бы то ни было обещания. Так что мы обрабатываем те редкие
случаи, когда свободная программа становится несвободной, по мере того как
узнаем об этом.</p>

<h3>Периферийные устройства</h3>

<p>Для периферийного устройства компьютера нужна программа&nbsp;&mdash; это
может быть драйвер для компьютера или программа, загружаемая системой в
устройство, чтобы оно заработало. Таким образом, периферийное устройство
можно использовать и рекомендовать, если им можно пользоваться с компьютера,
на котором не установлено никаких несвободных программ&nbsp;&mdash; если
драйвер устройства и всякая программа, которую системе нужно загружать в
него, свободны.</p>

<p>Проверить это легко: подключите устройство к компьютеру под управлением
полностью свободного дистрибутива GNU/Linux и посмотрите, работает ли
оно. Но большинство пользователей хотело бы знать это <em>до</em> того, как
они купят устройство, так что мы перечисляем данные многих устройств на <a
href="https://www.h-node.org/">h-node.org</a>, в базе данных аппаратуры для
полностью свободных операционных систем.</p>

<h3>Компьютеры</h3>

<p>Компьютер содержит программы разных уровней. По какому критерию мы должны
сертифицировать компьютер, который &ldquo;Уважает вашу свободу&rdquo;?</p>

<p>Очевидно, операционная система и все, что над ней, должны быть свободны. В
девяностых годах стало возможно заменять загрузочные программы (BIOS на тот
момент), а поскольку они выполняются на процессоре, это того же рода
проблема, что и с операционной системой. Таким образом, драйверы и
загружаемые в устройства программы, установленные в системе или вместе с
ней, должны быть свободны.</p>

<p>Если в компьютере есть аппаратные функции, требующие, чтобы в системе были
установлены несвободные драйверы или программы для загрузки в устройства,
может быть, мы можем одобрить его. Если им можно пользоваться без этих
функций и если мы считаем, что большинство не станет устанавливать эти
несвободные программы, чтобы активировать эти функции, то мы можем одобрить
его. В противном случае мы этого не можем. Нужно будет вынести суждение.</p>

<p>На нижних уровнях в компьютере могут быть изменяемые предустановленные
программы для устройств и микропрограммы. У него также могут быть программы
в настоящей неперезаписываемой памяти. На сегодня мы решили игнорировать эти
программы в наших критериях сертификации, потому что в противном случае
никакой компьютер не смог бы им удовлетворять и потому что программы для
устройств, которые, как правило, не меняются, этически эквивалентны
электронным схемам. Так что наши критерии сертификации охватывают только
программы, работающие в центральном процессоре компьютера, а не в настоящей
неперезаписываемой памяти. Когда и по мере того как свободные программы
станут возможны для других уровней обработки информации, мы потребуем, чтобы
и на этих уровнях программы были свободны.</p>

<p>Поскольку сертификация продукта представляет активное содействие ему, мы
настаиваем, чтобы продавец в свою очередь поддерживал нас, говоря о <a
href="/philosophy/free-software-even-more-important.html"> свободных
программах</a>, а не об <a
href="/philosophy/open-source-misses-the-point.html"> открытом исходном
тексте</a> и называя сочетание GNU и Linux <a
href="/gnu/linux-and-gnu.html"> GNU/Linux</a>. Мы не обязаны активно
содействовать проектам, которые не станут признавать нашей работы и
поддерживать наше движение.</p>

<p>См. <a href="https://www.fsf.org/resources/hw/endorsement/criteria">наши
условия сертификации</a>.</p>

<h3>Страницы сайтов</h3>

<p>В наши дни страницы многих сайтов содержат сложные программы на JavaScript и
без них не работают. Это вредная практика, поскольку она затрудняет контроль
пользователей над их вычислениями. Более того, большинство этих программ
несвободны, несправедливы. Часто программы на JavaScript шпионят за
пользователем. <a href="/philosophy/javascript-trap.html">JavaScript
превратился в угрозу свободе пользователей</a>.</p>

<p>Чтобы решать эту проблему, мы разработали <a
href="/software/librejs">LibreJS</a>, дополнение для Firefox, которое
блокирует несвободные программы на JavaScript. (Простые программы, которые
реализуют незначительные функции в интерфейсе пользователя, блокировать не
обязательно.) Мы просим сайты освобождать их программы на JavaScript и
помечать их лицензии так, чтобы LibreJS мог их распознавать.</p>

<p>А между тем, этично ли ссылаться на страницу сайта, которая содержит
несвободную программу на JavaScript? Если бы мы упрямо стояли на своем, мы
ссылались бы только на свободные программы на JavaScript. Но ведь многие
страницы работают, даже когда их программы на JavaScript не
выполняются. Кроме того, вы чаще всего будете встречать несвободный
JavaScript не тогда, когда следуете по нашим ссылкам, а в других случаях;
чтобы избегать его, вы должны пользоваться LibreJS или выключать
JavaScript. Итак, мы решили просто ссылаться на страницы, которые работают
без несвободного JavaScript, призывая в то же время пользователей защищаться
от несвободного JavaScript вообще.</p>

<p>Однако если страница не может выполнять свои функции без работы несвободных
программ на JavaScript, то ссылка на нее бесспорно означает просьбу
выполнить эти несвободные программы. Мы принципиально не ссылаемся на такие
страницы.</p>

<h3>Заключение</h3>

<p>Применение основной идеи о том, что <em>программы должны быть свободны</em>,
к различным ситуациям приводит к различным практическим правилам. По мере
возникновения новых ситуаций проект GNU и Фонд свободного программного
обеспечения будут дорабатывать свои критерии свободы, чтобы вести
пользователей компьютеров к свободе, на практике и в принципе. Рекомендуя
только программы, дистрибутивы и аппаратные продукты, уважающие свободу, и
объявляя о своих правилах, вы можете оказать поддержку движению за свободные
программы, в которой оно очень нуждается.</p>

<div class="translators-notes">

<!--TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.-->
 </div>
</div>

<!-- for id="content", starts in the include above -->
<!--#include virtual="/server/footer.ru.html" -->
<div id="footer">
<div class="unprintable">

<p>Пожалуйста, присылайте общие запросы фонду и GNU по адресу <a
href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>. Есть также <a
href="/contact/">другие способы связаться</a> с фондом. Отчеты о
неработающих ссылках и другие поправки или предложения можно присылать по
адресу <a href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&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:web-translators@gnu.org">

        &lt;web-translators@gnu.org&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>. -->
Мы старались сделать этот перевод точным и качественным, но исключить
возможность ошибки мы не можем. Присылайте, пожалуйста, свои замечания и
предложения по переводу по адресу <a
href="mailto:web-translators@gnu.org">&lt;web-translators@gnu.org&gt;</a>.
</p><p>Сведения по координации и предложениям переводов наших статей см. в
<a href="/server/standards/README.translations.html">&ldquo;Руководстве по
переводам&rdquo;</a>.</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, 2016 Richard Stallman<br />Copyright &copy; 2016 Free
Software Foundation, Inc. (translation)</p>

<p>Это произведение доступно по <a rel="license"
href="http://creativecommons.org/licenses/by-nd/4.0/deed.ru">лицензии
Creative Commons Attribution-NoDerivs (<em>Атрибуция&nbsp;&mdash; Без
производных произведений</em>) 4.0 Всемирная</a>.</p>

<!--#include virtual="/server/bottom-notes.ru.html" -->
<div class="translators-credits">

<!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.-->
<em>Внимание! В подготовке этого перевода участвовал только один человек. Вы
можете существенно улучшить перевод, если проверите его и расскажете о
найденных ошибках в <a
href="http://savannah.gnu.org/projects/www-ru">русской группе переводов
gnu.org</a>.</em></div>

<p class="unprintable"><!-- timestamp start -->
Обновлено:

$Date: 2019/01/29 09:01:18 $

<!-- timestamp end -->
</p>
</div>
</div>
</body>
</html>