LINUX.ORG.RU
решено ФорумTalks

Единый формат пакетов


0

1

Вопрос к умным людям, а не школьникам, которые начнут сейчас орать, что есть сорс-тарболлы =)

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

Вопрос вот в чем, почему до сих пор нет единого формата пакетов, совместимого со всеми популярными дистрибутивами? Если есть, то почему он не принят такими конторами как Red Hat, Novell, Debian Canonical? И в чем, собственно, реальные технические препятствия для его внедрения.

Следующий момент. Почему до сих пор не была уничтожена проблема депенденсов (вне пределов репозиториев). То есть, почему не используется такой тип пакетов, который сразу бы устанавливал используемые при разработки программы библиотеки, если таковых нет в системе. Мне, в общем-то, нравится, как это было сделано в PBI/PC-BSD, но это BSD, а совсем не какая-нибудь убунту. Так, почему нельзя было пойти тем же путем в убунте?

★★★

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

Так alien же рабочий есть, зачем единый формат делать.
А насчет депенденсов не понял, на убунте скачанный деб пакет либы тоже устанавливает.

Tark ★★
()

У каждого дистростроителя-свой велосипед. И никто не хочет делать одну пакетную базу.
К.О.

X10Dead ★★★★★
()

почему до сих пор нет единого формата пакетов, совместимого со всеми популярными дистрибутивами?

Потому что тогда не будет всех этих дистрибутивов.

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

Индивидуальные различия компоновки пакетов, версий, утилит настройки и т.п.

почему не используется такой тип пакетов, который сразу бы устанавливал используемые при разработки программы библиотеки, если таковых нет в системе

Используйте дженту. Там так и есть. А в «полухомячковых» дистрибутивах пакеты разработки считаются специальными.

почему нельзя было пойти тем же путем в убунте?

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

Eddy_Em ☆☆☆☆☆
()

> То есть, почему не используется такой тип пакетов, который сразу бы устанавливал используемые при разработки программы библиотеки, если таковых нет в системе

http://en.wikipedia.org/wiki/PackageKit

aho
()

Следующий момент. Почему до сих пор не была уничтожена проблема депенденсов (вне пределов репозиториев). То есть, почему не используется такой тип пакетов, который сразу бы устанавливал используемые при разработки программы библиотеки, если таковых нет в системе. Мне, в общем-то, нравится, как это было сделано в PBI/PC-BSD, но это BSD, а совсем не какая-нибудь убунту. Так, почему нельзя было пойти тем же путем в убунте?

А кто будет обеспечивать обратную совместимость новых версий библиотек? То что ты описал не решит проблему зависимостей. PBI это Windows way, он ведёт к 40GB в папке WinSxS. :)

alpha2
()

Будь Ъ, разбирай пакеты и кидай все ручками куда надо.

А вообще gentoo-way наше все!

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

> потому что это даже не «полу», а полностью «хомячковый» дистрибутив. Странно, что в его репозиториях вообще есть какие-то пакеты разработки...

потому-что программы и то же ядро пишут на федорах и убунтах, а «нехомячки», осилившие генту, в большинстве своем умеют только собирать готовое, т.е. по сути сами являются хомячками

aho
()

> возникает необходимость поставить приложение не через репозитарии.

таких надо выводить на главную площадь города и показательно пороть.

почему он не принят такими конторами как Red Hat, Novell, Debian Canonical?

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

И в чем, собственно, реальные технические препятствия для его внедрения.

фгм.

Rastafarra ★★★★
()

>как сделано в PC-BSD
Нет, такого счастья нам не надо спасибо.

anonymous_sama ★★★★★
()

Ну есть же. LSB
А формат там RPM
И даже бубунты его умеют

unanonymous
()

Ты сам школоло, раз не бачишь, что альтернатива дистрибутивным пакетным менеджерам и зависимостям только одна: пакеты неедрической массы, содержащие все зависимости унутре себя

r_asian ★☆☆
()

Alien - конвертер все-таки. Что делает PackageKit не совсем понял.

У каждого дистростроителя-свой велосипед. И никто не хочет делать одну пакетную базу.

А есть на это какие-то ОБЪЕКТИВНЫЕ причины?

Индивидуальные различия компоновки пакетов, версий, утилит настройки и т.п.

Непреодолимо?

Вообще, речи о гиках и не шло. Я изначально говорил о доступности для энд юзера. И Windows-Way в данном случае весьма и весьма неплох т.к. каждый гиг стоит копейки, а 10-20 прог установленных не из дистрибов принесут с собой ну максимум мегабайт пятьдесят нестандартных библиотек. При этом, я лично ценю свой час рабочего времени уж точно больше, чем эти пятьдесят освобожденных метров на диске, думаю, как и многие из вас. Но я не хотел бы флейма на эту тему =)

LSB

