LINUX.ORG.RU
ФорумTalks

Что вы так предесь от идеи «все зависимости в одном большо пакете»?

 бандлы, ,


0

3

I-Love-Microsoft написал тут мысль обозначеную в заголовке

Ищу работу дистрибутивостроителем / системным программистом (комментарий)

«но лучше бы нашелся хоть один адекватный человек, чтобы сделать дистрибутив с нескучными пакетами, которые бы несли все зависимости в себе, поверх некоей минимальной базовой системы. Типа макинтош, типа Ubuntu Personal. Каждая лягушка делает свой дистр, но все как один сует пакеты с зависимостями.»

Проприетарщики этим и занимаются, что создают ОГРОМНЫЕ бандлы со своим софтом, дошло до того, что питон с полсотней нескучных «батареек» там лежит.

Я не пойму в чем проблема создавать пакетики? Они же в большинстве случаев автоматически создаются, зависимости находятся и прописываются автоматически.

Почему стремятся к dll hell?

★★★★★

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

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

Третьего не дано... такова жизнь

Shulman
()

Потому, что последнее утверждение миф. А проблему не поддерживаемого софта так и не предложили как решить без создания бандлов.

Morin ★★★★
()

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

madcore ★★★★★
()

В случае дистрибутива с репозиториями большие пакеты, да, не так уж и актуальны. В винде большие пакеты всегда были актуальны из за отсутствия виндового репозитория и динамической линковки. Да, и в винде можно таскать один только exe'шник, но что если у юзера нет в системе тех .dll файлов, которые нужны этому exe'шнику? Заставлять юзера вручную их откуда-то добывать? Так и стали паковать exe'шники вместе с .dll файлами. Даже если софт совсем не является проприетарным.

saahriktu ★★★★★
()

Почему стремятся к dll hell?

Потому что это гарантированный способ получить рабочий софт, который не сломается после apt upgrade какой-нибудь сторонней библиотеки, про которую никогда бы и не подумал. Да и вообще иметь десяток независимых версий одной софтины, или вообще изолировать каждый калькулятор и notepad.exe.

ОГРОМНЫЕ бандлы

У нас тут гигабит в квартирах и мобилы с 64Gbными «хардами».

Я не пойму в чем проблема создавать пакетики? Они же в большинстве случаев автоматически создаются, зависимости находятся и прописываются автоматически.

Проблема не в создании пакетов, а в разрешении зависимостей.

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

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

Заставлять юзера вручную их откуда-то добывать?

Никогда не сталкивался с тем что установщик предлагает поставить (ну или ставит без твоего участия) всякие дотнеты, жавамашины и directX? Просто в целом в винде вот эта идея с «библиотеками» не сильно развита, это в онтопике я могу поставить libчто-нибудь.

micronekodesu ★★★
()

5*, а такую чушь порешь.

Устали юзверята от пакетиков, а ваша хваленая ОС плевала на LSB.

Короч, смотри, Линукс каак бы не единственная ОС на планете, смотрят как у конкурентов и выбирают наиболее подходящее.

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

У нас тут гигабит в квартирах и мобилы с 64Gbными «хардами».

Но память пока что не всегда резиновая.

madcore ★★★★★
()

любой dependency hell решается изоляцией. нет вариантов при которых ты получишь isolation hell, всё атомарно в отличии от.
на данный момент единственная проблема — это потребление сторажда. сейчас это решают, например, зависимостями целых срезов в файловых системах, но нужно очень кривым путём пойти, чтобы такое довести до dependency hell.
и если кто-то положил определённую версию пистона в свою программу — значит программа запуститься и будет работать как задумано даже через 10 лет, плюс так себе, с учётом того, что мы знаем что такое софт 10-20 летней давности. тот ещё кал, обычно. но твои пакетики гарантируют задуманную работу софта ровно до «нифига».
сейчас ОГРОМНЫЕ бандлы просто называются «ОС N+1» версии, со срезом Z+1 версий ПО, хочешь даунгрейд? используй «ОС N-1»
целая операционная система, которая должна просто помогать запускать программы, становится методом доставки ПО только определённо версии. это наркомания.

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

Ижвяните, как писали, то и получили.
Хомячки начали пищать года так с 2000, когда апдейт на апдейте выходили, с такими революционными изменениями, что ой.

А что там у конкурентов?
А ничЁ! У макОС кажется 3 последних релиза, у винды еще Шин7 (2009года выпуска, ну ладно, с сервиспаками) один фиг - 10 лет. И в большинстве случаев, сквозняком запускается софт сразу на 3х платформах.

Про солярис только слышал, что совместимость как у матрёшки, всё своё ношу с собой, уже 30 лет.

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

У нас тут гигабит в квартирах и мобилы с 64Gbными «хардами».

Неверный путь провижу я.

sniper21 ★★★★★
() автор топика
Ответ на: комментарий от system-root

на данный момент единственная проблема — это потребление сторажда

Это далеко не единственная проблема этого подхода.

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

Все проблемы от отсутствующей обратной связи.

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

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

Можно подумать у РХ несколько иначе? %-)
Ну ладно, 10 лет саппорта вроде как выдерживают.

Deleted
()

Есть одна большая проблема в стандартах разработки, а именно в DLL. Если в DLL добавляется всего лишь одна функция, то она смещает точку вхождения(адрес) в другие все функции. Проблему решало бы тупая нумерация и добавление в конец всех новых функций, независимо от названия.
ББ это выгодно, когда ничего не работает или переписывается по 100 раз.

xwicked ★★☆
()

Почему стремятся к dll hell?

Чтобы ты (и я, и он) ставил жирнософт на HDD вместо SSD и страдал.

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

Оперативная?

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

