LINUX.ORG.RU
Форум — Talks  

В Gentoo намерены прекратить поставку Chromium из-за трудности сопровождения

 , , ,


1

2

Сопровождающий пакет (ebuild) Chromium в Gentoo Linux объявил о скором удалении пакета из репозитория из-за слишком больших трудозатрат на сопровождение. Упоминается, что сопровождающий не имеет возможности продолжать поддерживать пакет на должном уровне после сокращения цикла публикации релизов Chrome. Если в ближайшие дни не найдётся доброволец, готовый взять на себя сопровождение Chromium в Gentoo, то 24 октября пакет www-client/chromium перестанет быть доступен для установки.

Новые корректирующие версии Chromium последнее время появляются каждую неделю и содержат исправление сотен уязвимостей. Помимо участившихся релизов, сопровождение усложняют изменения в инструментарии upstream-проектов и конфликты, связанные, с одной стороны, со стремлением предоставить пользователям должное качество, избегая по-возможности встраивания зависимостей в пакет, и, с другой стороны, с необходимостью оперативной публикации обновлений с исправлением уязвимостей. Компиляция Chromium занимает 15-16 часов на ноутбуке и около 6 часов на мощном ПК, при том, что перед публикацией пакета требуется проверить все варианты сборки с разным USE-флагами.

Chromium использует большое число встроенных зависимостей (например, ffmpeg, harfbuzz, zstd), но особенно усложнило сопровождение добавление в зависимости Rust и Go. В случае с Rust проблемы связаны с использованием экспериментальных возможностей, совместимость с которыми может нарушаться с новых релизах, а Go с тем, что инструментарий требует доступа к сети, который запрещён для сборочных окружений правилами Gentoo. Помимо этого, отмечены сбои в системе непрерывной интеграции Google, которые временами приводят к публикации неполных архивов с кодом.

По мнению сопровождающего, для качественной поддержки пакета требуется команда как минимум из трёх человек со знаниями языков C, C++, Go, JavaScript и Rust, а также знакомых со специфичными инструментариями Google. У одного сопровождающего на поддержание Chromium уходит более 6 часов в неделю, т.е. почти целый рабочий день из своего свободного времени, и это не считая ситуаций, в которых приходится диагностировать и исправлять ошибки, а также приводить состояние сборки к соответствию требованиям Gentoo.

Последней каплей, после которой сопровождающий решил прекратить поддержание пакета, стало обесценивание его труда при обсуждении слишком медленной публикации обновлений Chromium в Gentoo (в Gentoo сейчас поставляется версия 151 при актуальном выпуске 155). Один из участников дискуссии предложил использовать готовый ebuild-сценарий из стороннего репозитория Bentoo, поддержание которого автоматизировано. Сопровождающий пояснил, что простое копирование недопустимо без аудита изменений и полного тестирования всех вариантов сборки с разными USE-флагами, иначе невозможно гарантировать работоспособность пакета у всех пользователей. На что получил, ответ, что всё это чушь (ridiculous).

В случае удаления пакета www-client/chromium, пользователи могут переключится на использование пакета www-client/google-chrome, в котором упакованы поставляемые Google бинарные сборки Chrome, или использовать сторонние сборки Chromium в формате Flatpak.

https://www.opennet.ru/opennews/art.shtml?num=66489

Перемещено hobbit из general

Ответ на: комментарий от Stanson

QtWebEngine (на том же самом хромиуме) собирается без проблем и даже не так чтобы долго и не так чтобы прям много памяти для сборки требуе

Ну, как бы там просто движок, во-первых. А во-вторых, и ЮЗ-флагов поменьше.

Ololo_Trololo ★★★
()
Ответ на: комментарий от altwazar

Начинаешь добавлять изменения и каждое обновление приводит к пересборке почти всей системы.

Значит что-то делаешь не так. Nix медленный, с пакманом не сравнится, но к пересборке всей системы точно не приводит.

Я обновляю nixpkgs раз в неделю. Мелкие изменения в коде - по несколько раз в день, switch обычно занимает секунд 30, после генты это смех.