Да, что-то такое. Вы сами пробовали из него ставить что-то в DEB-дистрибутивах? Все ок работает?

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

Странно, что вы не задали вопрос шире: почему так много дистрибутивов Linux? Почему в каждом свой репозиторий отдельный? Почему не сделать один дистрибутив и один репозиторий с единым форматом пакетов?

То, что пользователи от этого выиграют, думаю, всем очевидно. А вот самим разработчикам дистрибутивов это нафиг не нужно. Их и так все утсраивает. Им не нужна победа Linux на десктопах, им бабло нужно рубить. Ну, не всем. Некоторые идейные... Маргиналы гребаные. Носятся со своими идеями, создают 2534 дистрибутив Linux с особым идейным запашком, который скачает человек 10 за год...

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

Все ок работает?

хз как работает. Так как не попадалось ни одного пакета

unanonymous
()
Ответ на: комментарий от r_asian

> альтернатива дистрибутивным пакетным менеджерам и зависимостям только одна: пакеты неедрической массы, содержащие все зависимости унутре себя

пакеты конвертированные alien ( deb <-> rpm ) вполне себе работоспособны в большинстве случаев

aho
()
Ответ на: комментарий от Opeth

>И Windows-Way в данном случае весьма и весьма неплох...

Жаждущие оффтоп-way смело шагают на оффтоп.

Nirdosh
()
Ответ на: комментарий от delete83

delete83 наверное, вы в наиболее полной мере ответили на мой вопрос =)

К вопросу о Gentoo, я отлично отношусь к этому дистрибу. И даже как-то собрал/поставил/посмотрел/снес. Он решает многие узкоспецифичные задачи лучше многих других дистрибутивов, но для эндюзера по понятным причинам не подходит. Давайте уже не будем о нем в этом треде, ок? )

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

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

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

А давайте не будем об эндюзерах, ок? Сферический юзер в вакууме - никому не нужная бесполезная субстанция.

Chaser_Andrey ★★★★★
()

> Вопрос к умным людям, а не школьникам, которые начнут сейчас орать, что есть сорс-тарболлы =)

а ведь тонко получилось :) и да - проблема с пакетами есть только в одном случае - есть закрытый софт в rpm/deb, тогда как раз гораздо проще его заставить работать через alien в «пакетных» дистрибутивах, в остальных случаях есть ppa и checkinstall

aho
()
Ответ на: комментарий от Rastafarra

> возникает необходимость поставить приложение не через репозитарии

таких надо выводить на главную площадь города и показательно пороть.

угу, ну поставь мне в дебьяне NetBeans современный из репы официальной
то, что там есть - протухло пару лет назад

TERRANZ ★★★★
()

> Вопрос вот в чем, почему до сих пор нет единого формата пакетов, совместимого со всеми популярными дистрибутивами?

Он есть. Описан в LSB (это старый RPM фактически).

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

Набор стандартных зависимостей указан в той же LSB (хотя он невелих). Cтандартизовать _все_ зависимоcти не имеет смысла - слишком разные версии.

tailgunner ★★★★★
()

Так есть же единый тип пакетов - сорцы! Переходи на Gentoo

MahMahoritos ★★★
()

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

Донейшены сразу поиссякнут и вполне вменяемое (гном3 к этим не относится) сообщество начнет разворачивать телегу в нужном направлении.

Deleted
()
Ответ на: комментарий от Chaser_Andrey

> Зато хочется создать распределенный вычислительный кластер для компиляции из всех доступных компьютеров, смартфонов и микроволновки с холодильником.

В данном случае речь идет только о распространенных дистрибутивах для ПК. У меня нет достаточного опыта работы с линуксами для микроволновок и кофеварок, чтобы судить об их особенностях =)

Жаждущие оффтоп-way смело шагают на оффтоп.

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

> Все ок работает?
хз как работает. Так как не попадалось ни одного пакета

Как-бы вот она и ситуация с LSB. Наверное, пока какая-нибудь убунта либо не примет ЛСБ вместо ДЕБ, либо не захватит 99% линукс-рынка, формат не пойдет

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

Да и вообще, ТС описывает обыкновенную, банально-зондальную систему.

Пусть будет в Линуксе зоопарк пакетов, хомоламерам не жалко.

Deleted
()
Ответ на: комментарий от r_asian

не нравится - качаю с офф сайта оракула (теперь уже оракула) и ставлю

TERRANZ ★★★★
()

тема уже 100_500 раз пробаяненая (в т.ч. и мной) от количества порванных баянов ничего пока не поменялось.

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

разрабы просто слетятся на такую приманку, как пчелы на блюдце с сахаром. Не зря же назвали - honeycomb.

Deleted
()

И в чем, собственно, реальные технические препятствия для его внедрения.

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

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

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

Возможно вам стоит постараться быть терпимее к тем кто делает свое дело так как считает нужным, а не пускать сопли на форумах -

