LINUX.ORG.RU

Зачем нужен haskell-updater ?

 ,


0

2

в реализации haskell-platform в окружении Gentoo + haskell-updater проблем уже два года не наблюдаю

Значит в отсутствии haskell-updater проблемы есть? портаж, значит, не может обеспечить свою главную функцию - корректную установку ПО?

Что не так с авторами haskell-updater? Почему они не могли проинтегрироваться с пакетными менеджерами операционной системы?

Насколько я вижу, уважительная причина ровно одна:
https://wiki.haskell.org/Gentoo#haskell-updater
«It’s written in our favourite language (Haskell, of course) rather than a weird conglomeration of bash and Python.»

https://github.com/gentoo-haskell/haskell-updater
«Sometimes we have sub-slot blockers (when updating ghc or some specific package there are a list of blockers). Subslot blockers are a portage limitation (bug).»

А почему это не мешает всем остальным людям? А если мешает, то почему бы не профиксить сам portage?

★★★★

Последнее исправление: Shushundr (всего исправлений: 4)

Что не так с авторами haskell-updater?

Очевидно, они пишут на хаскеле.

Почему они не могли проинтегрироваться с пакетными менеджерами операционной системы?

Потому что «пакетные менеджеры ОС» нахер не нужны за пределами пары десятков* пакетов типа ядра и минимальной обвязки для загрузки и предоставления оболочки с CLI-утилитами.

Это многие поняли и еще более многие чувствуют, но пока не все осознали/смирились.


*Ну в генте, так уж и быть, можно сделать еще один пакет «perdolevo», для сборки и поломки всего своими руками, а то ж оба фаната разбегутся.

thesis ★★★★★
()

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

Имеющаяся в Gentoo документация https://devmanual.gentoo.org/general-concepts/slotting/index.html#sub-slots
не помогает мне понять тему. В ней не приводится пример, который обычно приводится в дискуссиях на тему сабслотов:

Допустим, что есть приложение, которое зависит от двух библиотек: БиблиотекаА и БиблиотекаБ. Каждая из библиотек в свою очередь зависит от пакета openssl, только разных версий.
Ну и, соответствнно, при запуске приложения будет попытка загрузить две разные версии одной библиотеки в память, что предположительно приведёт к ошибке, так как конкретно эта бибиотека вроде бы так работать не умеет (это наверное может иметь место, если например открывается какой-нибудь порт с фиксированным номером и затем используется из разных потоков, в то время как совместно использовать порт на слушание в linux могут только разные процессы. впрочем всё равно непонятно, ведь в linux потоки это и есть процессы. Но неважно, пример с портом это так, для примера. Может ещё что-нибудь там мешает.).

Ну и вот, механизм сабслотов вроде бы как позволяет вместо двух экземпляров библиотека openssl установить один общий, и использовать его одновременно из БиблиотекиА и БиблиотекиБ. Лично мне непонятно чем это помогает, почему это срабатывает и в чём суть механизма сабслотов.

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

Я не знаю, зачем нужен perl-cleaner. Но я знаю, что раньше существовал revdep-rebuild, а теперь необходимость в нём отпала (так написано на странице https://wiki.gentoo.org/wiki/Sub-slots_and_Slot-Operators)
«EAPI 5 … hopefully eliminating the need for revdep-rebuild and other package-rebuild scripts.»

То есть, если не нужен revdep-rebuild, то не должен быть нужен и haskell-updater

Shushundr ★★★★
() автор топика