Жестко компенсируется невероятной гибкостью, кол-вом пакетов в репозитории, возможностю патчить пакеты парой строк, возможностю запускать приложения без установки (nix run nixpkgs#nano) и более

MaZy ★★★★★
()
Ответ на: комментарий от MaZy

Nix медленный, с пакманом не сравнится, но к пересборке всей системы точно не приводит.

В никсе есть дерево зависимостей пакетов. При изменениях где-то ближе к корню весь бинарный кэш для вышестоящих пакетов становится бесполезным и они все пересобираются. Потом незначительное обновление приводит к пересборке всей этой ветки, что при использовании роллинга - считай каждое обновление.

Пользовался nix-ом и держал у себя локальное зеркало этого кэша (за неделю). Как раз рассматривал как альтернативу генте. Но проще в арче изменения поддерживать.

altwazar ★★★★★
()
Ответ на: комментарий от MirandaUser2

Обычно зависимости зафиксированы и хранятся в файле deps, откуда извлекаются при сборке.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от Qui-Gon

Там уже давно не браузер, а ОС полноценная: блютус, гироскопы, поддержка Андроид - чего только нет.

LongLiveUbuntu ★★★★★
()
Последнее исправление: LongLiveUbuntu (всего исправлений: 1)
Ответ на: комментарий от LongLiveUbuntu

Как выяснилось ещё ранее, вконтакт не нужен. Впрочем заявление твоё всё равно сомнительное, это надо очень некомпетентным быть чтобы добиться неработоспособности аудиостриминга в фф.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

в Win365 в ФФ не работает камера. Только в хромом. Вот как и почему - хрен его знает. То есть она камеру видит, активирует, лампочку зажигает - а изображение передать не может.

Qui-Gon ★★★★★
()
Ответ на: комментарий от Qui-Gon

Пользователи Win365 должны страдать!

anonymous
()
Ответ на: комментарий от Ololo_Trololo

У меня слака, так что «ЮЗ-флагов» там почти нет.

Stanson ★★★★★
()
Ответ на: комментарий от LightDiver

Но до сего момента человек понимал как что устроенно и как это сделать «руками». Условно, пользовался программами для расчета, но мог и вручную при необходимости. А у меня такое впечатление, что грядет такая сложность, что человек уже не сможет её осилить.

urxvt ★★★★★
()
Ответ на: комментарий от urxvt

Да ничего подобного. Для абсолютного большинства мир - магия. Работает потому что работает, а что там внутри - ну кажется там электроны. Только узкие специалисты что то понимюат более менее и только по своей области, а мир вне их специализации - и для них магия.

Давай простое. Из каких деталей состоит кухонная тумба. Этим тумбам тысячи лет.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от urxvt

Причём, на примере chrome и firefox - если б уж такая разница была большая... Но chrome жрёт в разы больше человеко-часов!

Shadow ★★★★★
()
Ответ на: комментарий от Shadow

Он скорее всего развивается на порядок быстрее. Больше кода, больше проверок. Но уж извини, жаловаться на это - такое себе.

Я как раз занимался разработкой войса. Подгонял все под разные браузеры. Самое поганое - сафари. Хромиум доставлял проблем с новыми тестовыми фичами, но там скорее польза, чем вред - нужно много нового знать. А лиса - стабильность. Мало нового, зато все работает железобетонно.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от LightDiver

Я доверяю своим глазам. Когда «новое» в css и подобном стало неподдерживаемым разумными средствами, пришлось создать rust. А у google есть неразумные средства.

Shadow ★★★★★
()

Максимально странная позиция сопровождающего. Не думаю, что кто-то ожидает проверки всех сочетаний флагов от кого-то. И даже если он вообще все флаги уберёт, это всё ещё лучше, чем не иметь никакого хромиума вообще.

Но, конечно, человек имеет право делать то, что считает нужным, а все остальные имеют право взять на себя эту работу, если знают, как надо лучше.

Лично моя позиция. Если уж максимально добросовестно относиться, то проверять сборку нужно на сочетании флагов по умолчанию, а также на переключении каждого поддерживаемого флага. Но никак не на всех сочетаниях всех флагов. При этом множество поддерживаемых флагов обязательно нужно уменьшать до разумного, не нужно официально поддерживать вообще все флаги, которые только теоретически можно переключить в системе сборки. А кому сильно надо - оставить неподдерживаемые пути настройки чего угодно.

vbr ★★★★★
()
Ответ на: комментарий от vbr

Проблема в том что оно перестало собираться без подтягивания сорсов в онлайн режиме. А разница между такой сборкой и бнальной бинарью не велика - ибо каждый раз при сборке это говно будет что-то там тебе непредсказуемое натягивать, куда можно запихать не меньше зондов чем в бинарь. Да и такое в базовом генту не кошерно. Но можно в оверлеях.

Тем более стон идет в основном со стороны пользователей бинарных дистров - вах вах вах , нищасные гентушкники, без хромиума остались. Да не без хромиуима а без компилируемого хромиума - бинарный да пожадуйста бери да ставь. Но нет же генту говно. Сами сидят на всем бинарном и как-то все отлично не напрягает. А генту - фу плохо, ну как же хромиум из сорсов не собирается

Qui-Gon ★★★★★
()
Ответ на: комментарий от LightDiver

Так я же не про большинство, а про разработчиков того же Хрома. Не далек тот час, когда они сами не смогут без бота собрать свой проект.

Давай простое. Из каких деталей состоит кухонная тумба. Этим тумбам тысячи лет.

Я сам мебель (шкаф, кровать) проектировал, так что мимо :)

urxvt ★★★★★
()
Ответ на: комментарий от urxvt

Так скорее всего уже. Гугл один из первых в этом и врядли до сих пор не пересадил разрабов на ИИшки.

Тут как раз в том и проблема, что тонны кода, генерируемые ими, уже нельзя проверять вручную.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от Qui-Gon

Гитхаб вон ещё грозится простить авторизацию при клонировании проектов по HTTPS.

urxvt ★★★★★
()
Ответ на: комментарий от Qui-Gon

Проблема в том что оно перестало собираться без подтягивания сорсов в онлайн режиме.

