Латиноамериканский Фонд свободного ПО опубликовал полностью свободный вариант ядра Linux 6.13 - Linux-libre 6.13-gnu, очищенный от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В Linux-libre также отключены функции ядра для загрузки внешних несвободных компонентов, не входящих в поставку ядра, а из документации удалены упоминания об использовании несвободных компонентов...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=62589
Плюсы: полностью свободное ядро
Минусы: половина устройств не работает
ибо ядро освобожденное от работы
дык маньяна
Это хорошо если половина -- с бОльшей вероятностью там работает что то типа 1/5 драйверов и сломан иной функционал ядра
>Минусы: половина устройств не работает20 лет на Линуксе. Все требуемые блобы для моих железок Wi-Fi и Bluetooth брал из сторонних ресурсов. Потому-что в firmware ядра всегда отсутсвовали нужные мне блобы. Сложилось впечатление, что блобы в ядре Линукса вообще не нужны. И если во всех дистрах заменить ядро на латиноамериканский вариант, то этого никто и не заметит.
> 20 лет на Линуксе. Все требуемые блобы для моих железок Wi-Fi и
> Bluetooth брал из сторонних ресурсов. Потому-что в firmware ядра всегда отсутсвовали
> нужные мне блобы. Сложилось впечатление, что блобы в ядре Линукса вообще
> не нужны. И если во всех дистрах заменить ядро на латиноамериканский
> вариант, то этого никто и не заметит.Большую часть блобов в Linux уже давно выперли в отдельную репу Linux-firmware - основательно скостив объем работ вот этим господам.
Вывод: Устройства нужно тщательно выбирать для этого ядра.
Это да, но нет, т.к. важно не то какая доля не работает, а то какие драйвера не работают.
Когда вижу новости тут про Linux-libre, уже рефлекторно появляется вопрос "что сдохнет \ не запустится из домашнего железа?" :)
Навскидку. Видеокарточки красные и зелёные будут работать только в VESA-режимах.
> Навскидку. Видеокарточки красные и зелёные будут работать только в VESA-режимах.Радеоны даже в VESA не работают. Там штук 10 фирмварей на запуске надо :).
не десять а шесть, но суть не меняется (
> не десять а шесть, но суть не меняется (Ну может быть, хотя тут наверное в зависимости от модели. Надо в dmesg порыться будет.
>>хотя тут наверное в зависимости от модели.так точно, от шести до 21.
посмотреть можно тут https://wiki.gentoo.org/wiki/AMDGPU#Firmware_blobs_for_a_kno...
> Радеоны даже в VESA не работают. Там штук 10 фирмварей на запуске надо :).Вообще-то работают. Ибо до переключения в native mode они таки умеют косплеить VGA видяху. Но зачем вам - видеотормозитель с турбиной? У VBE перфоманс - полный ахтунг.
> Вообще-то работают. Ибо до переключения в native mode они таки умеют косплеить
> VGA видяху. Но зачем вам - видеотормозитель с турбиной? У VBE
> перфоманс - полный ахтунг.Когда последний раз смотрел сие ядро - после обычного пробегания текста инициализации на определённом моменте, где уже должен запускать логин-менеджер\иксы и прочая графика, переключалось в чёрный экран :). По SSH тоже не подключалось вроде бы (года полтора назад тыкал, деталей не припомню).
> Когда последний раз смотрел сие ядро - после обычного пробегания текста инициализации
> на определённом моменте, где уже должен запускать логин-менеджер\иксы и прочая графика,
> переключалось в чёрный экран :).А при этом модуль radeon/amdgpu грузиться пробовал? Ибо если да - он ессно попробует переключить видяху в нативный режим. И если нет фирмварей... ых, ых, ых, у вас теперь есть - наполовину инициализированная видяха! Которую уже вышибли их режима эмуляции VGA, но еще не смогли в нативный режим загнать нормально.
Чтобы этого не было надо ессно либо забанить модуль radeon или amdgpu - или еще радикальнее, nomodeset в командлайн ядра. Иначе без фирварей - по vid/pid железки модуль то ей вгрузят. А он и встрянет на середине экшна, когда вгруз фирмварей не получится.
> По SSH тоже не подключалось вроде бы (года полтора назад тыкал, деталей не припомню).
Это несколько странно. Хотя может с горя модуль с полуинициализированой видяхой и совсем конечно локап поймал, но обычно ssh все же работает, даже если модулю совсем душно и он ничего рисовать не может.
Передаю привет товарищам из Латинский Америки. Их революционный дух вдохновляет нас на борьбу за Свободу. Нужную работу делают.
>Не нужную работу делают. Но больше некому.Поправил
Ну если какие-нибудь товарищи сподобятся сделать программно-аппаратный комплекс с этим ядром, то будет неплохо.
> какие-нибудь товарищи сподобятся сделать программно-аппаратный комплекс с этим ядром,Издеваешься?
Это же работать нужно, квалификацию соответствующую иметь.
А не блобы из ядра за нрантики выковыривать. Ну а то что ничего после этого не работает, то пофиг.
Почему вообще сущесвтует "свободное" ядно с несвободными компонентами?
Разче дефолтное ядро с несвободными компонентами не является зашкваренным и разве имеет право называться свободным?
Разве дефолтное ядро не должно быть как сабж?
> Почему вообще сущесвтует "свободное" ядно с несвободными компонентами?Потому что людям нужно чтобы работало ядро, а не на шво6одьку наяривать.
Поэтому Линус и был против наездов всяких сектантов по поводу перевода ядра на жопоэль3.
Потому что это мгновенно бы сломало его.> не является зашкваренным
О, пошла ауешная терминология...
> Разве дефолтное ядро не должно быть как сабж?
А кому нужно нерабочее ядро в качестве дефолта?
Пусть этим всякие латиносы страдают.
Мои маршрутизаторы на OpenBSD без блобов не шибко страдальческими выглядят ;)
Очень рад конечно за вас, вашу OpenBSD и тем более за маршрутизаторы.Но к чему это всё, если речь
а) про ядро линукс
б) про десктоп в том числеЗЫ: как там на десктопе OpenBSD поживают дискретные видяхи? Все также?))
1. Смысл в том, что подход "без блобов жизни нет" несколько преувеличен.
2. Десктоп - это не только игрушки и расстановка иконок, у меня на мониторах больше половины рабочего пространства занято консолями. Т.е. без бинарных драйверов к 3д усорителям/видеокартам тосковать точно не буду. Главное - чтоб под сетевушки код был.
3. Речь не только по Линукс в частности, но и про открытое ПО в общем. И суть в том, что производители закрытого ПО все чаще открывают хотя бы часть кода, в то время, как сборщики открытого ПО все чаще интегрируют закрытые неревизируемые бинарники. Т.е. в современных рамках открытости или закрытости между windows, macos, linux и тд разница лишь в отношении количества открытого к закрытому. О чем, косвенно, и говорит обсуждаемая новость.
> 1. Смысл в том, что подход "без блобов жизни нет" несколько преувеличен.Да нет, наоборот. Хочешь без блобов - прдлься с подбором железяк (чаще всего не новых) и лишай себя существенно части функций (за которую ты между прочим еще и денег заплатил)
Это ж как в анекдоте:
- Доктор, а я буду жить?
-- Будете.
- Но зачем?> 2. Десктоп - это не только игрушки и расстановка иконок, у меня
> на мониторах больше половины рабочего пространства занято консолями.
> Т.е. без бинарных драйверов к 3д усорителям/видеокартам тосковать точно не буду.
> Главное - чтоб под сетевушки код был.Э... тут скорее наоборот))
Десктоп это не только консольки. Точнее - в 99% случаев это не консольки.
Я даже не уверен, будет ли аппаратное ускорение просто для видосиков работать.
А видеосики это не всегда развлекаловка.> Главное - чтоб под сетевушки код был.
Ну логично, если ты админ, то тебе нужны сетевушки. А если я занимаюсь 3д моделингом, то наверное мне на сетевешки наплевать, а вот дрова на видяху - мастхев.
> Т.е. в современных рамках открытости или закрытости между windows, macos, linux и тд
> разница лишь в отношении количества открытого к закрытому. О чем, косвенно,
> и говорит обсуждаемая новость.Новость говорит скорее о том, что абсолютно открытого практически нет, а то что есть - не работоспособно для большинства пользователей.
> Мои маршрутизаторы на OpenBSD без блобов не шибко страдальческими выглядят ;)Так, блин, где мои sidewinder'ы?! Я так и знал что эти, пушистые - извращенцы даже когда вопрос в сугубо земных технологиях.
>Потому что людям нужно чтобы работало ядро, а не на шво6одьку наяривать.Потому что этот ваш линукс это продаждная девка капитализма. Вместо того чтобы двигать в сторону открытия прошивок, они пилят ядро под закрытое железо.
> Потому что этот ваш линукс это продаждная девка капитализма.Коммуняки пока смогли родить только Хурд.
Как оно хорошо работает и так знаем.> Вместо того чтобы двигать в сторону открытия прошивок, они пилят ядро под закрытое железо.
Так они с этого начинали.
Но ты можешь сделать открытое железо и сделать для него...
Или не можешь?
В том что и дело, что корпорации имеют деньги и на них покупают мозги, а анонимные эксперты разообщены и не могут делать железо по одиночке. Поэтому надо нацианализировать все корпорации, чтобы они делали открытое железо дял анонимных экспертов.
> В том что и дело, что корпорации имеют деньги и на них покупают мозги, а анонимные эксперты разообщены и не могут делать железо по одиночке.ЧушЪ, анонам никто не мешает объединиться в Кооператив Свободного Железа, скинуться деньгами и делать его.
Но что-то я не видел чтобы кто-то из этих жадных неблагодарных существ хотел кому-то дать денег за работу... странно правда?> Поэтому надо нацианализировать все корпорации, чтобы они делали открытое железо дял анонимных экспертов.
Т.е классическое "отнять и поделить"?
Уже пробовали, не работает - получалось только убивать людей в лагерях и шарашках, или тырить и копировать чипы сделанные корпорациями.
Потому что современные системы -- это не только ЦПУ, но и ещё куча вспомогательных процессоров. И у каждого из них своя прошивка и иногда и целая микро-ОС. И не все устройства имеют полный код зашитый в ПЗУ, чтобы только включил питание и всё заработало. Сейчас чаще в ПЗУ живёт только код начальной инициализации, а основную прошивку как раз драйверы ядра и передают позже. Да, можно выпустить ядро Linux без этих блобов, но тогда работать будет только голый ЦПУ и те устройства, у которых прошивка захардкодена. То есть почти ничего.И GPL распространяется только на код, работающий на ЦПУ. А вот делать устройства с открытыми прошивками производители не торопятся от слова "совсем". Да, есть единичные примеры, но это считанные исключения.
>То есть почти ничего.Ничего это чего?
>но и ещё куча вспомогательных процессоров.Это какие?
Зависит от устройства -- сотовый или комп. Видеокарта, Wi-Fi, Bluetooth, сотовая связь (communication processor), GNSS (GPS / ГЛОНАСС и т.п.), power management CPU, сетевые карты, контроллер сенсорного экрана... У каждого из них свой вполне полноценный CPU и своя firmware/OS.Интереснее другое -- какой доступ у этих вспомогательных процессоров есть (или нет) к той же оперативной памяти. Устройства на внутренних шинах делятся на bus master и bus slave (ну или, кому нравится, на leader и follower или ещё как инклюзивно). Вторые только отвечают на запросы, что-то делая или предоставляя данные, в то время как первые могут инициировать запросы. Например, запросы чтения/записи из оперативной памяти.
И когда какой-нибудь процессор вайфая, взломанный через какой-нибудь эксплоит при помощи битого пакета, подправит память ядра Linux, считай, сможет взломать и основную OS. Народ, почесав репу, начал ограничивать прямой доступ к памяти и другим устройствам для вспомогательных процессоров (ограничивая диапазоны адресов в операциях DMA и т.п.). У отдельных производителей (например, Qualcom, Mediatek) стали появляться кастомные аппаратные "фаерволы", позволяющие чётко прописать какому bus master'у к каким устройствам разрешено обращаться. Но не всегда эти фаерволы бывают проинициализированы и проинициализированы правильно. И тогда у хакеров остаётся возможность для взлома основной системы через какой-нибудь вспомогательный процессор.
Включая блобы в ядро этот вапш Линус Торвальдс не то что, не способствует открытости, она наоборот способствует не открыванию блобов. Зачем открывать блобы, если их и так включат в ядро.
Если точнее, то загружаемые блобы можно поделить на два типа: калибровочные параметры и код. Как правило, если блоб большой, а не десяток байт, то там уже не только данные, но и код. Ну, а какие блобы загружаются в ядро при загрузке конкретно ваших девайсов, можете сами посмотреть на своей системе.
Судя по всему, Linux Libre можно использовать в виртуализации в гостях. Железо в них стандартное, исходный код драйверов открыт, прошивки (linux-firmware) не требуются.
Бесполезная работа. Корпорасты и патентные тролли всё-равно при желании найдут к чему придраться.
Ну почему же, весьма полезна. Как минимум разбиение на "свободное" и "частично открытое" ядро можно подсовывать большинству воинствующих хейтеров-фанатиков (в рамках и у меня на винде к системе и программам файлики readme открытым текстом, и у вас часть используемого кода закрыта), плюс использовать под "независимые" проекты, дабы избегать "отечественная сборка из импортных бинарников"
> Ну почему же, весьма полезна. Как минимум разбиение на "свободное" и "частично
> открытое" ядро можно подсовывать большинству воинствующих хейтеров-фанатиков (в рамках
> и у меня на винде к системе и программам файлики readme
> открытым текстом, и у вас часть используемого кода закрыта), плюс использовать
> под "независимые" проекты, дабы избегать "отечественная сборка из импортных бинарников"По нормальному - из ядра надо бы еще оставшиеся блобы выпихать в linux-firmware, да и дело с концом.
> Корпорасты и патентные тролли всё-равно при желании найдут к чему придраться.Это в первую очередь от (бинарных) закладок разных Jia Tan'ов а не от корпорастов.
Одно дело когда в блобе закладка - другое когда известно что, нет.И ещё: они что, уже и запрещают блоча устанавливать не GPL ПО - начиная с драйверов видеокарт? С сотнями мегабайт устанавливающих зловреды(~с ИИ).
Нет?
Тогда это брехня что они за чистоту кода ядра!
В ядре firmware помещается в отдельном каталоге. И в нём никто разработку не ведёт. Блобы, которые находятся там, предназначены для периферийного оборудования. Туда помещается, либо пермиссивка, либо freeware блобы.Тролли, которые критикуют libre-ядро, стараются переоценить значение блобов. Будто это супер важный компонент.
Тенденция такова, что практически любое оборудование идёт с бинарный прошивкой, это дешевле, поскольку не нужно отдельной микросхемы и позволяет обновлять низкоуровневую часть вместе с драйвером. Выпускать ядро без таких прошивок - путь в никуда.
Ещё раз, прошивки системной логики (для северного и южного мостов) материнских плат не помещаются в kernel. Они идут вместе с платой, зашЫты в постоянную память материнки. Пацаны из kernel им не занимаются. Поэтому и говорят, что Свободного железа нет!Firmware не содержит аппаратные прошивки материнских плат.
Проблема не в "бинарности" прошивки, а в том, что к нему нет сорцов. И нужно говорить не о том, что "бинарная" прошивка дешевле, а о том, почему производители не хотят открывать свои прошивки. А причины могут быть разные:
* нежелание показывать г-нокод.
* нежелание светить какие-то корпоративные секреты, наработки
* сокрытие использования каких-то чужих патентов, чужого кода и т. п.
* сокрытие закладок
* сохранение возможностей для запланированного устареванияЭто так, навскидку.
> Тролли, которые критикуют libre-ядро, стараются переоценить значение блобов. Будто это
> супер важный компонент.Сильно от железки зависит. Скажем современные видяхи, или некоторые вафли - без фирмвары, таки, будут неоперабельны.