Популярные дистрибутивы Linux нельзя назвать свободными продуктами в полном смысле этого слова – все они содержат проприетарные компоненты. В основном это включенные в состав ядра бинарные прошивки (firmware) для различных устройств, не удовлетворяющие принципам свободы софта, заданным Ричардом Столлменом. Латиноамериканское отделение Фонда свободного ПО (Free Software Foundation) выпустило очищенную от идеологически чуждых элементов версию ядра GNU/Linux 3.5 всего через день после объявленного Линусом Торвальдсом релиза. Попробуем разобраться, кому и зачем нужен этот продукт.

Если верить заявлению создателей проекта Linux-libre, ядро Linux перестало быть свободным в 1996 году, когда Линус Торвальдс одобрил включение туда первых бинарных прошивок. Это было вынужденной мерой – загрузка микропрограммного обеспечения в устройства средствами ОС использовалась все чаще. Такой прием имеет массу преимуществ, он, к примеру, упрощает обновление встроенного ПО.

Со временем число проприетарных компонентов росло, и энтузиасты решили выпустить свой продукт, пригодный для использования в полностью свободных дистрибутивах. Кроме ядра Linux-libre 3.5-gnu пользователям доступен скрипт Shell с шаблонами для поиска двоичных вставок и набор созданных с его помощью патчей для исходного кода.

Сказать по правде, ценности в этой разработке я не вижу – дистрибутивы без проприетарных вставок существуют давно. Популярностью они, по очевидной причине, не пользуются. Но если людям нужна еще некая эталонная разновидность ядра – пусть будет.

Тем не менее, позиция создателей Linux-libre (а также избавленных от проприетарных вставок дистрибутивов) видится мне странной – зачем выпускать урезанный продукт? Не поддерживающий кучу железа и пользующийся спросом только у фанатов СПО. Есть ведь более цивилизованные способы решения проблемы – в сообществе Debian GNU/Linux, к примеру, совместно с разработчиками ядра смогли выделить бинарные прошивки и разместить их в разделе репозитория “non-free”. Пользователь сам может решить – нужны ли ему несвободные компоненты.

Споры о допустимости поставки проприетарного firmware в составе ядра идут уже много лет. На практике преобладает продиктованный здравым смыслом подход Торвальдса – бинарные “блобы” считаются частью оборудования, хотя и поставляются вместе с ядром системы. Это правильно, поскольку они являются идентичными прошитому в платы микропрограммным обеспечением, и операционная система только загружает код в устройства.