ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Yury A. Romanov" <damned@altlinux.ru>
To: devel@lists.altlinux.org
Subject: Re: [devel] Языковые экосистемы
Date: Sat, 10 Mar 2018 00:16:00 +0300
Message-ID: <134ef76b-fa63-ed25-d975-04a126e7c3e9@altlinux.ru> (raw)
In-Reply-To: <4c401a44-b5e0-a20d-913f-96b41373ba17@altlinux.org>

On 06.03.2018 12:43, Paul Wolneykien wrote:
> 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_ репозиториями. Чтобы в спеке можно было написать
> что-то вроде:
> 
Есть ещё третий путь -- бутстрапить зависимости в приложение.
0. Самое ценное для репозитория дистрибутива в этих языках это 
приложения, на них написанные. К примеру, docker,vault, consul на go, 
redmine на RoR, какая-нибудь очередная ERP на Java
1. Приложений на языках с собственными экосистемами пишется много, но 
реально нужны из них единицы, все остальные приложения либо являются по 
факту узкоспециальными решениями, зачастую не совсем опенсорсными, либо 
либами, которые отдельно от приложений мало кому полезны.
2. Либы для языка, раскладывающиеся из пакетов это хорошо, но 
бесполезно, поскольку чаще всего современные "языки с экосистемами" 
генерят бинарники, не имеющие внешних зависимостей (не считая таковых 
уровня "нужна любая JRE версии 8" или "нужен glibc>=N" для приложений на 
go), то есть в рантайме им практически ничего не надо. Разработчикам 
приложений на сизифе (или любом другом дистро) эти либы тоже не особо 
нужны, поскольку это сразу же делает vendor-lock-in на сизиф, что было 
бы странно.

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


>    Requires: nmp::my-favorite-lib
> 
>    **IMHO** Первый путь — тупиковый, ибо в пределе Сизиф становится
> [мёртвой] копией всех пакетов в мире. Второй путь — перспективный, ибо в
> нём Сизиф (apt) устанавливает *живой* контакт с другими репозиториями,
> пакетными базами — становится узловой точкой, соединяющий дистрибутивы.
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
> 



  parent reply	other threads:[~2018-03-09 21:16 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-05 17:12 Eugene Prokopiev
2018-03-06  9:43 ` Paul Wolneykien
2018-03-09 18:01   ` Vladimir D. Seleznev
2018-03-09 21:16   ` Yury A. Romanov [this message]
2018-03-10  0:34     ` Vitaly Lipatov
2018-03-06 12:33 ` Igor Vlasenko
2018-03-10  4:53 ` Андрей Бергман

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=134ef76b-fa63-ed25-d975-04a126e7c3e9@altlinux.ru \
    --to=damned@altlinux.ru \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git