[devel] Языковые экосистемы

Paul Wolneykien manowar на altlinux.org
Вт Мар 6 12:43:12 MSK 2018


05.03.2018 20:12, Eugene Prokopiev пишет:
> Апстримы рекомендуют maven/gradle, npm/yarn,
> rubygems, cpan и прочие pip/virtualenv для библиотек, а еще
> sdkman/nvm/rvm и т.д. для выбора рантайма
> ...
> У этого способа есть критически важное преимущество - он работает.
> ...
> java/ruby/ocaml/nodejs/texlive с высокой вероятностью вылетают в
> дополнительные компоненты

  Лично я всеми конечностями за хороший преинсталл для TeXLive, NodeJS,
Go и т.д. То-есть за удобный способ установки пакетов из апстрима. Это
действительно удобно, пока ты пользователь _апстрима_.

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

  И тут я вижу два пути. Первый — паковать всё в Сизиф (как мы сейчас и
делаем). И второй: написать плагины для apt, которые бы работали с
апстримными, _не RPM_ репозиториями. Чтобы в спеке можно было написать
что-то вроде:

  Requires: nmp::my-favorite-lib

  **IMHO** Первый путь — тупиковый, ибо в пределе Сизиф становится
[мёртвой] копией всех пакетов в мире. Второй путь — перспективный, ибо в
нём Сизиф (apt) устанавливает *живой* контакт с другими репозиториями,
пакетными базами — становится узловой точкой, соединяющий дистрибутивы.


Подробная информация о списке рассылки Devel