LINUX.ORG.RU

Как избавиться от проблем установки ПО в GNU/Linux

 


0

0

Установка программ в GNU/Linux всё ещё создаёт жуткие проблемы. Почему так происходит и что можно сделать для исправления ситуации? Тони Мобили (Tony Mobily) предлагает свой вариант управления программным обеспечением в Линукс.

>>> Подробности

★★★

Проверено: Shaman007 ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

>Классно, но программу для венды я могу скачать без предварительного шаманства в виде генерации скрипта

в случае отсутсвия интернета? ровно столькоже гемора, еще тя послать могут ибо им кряк будет искать лениво

>или тупо скачать один статически слинкованый бинарник - это плохо?

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

TyhDyh ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

>То есть , поясняю, в настоящий момент почти весь софт в линуксе "системный" он же "дистрибутивный". Это аналогично ситуации если бы весь софт которым бы пользовались в винде сразу входил в XP/висту.

Ты настолько тупой, что это даже не смешно.

S_wine ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Снова Linux (Gentoo, ага). На FreeBSD такой проблемы нет

Или Linux с BSD сравнивай, или конкретный дистрибутив BSD с конкретным дистрибутивом Linux.

mv ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> В дебиане настолько все, что я даже сомневаюсь, есть ли ценный незаброшенный софт вне дебиана :-)

Бывает, гентушники находили примеры.

sv75 ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Где бы я его в генту мог увидеть? :)

# emerge -pv alien

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild R ] app-arch/alien-8.74 USE="bzip2" 0 kB

shell-script ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Давай в качестве эксперимента попросим твою девушку самостоятельно установить 3 версии оперы на Ubuntu 8.04.2. Что скажешь?

А давай попросим его же сделать это на винде? А потом ещё попросим объяснить дедушку, зачем ему это надо, ага?

shell-script ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

Автор сего юмористического опуса либо человек с хорошим чувством юмора, либо клинический идиот. Склоняюсь к второму варианту...

kernelpanic ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Дальше читать не стал ибо бред.

Господин идиотик, так работают _все_ современные бинарные сборки , в том числе (и особенно) коммерческого софта. :) Либо пускаются из архива либо пускают инсталлятор который прописывается в rpm. Посмотрите например сборку опенофиса.

И работали эти тарболлы так в линуксе и раньше, задолго еще до вашего рождения :) А если вы таки родились позже, то точно также работали в юниксе. Точно до вашего рождения :)



kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Ты настолько тупой, что это даже не смешно.

Агрументы будут ? ;) Или новое поколение мутантов-линупсоидов (линуксоиды и красноглазые остались в далеком прошлом) уже вообще осиливает фразы только двух видов "я скомпилял ххх. смотрите какой длинный мой мпх" и "КГ/АМ" ? Фи :)

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

Ксати к теме тарболлов - статически слинкованный бинарник это уже серьезный перегиб. LD_LIBRARY_PATH , -rpath решит ту же проблему. И позволит эти .so делить если это нужно. И позволит кстати использовать ситемные библиотеки по выбору.

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

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

Девушка -- веб-дизайнер, к примеру.

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


Как вариант, давайте улучшим положение вещей и будем двигаться в сторону пользователей. Например, как с помощью GUI установить deb-ку в свой домашний каталог?

Igron ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> А давай попросим его же сделать это на винде? А потом ещё попросим объяснить дедушку, зачем ему это надо, ага?

Девушку, а не деда. Думаю, что на венде она с большей вероятностью справится с этой задачей, даже если у нее не будет прав писать в Program Files.

Igron ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Думаю, что на венде она с большей вероятностью справится с этой задачей, даже если у нее не будет прав писать в Program Files.

А в чём-таки проблема распаковать три различные tar.gz в различные директории?

really_localhost ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Например, как с помощью GUI установить deb-ку в свой домашний каталог?

ээээ, нет. Раз уж стали делить софт на "пользовательский" и "системный", то идём до конца. deb - это системный софт.

really_localhost ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Вовсе не поэтому. Основных дистров всего 3, есть alien -- короче,
> сбацать нормальный пакет не проблема, а иметь несколько версий

> браузера -- это экзотика. Так что никому эта технология не нужна.

> Разрабы ведь тоже живут в каком-то дистре, хотят чтобы там был их

> пакет => осиливают пакет.

> Кроме того, установка именно в систему дает возможность докласть