Непонятно, кто из-за этого выигрывает, а страдает обычный юзер

почему до сих пор нет

почему он не принят

Почему до сих пор не была уничтожена

Nirdosh
()
Ответ на: комментарий от Cancellor

По вам, батенька, макось плачет, ей-богу.

да ну, там как раз разнобой прямо в одной ОС, почти весь открытый софт ставится через задн macports, а закрытый - через инсталляторы и в bundles, уже как минимум три способа

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

macports - способ неофициальный, искаропки там только .pkg и бандлы. Из .pkg, собственно, ставится сама система, ну и всякие общесистемные либы/фреймворки, которые держать изолированно не имеет смысла. А вот бандлы - это и есть реализация того, что так страстно желает ТС, при чём это куда лучше, чем .pbi.

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

> ну и всякие общесистемные либы/фреймворки, которые держать изолированно не имеет смысла.

а еще всякие серверные приложения, вмвари и т.п.

А вот бандлы - это и есть реализация того, что так страстно желает ТС


бандлы возможны как раз за счет того, что в mac os множество стандартных библиотек определенных версий, если бы их не было ( как в разных дистрибутивах ) - они бы стали просто огромными

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

Как вывод, зоопарк типов пакетов существует по той же самой причине, по которой существует зоопарк дистрибутивов?

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

> а еще всякие серверные приложения, вмвари и т.п.

Ну это ж тоже специфика, требующая установки каких-нибудь библиотек, .kext'ов, и т.п.

бандлы возможны как раз за счет того, что в mac os множество стандартных библиотек определенных версий


Именно. То есть, желание ТС может реализоваться только в случае «айн дистро, айн хвирма, айн Джобс», а в современном опенсорсе aka «ООО Лебедь, Рак и Щука» это почти нереально.

Cancellor ★★★★☆
()

из нити понял. решение проблемы следующее: берём генту делаем для неё гуёвый установщик+гуёвую морду к эмерже. можно и к остальному гуи приделать.

дистрибутив будет пользоваться успехом у хомяков и Ъ. все остальные дистры окажутся не нужны.

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

>берём генту делаем для неё гуёвый установщик+гуёвую морду к эмерже. можно и к остальному гуи приделать.

дистрибутив будет пользоваться успехом у хомяков и Ъ. все остальные дистры окажутся не нужны.


Гуи к эмержу уже давным давно есть. Но вот гента почему-то у хомяков популярностью пользоваться не стала. Да и далеко не всех Ъ гента устраивает.

Polugnom ★★★★★
()

почему до сих пор нет единого формата пакетов, совместимого со всеми популярными дистрибутивами?

Потому что это не имеет смысла. Объясню почему:

Представим что в любом дистре пакетный менеджер понимает все существующие форматы пакетов.

Теперь представим ситуацию: мы хотим поставить пакет A. Он был собран с библиотекой libB, и соответственно, в пакете указана зависимость от этой библиотеки.

В некоем дистрибутиве, для которого изначально предназначался этот пакет, пакет с библиотекой libB называется libB. А в другом он называется просто B.

Понятное дело, что разрулить такую ситуацию автоматикой не получится: придется договориться о стандартном именовании пакетов.

А это в свою очередь потребует стандартизации разбиения софта на пакеты, что врядли будет воспринято разработчиками дистрибутивов с радостью: debian-подобные дистрибутивы дробят пакеты очень мелко, многие другие дистрибутивы (в первую очередь slackware-подобные, а так же arch, agilia и т.д.) наоборот, используют большие толстые пакеты, включающие в себя всю программу целиком. И эта разница - одна из основ философии этих дистрибутивов.

Впринципе, это тоже можно решить через механизм provides (прописывая все пакеты, на корорые большой пакет мог быть разделен в debian), но это неслабо добавит головной боли разработчикам.

Далее - идут проблемы несовместимости версий, патчей, ключей сборки, и т.д. Даже на уровне python это уже может вызывать проблемы, если разный UCS указан был. Патчи одного дистрибутива могут быть несовместимы с патчами другого дистрибутива. И если проблемы, перечисленные выше, еще как-то можно решить (хоть и тоже на грани фантастики), то эту проблему, я боюсь, не решить никак.

aix27249
()

А теперь представь, что в гитарной индустрии(привет гитаристам от басистов) сделали цель выдавать один и тот же звук, причём у всех моделей. При всём разнообразии пород дерева, звук мы получим один, и будет это достигаться самыми разными варварскими методмами. Нужно ли такое? А ещё всю фурнитуру устандартить, ход и сопротивление флойда/тремоло сделать единым, а то ведь неудобно будет играть на новой гитаре.

В ОСях всё также.

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

Единый стандарт и подход - могила прогресса и разнообразия

Я не завидую твоему тоталитарному мышлению

Nominalus_Externatus
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.