madcore ★★★★★
()

Почему стремятся к dll hell?

Потому что линуксовый Dependency Hell ещё ущербнее.

EXL ★★★★★
()

в чем проблема

Дорого. Когда тебе надо бабло рубить а не этот коммунизм или как его там строить, да ещё и под 2.5 платформы, гораздо проще настроить CI который собирает бандлы. Железу зарплату платить не нужно(пока что).

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

гораздо проще настроить CI

ха-ха, дружно сказали девопсы, зарплаты у которых уже выше архитекторских

«всего лишь» настроить CI/CD

alpha ★★★★★
()

Guix

Тут кто-то уже сказал guix?

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

Всё относительно. Это проще, чем следить за изменениями версий пакетов в дистрах. Это проще, чем толкать патчи с багфиксингом в апстрим. Это проще, чем банально опакетить решение хотя бы под венду и онтопик например(что будут делать те же самые «девопсы» с большими зарплатами). Плюс конечного пользователя надо научить пользоваться выбранной системой пакетирования, а встречаются крайне тугие экземпляры.

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

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

Не тот случай

Shulman прав. Guix просто замаскирует ад зависимостей раем зависимостей. Если поставлять какой-нибудь enterprise skepy пакетом для GuixSD, то все его зависимости тоже надо будет опакетить по-guix'ному. А если никто кроме этого skepy не будет пользоваться его библиотеками, то по сути в систему ставится тот же статичный бинарник, только разбитый на кучу пакетов, которые никому кроме skepy не нужны.

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

Это не проще. Просто это разработка в долг.

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

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

Интересно когда Европа летнее время отменит, как народ будет tzdata обновлять...

alpha ★★★★★
()

Я не прусь и всячески осуждаю сабж

Harald ★★★★★
()

Все в одном контейнере хорошо, когда тебе надо запускать какого-то корявого монстра типа Либры,или прогу на другом тулките типа Криты. Или прогу которая тебе будет нужна три с половиной раза в год. Тогда изолированные контейнеры со всеми зависимостями оправданы. Собирать же из них всю систему - абсурд. Если афтырь проги не обновляет ее под новые либы, то нахер такой некрософт не нужен. Устарела либа - нахер ее из системы. Должна быть только одна актуальная версия. Кому нужна стабильность некрософта - пусть просто ставят древние дистры типа Дебианов и Центосей.

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

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

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

как народ будет tzdata обновлять

Добавит запись в реестр или в olsen database, в зависимости от того, чего юзает. Та же olsen database вполне себе таскается локально даже под офтопик.

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

Да, только деньги не из воздуха появляются. Если где-то что-то прибыло, значит откуда-то убыло.

Это экологическая проблема на самом деле.

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

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

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

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

Тот же фейсбук взять - сделан школотой на php. Появилась реальная прибыль - переписали профи на плюсы.

На самом деле, я лично видел 2 раза такой процесс переписывания и один раз даже участвовал. Один продукт ажно два раза переписали, сначала с кодовой базы от австралийцев(индусы нервно курят) на плюсы заново, потом на .net. И оба два раза хватило бюджета и ещё некисло прибыли осталось, а поддержка каждый раз дешевела и клиенты всё время были при работающем решении.

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

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

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

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

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

pon4ik ★★★★★
()

В NixOS все хорошо в этом плане, только софта мало, а тот что есть с фиксированными релизами. Надо еще GuixSD посмотреть, возможно там еще лучше

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

Чтобы ты (и я, и он) ставил жирнософт на HDD вместо SSD и страдал.

Да нормально и на SSD, если он не занят кучей китайских порномультиков.

Я с 2014 года засадил 1.5 ТБ SSD - забить проблема...

Да и это вообще преувеличение про большой размер софта из-за таскания с собой зависимостей.

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

непрерывный цикл школоты

как говорил дядя Боб? каждые 5 лет кол-во погромистов удваивается.
непрерывный цикл школоты — потому, что там деньги.
непрерывный завод по производству денег, перерабатывая кастомеров руками прошлой школоты.

system-root ★★★★★
()

Открою страшную тайну. В кровавом ынтерпрайзе вообще все линкуют статикой в один бинарь на 5 гигов. Даже питон и прочие интерпретируемые языки

upcFrost ★★★★★
()

Во первых, что такое «предесь»?
Во вторых, разупорись, уже всё сделано.
Что сказать-то хотел? Пришло время снимать звёзды или что?

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

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

system-root ★★★★★
()
Ответ на: комментарий от upcFrost

Да, для меня это уже не тайна :) Но это не отменяет тот факт, что это лютое блоатваре.

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

Что вы так предесь от идеи «все зависимости в одном большо пакете»?

говнософт, сэр.

darkenshvein ★★★★★
()
Ответ на: комментарий от system-root

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

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

Ну не знаю, вижу в продаже ноуты с Endless. С Федорой точно ещё ни разу не видел.

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

Да действительно. Почему бы не притащить с собой 1.5 гигабайта тех же Qt. Будучи при этом тонким клиентом.

Я с 2014 года засадил 1.5 ТБ SSD - забить проблема...

Через USB3.1 внешний, компактный? Или предлагается по дому носиться с отвёрткой между компами после запиливания очередной фичи/оптимизации? Или тестить только на одной видеокарте?

P.S. 1.5Тб (да даже и 1) внешний компактный SSD USB3.1 хотеть. Хотя и почти уверен, что у тебя другой.

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

Почему бы не притащить с собой 1.5 гигабайта тех же Qt. Будучи при этом тонким клиентом.

Ты совсем поехал? Тот же Virtualbox написан на qt5 имеет дистрибутив под виндовс 100мб. И естественно qt из этого занимает весьма скромную часть.

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.