> разных скриптов в /etc/*.d/


И как ваши агументы противоречат моим ? Конечно массам в настоящий момент эта "технология не нужна" Тем кому она нужна ее пользуют. И их мало так как мало ISV которые не могут войти в дистрибутивы например по причине того что софт коммерческий. А разрабы FOSS просто входят в дистрибутив который им нравится. О чем я и писал.

alien указанных проблем вообще не решает, он для частных случаев. Зависимости то все равно остаются. То есть если дистрибутив немного собран по другому то автоматического конверта не получится. И проблему запуска из директории юзера или "распаковал в /usr/local / запустил" тоже не решает.

И с "докласть в /etc/*.d" вполне справляются инсталляторы коммерческого софта, сюрприз. Для это вот, в том числе, и существует lsb,fhs и прочие стандарты типа SYSV rc.d.

Еще раз повторюсь - никто не предлагает _заменить_ use case репозиторий+aptget/yum. Огромные дистрибутивы линукса это нормально для FOSS модели. Предлагается добавить к ним еще use case использование которых затруднено сейчас. И добавить не на уровне дистрибутивов. А на уровне пользователей. Не имеющих рутовые права, в том числе.

И опять же, никто не говорит про то что нужны какие то "стандарты для дистрибутивов", что бы это было возможно. Софт ISV как бы специально создается из предположения невозможности влиять на политику дистрибьютора, будь это микрософт или редхат. И опять же, никто даже не предолагает собирать эти пакеты разрабам - при наличии потребности и удобства они сами все соберут.
Так что если что то нужно - это будет.

Все механизмы в API существовали еще до рождения половины линупсоидов из этого треда. Лидеры FOSS прямо и неоднократно делали все для поддержки этого механизма, о чем заявляли прямо. Это всю жизнь так и называлось, "что то было сделано в линукс для поддержки ISV", погуглите. Например на уровне системных вызовов, там где и должна бытть стабильность - там все огого как стабильно.

Естественно вещи типа стандартизации набора библиотек, "стабильное API" и прочее не совсем укладывающаяся в модель FOSS получается хреново. Только вот в линуксе "система" в терминах вендузятнеков это дистрибутив и есть. И например в федоре и сузи, старые пакеты неплохо ставятся на новые дистры - это совместимость и есть.

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Девушку, а не деда. Думаю, что на венде она с большей вероятностью
> справится с этой задачей, даже если у нее не будет прав писать в

> Program Files.


Поставить несколько эксплореров гораздо легче в линуксе, это я вам отвественно заявляю. Так как там это все ставится одним скриптом и в разные регистри, в результате не конфликтуя друг с другом. Но делается это естественно не пакетным менеджером а благодоря гибкости wine

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Базовым же методом должен быть "распаковать и запустить", даже без инсталляции - как firefox. Если же в системе есть сотв указания , например в конфиге и есть права доступа пакет должен прописать себя в rpm базу. Или в 0install или в autopackage директорию для разделяемых между ними библиотек.

И куда будут ставиться такие пакеты? Установленный пакет будет доступен только пользователю или всем пользователям? Если всем - а всем оно точно надо?

elzhov ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Базовым же методом должен быть "распаковать и запустить", даже без инсталляции - как firefox.

Сейчас вообще-то практически всегда так и есть.

> Если же в системе есть сотв указания , например в конфиге и есть права доступа пакет должен прописать себя в rpm базу.

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

really_localhost ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Еще раз повторюсь - никто не предлагает _заменить_ use case репозиторий+aptget/yum. Огромные дистрибутивы линукса это нормально для FOSS модели. Предлагается добавить к ним еще use case использование которых затруднено сейчас. И добавить не на уровне дистрибутивов. А на уровне пользователей. Не имеющих рутовые права, в том числе.

Избирательные админские права для *привилегированных* пользователей (а не всех подряд, коим вздумалось наставить софта) предоставляются через sudo. Или недостаточно?

elzhov ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> И куда будут ставиться такие пакеты? Установленный пакет будет
> доступен только пользователю или всем пользователям? Если всем - а

> всем оно точно над


Не не не. Он не будет "ставится". Он будет прописывать свою текущую установку в rpm базу. Возможно в пользовательскую где то в /home/user/.../rpm . Если хозяин системы этого захочет. О чем сообщит например в /etc/binary_tarbolls/default.config и в ~/.binary_tarbolls/default.config . При запуске пакет прочитает что там желает админ, и будет вести себя соотвественно. Если же такого конфига нету - то он ничего делать не будет. Будет просто запускатся.

Сооствественно если я распаковал пакет в /usr/local то и пользоватся им смогут все. И логично что он попадет в базу rpm. Что бы его оттуда можно было стандартно удалить тем кто этого жаждет.

Никто собственно даже не мешает перепаковать этот tarboll в rpm средствами tarboll и разместить в локальном репозитории. Естественно все это в предположении что админ/юзер не хочет или не может воспользоватся дистрибутивным пакетом для этого софта.

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Сейчас вообще-то практически всегда так и есть.

О чем я и говорю.

Просто некоторые пакеты типа опенофиса и коммерческого софта посложнее пошли таки дальше, это факт.

>> Если же в системе есть сотв указания , например в конфиге и есть права доступа пакет должен прописать себя в rpm базу.


> А вот это уже мягко говоря лишнее, не нужно мешать системный и

> пользовательский софт - ни к чему хорошему это не приведёт.


Линукс это система где каждый решает за себя сам, в этом смысл свободы :).

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

И кстати rpm база может быть пользовательской и стоять где то в ~/. Или быть не общесистемной, а общей для подобного софта, зашаренная между использующим ее групоой тарболлов - как в 0installl, где по такой схеме библиотеки шарятся.

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> И кстати rpm база может быть пользовательской и стоять где то в ~/.

Это был бы суперсолюшн, ИМХО. Только ещё надо вбить всем в голову, что конечным продуктом является не пакет, а репозиторий.

really_localhost ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Избирательные админские права для *привилегированных* пользователей
> (а не всех подряд, коим вздумалось наставить софта) предоставляются

> через sudo. Или недостаточно?


Недостаточно. sudo это если вы хотите помошника-админа прописать. Риски, опять же. Запуск софта из принесенного с собой(скачанного) тарболла это не админская операция. Хотите ее отключить - noexec в fstab или selinux/... настройки.

Тут пробегал олдфаг vitus с рассказами о том как он в суровых 80-х :) ставил много-много софта компиляцией из исходников в свой хомяк. И он такой был не один - смею вас уверить. То есть он удовлетворял ту же самую потребность более сложным способом.

По этому то что предлагается( и что уже есть) это для того чтобы таким софтом мог воспользоватся не только олдфаг vitus, а и юзеры неспособные перекомпилять весь gnu для своих целей. И собственно те кто может перекомпилять, но не хочет тратить на это усилия.


kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Это был бы суперсолюшн, ИМХО. Только ещё надо вбить всем в голову,
> что конечным продуктом является не пакет, а репозиторий.


Да можно и не вбивать. Нужно только вбить в голову что репозиторий это ТОЖЕ продукт, а это гораздо проще. И кстати ooffice так и делает при инсталляции - создает свою rpm базу.

И еще раз, use case распаковал/запустил ортогонален и независим от user case для пакетных манагеров. Противоположная часть спектра. Другая крайность, относительно репозиториев.

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

>Или Linux с BSD сравнивай, или конкретный дистрибутив BSD с конкретным дистрибутивом Linux.

У BSD нету дистрибутивов. BSD — это отдельные самодостаточные операционные системы (PC-BSD является FreeBSD, кто не в курсе).

iZEN ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Не не не. Он не будет "ставится". Он будет прописывать свою текущую установку в rpm базу. Возможно в пользовательскую где то в /home/user/.../rpm

То есть, какая-то часть rpm будет в конфиге у пользователя в директории, хорошо. Пользователь поставил к себе какое-то приложение, которое зависит от какой-то библиотеки из основного (системного) rpm. Далее, root вдруг хочет убрать эту библиотеку, и никакие пользовательские конфигурации в домашних директориях этому не помешают (ни один процесс, запущенный от рута, не "шарит по карманам" пользователей :)), а пользовательские rpm'ки, установленные локально в /home, работать перестанут.

elzhov ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

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

LightDiver ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

>.. них директориях этому не помешают (ни один процесс, запущенный от
>рута, не "шарит по карманам" пользователей :)), а пользовательские

>rpm'ки, установленные локально в /home, работать перестанут.


Вы совершенно не поняли фишки.

Во первых тарболл уже сделан из расчета что он опирается только на основные библиотеки. Чтобы его можно было распаковать и запустить. Он конечно может опционально проверять наличие нужных версий чегото в системе и использовать их - для того чтобы меньше жрать ОЗУ. Но проверяет при каждом запуске. Если внезапно не найдет майкуллиб.so, использует ее из своей поставки. Если же рут похерит gtk или xlib - ССЗБ. Выведет printf'ом текст - "ваш одмин - идиот". :) И это будет не баг - это фича такая. Основные библиотеки это кстати LSB и есть. Для этого как раз и придумали. Если ваша система не LSB, опять же - ССЗБ. Ну или специальный тарболл со всеми нужными библиотеками. Который будет найден при запуске проги, и с которым она будет линковатся.

Во вторых, никто не мешает тарболлу отмечатся в ~/.binary_tarboll/installed/ своим файлом. В котором написано где его директория, в которой вся необходимая инфа. Так что бы плагин к yum/apt мог написать "вы хотите похерить libmycool.rpm ? А его юзает юзер вася для проги в своем хомяке. Плюнуть на Васю да/нет ?"

То есть работать такие проги перестанут только в том случае если админ - действительно ССЗБ.

И в третьих - тут мы подходим к тому что можно держать пользовательские rpm-базы так чтобы они были видны rpm вообще. Но это правка дистрибутивов а значит пока не реально.


kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

>> В дебиане настолько все, что я даже сомневаюсь, есть ли ценный незаброшенный софт вне дебиана :-)

> Бывает, гентушники находили примеры.

"незаброшенный" важное слово. А то бывает вижу интересные поделки (например, добавлени паттерн матчинга к с++) которые последний раз компилировались жцц 2.95. Понятно, что их в дебиане нет :-)

www_linux_org_ru ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> И их мало так как мало ISV которые не могут войти в дистрибутивы например по причине того что софт коммерческий.

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

> alien указанных проблем вообще не решает, он для частных случаев.

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

www_linux_org_ru ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Поставить несколько эксплореров гораздо легче в линуксе, это я вам отвественно заявляю. Так как там это все ставится одним скриптом и в разные регистри, в результате не конфликтуя друг с другом. Но делается это естественно не пакетным менеджером а благодоря гибкости wine

Вы имеете в виду ies4linux? Это, как минимум, незаконно.

Igron ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> ээээ, нет. Раз уж стали делить софт на "пользовательский" и "системный", то идём до конца. deb - это системный софт.

Имхо, .deb - тупо архив.

Igron ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> А в чём-таки проблема распаковать три различные tar.gz в различные директории?

Т.е. девушка справится? Скачает с офсайта сама и распакует?

Igron ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

странно, проблем не ощутил и не ощущал. программы я передаю ссылкой на деб пакет, переписываю деб пакет на флешку или говорю название проги в репе. или вы как-то по-другому представляете это?

bernd ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

Во-первых, все дистрибутивы фактически из коробки потому, что привязаны к одному ядру и библиотекам. Поставьте Вмваре и создайте новый Линукс если в этом есть нужда проверить какие-нибудь новые или старые программы. У меня ядро 2.6.18 и при переходе на ядра 2.6.24 и 2.6.30 нужно менять и переписывать все программы дистрибутива.

Во-вторых, только админ, если компьютер многопользавательский, может ставить новые программы. Зачем же тогда пишут эксплоиты?:-)

В-третьих, именно из-за системы доступа к файлу интернет еще существует и на Линукс не написали миллион вирусов как в Виндовс.

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

VitS ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> У меня ядро 2.6.18 и при переходе на ядра 2.6.24 и 2.6.30 нужно менять и переписывать все программы дистрибутива.

С чего вдруг?

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


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

Последнее, что было куплено с драйвером для вендов - конвертер usb<>rs232, драйвер не заработал.

mv ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> У меня ядро 2.6.18 и при переходе на ядра 2.6.24 и 2.6.30 нужно менять и переписывать все программы дистрибутива.

С чего вдруг?

Во-первых, юникод и изменения в файеволе, а во-вторых, меняется форма драйвера. Недавно не мог собрать драйвер сетевой et131x. Оказывается форма от 2.6.2 до 2.6.14 одна от 2.6.16 до 2.6.19 другая, а от 2.6.20 третья. Что там дальше не знаю.

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

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

Я же не дописал - начиная с ВинНТ установить драйвер может только суперпользователь! А автор об этом забыл.:-) Если бы в Виндовс все сидели юзерами и выполняли бы хоть элементарные правила - автор бы такой чуши не писал о легкости установки программ в Виндовс.

VitS ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Я, похоже, в самом деле не догоняю. "Тарболл" - это что, общая,
> "системная" часть репозитория?


Тарболл это .tar (или tar.gz) , архив с программой . Бинарный тарболл - архив со скомпилированной программой. То что вы можете просто распаковать в каталог и запустить - такие есть например для оперы или фаерфокса. :)

kernel ★★☆ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> Во-первых, юникод и изменения в файеволе, а во-вторых, меняется форма драйвера.

Во-первых, ядро - не юникодное и про юникод ничего не знает (само по себе, не беря во внимание отдельные вещи типа cifs и пр.). Во-вторых, если под "формой драйвера" имеется в виду ABI, то, да, ABI меняется. Но это всё ядро, а обычным программам дела до ядра нет. Проблемы возникают, когда в каких-то аспектах несовместимо меняется семантика системных вызовов и эти изменения отражаются на множестве программ, но с такими вещами Линус борется в весьма жёсткой форме.

Более того, не у всех и не всегда возникают проблемы при смене платформы, скажем, RHEL-4 -> RHEL5, когда в системе меняется вообще всё.

mv ★★★★★ ()

Re: Как избавиться от проблем установки ПО в GNU/Linux

> ISV с комм. софтом не надо входить в дистрибутив.

Думаешь Касперский отказался бы войти в дистрибутив если бы ему заплатили бы за каждую инсталляцию его продукта ? Да неужели !

> А вот сделать

> нормальные пакеты они могут (и делают, как касперский например).


А другие ISV делают еще и нормальные тарболлы.

> И это вендору несущественно сложнее и лучше, чем заморачиваться с

> неизвестной необкатанной технологией.


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

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