Не верю. Нет ни одной системы сборки, которая бы требовала онлайн. Я больше скажу, 99% серьёзных пайплайнов работают в оффлайн режиме, потому, что никому не нужен билд, который собирается в зависимости от погоды на марсе.

Тем более стон идет в основном со стороны пользователей бинарных дистров - вах вах вах , нищасные гентушкники, без хромиума остались.

Жалко же маленьких. Последний оплот свободы. Кто если не они.

vbr ★★★★★
()
Ответ на: комментарий от Ololo_Trololo

стал уставать от дурак-деятельности и подумаю свалить на какой-нить другой дистр.

nixOS? :)

P.S. Эта шутка, конечно, может и не идеально корректная, но суть как раз такая, что в nixOS не нужно ничего именно что «поддерживать» в привычном смысле. P.P.S. Я мимокрокодил, как раз очень люблю Go и Rust (которые, кстати, компилятся в статические, что важно, бинари), поэтому ругаться и спорить прошу НЕ.

paddlewan ★
()
Ответ на: комментарий от vbr

никому не нужен билд, который собирается в зависимости от погоды на марсе.

Гуглу нужен. Они тебе дают продуки - бинарный зонд с встроенным броузером. И зависит он не от погоды на марсе а от инфраструктуры самого гугла и его зондостроительных отделов.

Я больше скажу, 99% серьёзных пайплайнов работают в оффлайн режиме

Ну если ты перекачаешь себе все сорсы гугла то тоже будешь в оффлайн режиме. Просто тарбол они тебе не дадут. Опенсорс - ну на тебе гит, качай. Но тебя тут ждут трудности - тебе надо пониать какой коммит из чего тащить, ибо релизов там нет. То емть сорсы есть, и вроде доступны. Но собрать их извне - адовый геморрой. А учитывая что гугля выплевывает новый релиз каждые полмесяца - ты не успеешь за ними.

Qui-Gon ★★★★★
()
Ответ на: комментарий от paddlewan

Осспаде. Почитал тред. LOR, ты такой LOR :)

Оффтоп. Вспоминаю времена linux.ru, linuxportal.ru. Коммьюнити было подобрее, конечно, мда… :)

paddlewan ★
()
Ответ на: комментарий от urxvt

когда они сами не смогут

А ты уверен, что сейчас могут?

Shadow ★★★★★
()
Ответ на: комментарий от paddlewan

Я мимокрокодил, как раз очень люблю Go и Rust (которые, кстати, компилятся в статические, что важно, бинари),

Хм. Это Rust то в статику? ну,ну.

anonymous
()
Ответ на: комментарий от altwazar

При изменениях где-то ближе к корню весь бинарный кэш для вышестоящих пакетов становится бесполезным и они все пересобираются

А какой пакет так близко к корню приходилось патчить?

Gary ★★★★★
()
Ответ на: комментарий от Gary

А какой пакет так близко к корню приходилось патчить?

qt и месу. С месой вообще беда была, так как менять её постоянно требовалось, вроде там какой-то механизм для её легкой замены сделали, но я уже забил к тому времени.

И пересборок много, даже когда патч не близко к корню. В самой роллинг версии всегда что-нибудь меняется близко к корню из-за чего пакет с твоим патчем той же версии снова пересобирается. Из-за чего с бинарным кэшем nixos unstable даже с патчами на верхушке дерева компилить приходилось как в генту без бинарного кэша.

Затем другая особенность. В генту модификации через use флаги, наложение патчей и компиляция сделаны как можно более удобными для пользователя. В nixos же в приоритете воспроизводимость и декларативность, и её обеспечение частично ложится на плечи пользователя. Приходится всё оформлять в виде nix-кода, а не просто закинув патч в директорию или поменяв use флаг.

altwazar ★★★★★
()
Ответ на: комментарий от firkax

Щас я буду человеку объяснять как ffmpeg и socat настраивать.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от altwazar

Если честно хочется поиронизировать над тем что месу надо патчить, а говорили что с опенсорсными дровами все наладилось. А так по идее можно ещё было зафиксировать дерево непосредственно над своими патчами, но т.к. я не сталкивался с таким юз-кейсом не знаю как бы из него выходил.

Приходится всё оформлять в виде nix-кода, а не просто закинув патч в директорию или поменяв use флаг.

Все же патчи вроде относительно легко применяются через override, но это все равно менее удобно чем в Gentoo.

Gary ★★★★★
()
Ответ на: комментарий от Gary

…а говорили что с опенсорсными дровами все наладилось.

Даже под виндой для amd/nvidia драйвера надо ставить то бету, то откатываться из-за багов. Они в них всегда есть. А с патчами для месы можно и новые фишки получить на месяц раньше, как типа fsr4 для rdna2.

altwazar ★★★★★
()
Ответ на: комментарий от anonymous

Я и firefox из флатпака использую, хорошая практика для браузеров. А вот компилить обновляющийся с дикими задержками хромиум никогда смысла не было.

altwazar ★★★★★
()
Вы не можете добавлять комментарии в эту тему: только для зарегистрированных, score>=50.