The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Решит ли возрождение проекта Berlin API проблемы с инсталляцией ПО

24.06.2008 16:05

Установка ПО в Linux - задача достаточно сложная и по большей части не может контролироваться даже самим пользователем системы. Раньше, когда весь софт компилировался из исходников вручную, это был хоть и долгий, но более управляемый процесс. В дальнейшем появились пакетные менеджеры, такие как rpm и dpkg, которые в силу различия форматов пакетов и репозиториев не могли работать совместно. Более того, предложение по созданию API, который бы внес единообразие в процесс инсталляции ПО, натолкнулось на сопротивление и, не получив поддержки, угасло.

С предложением возобновить создание такого API выступил Denis Washington, один из разработчиков Fedora. Первоначальный проект, под названием Berlin Packaging API, не вызвал энтузиазма и Washington, взявшись за дело собственными руками, написал прототип интерфейса, назвав его LSB Package API. В основе лежит интерфейс D-Bus и описание пакета в формате XML файла. На данный момент реализация поддерживает интеграцию RPM и dpkg, и, ввиду модульного дизайна, в дальнейшем может быть добавлена поддержка других форматов.

Некоторые могут подумать, что это очень похоже на PackageKit, но Washington быстро дает понять, что не в этом случае. PackageKit добавляет уровень абстракции к существующей системе управления пакетами, предлагая пользователю своего рода оболочку для работы с репозиториями. «Но это не решает проблемы распространения ПО. Репозитории и пакеты все равно остаются специфичными» - объясняет Washington.

В основу Berlin API был положен пакето-независимый способ распространения ПО, который является не заменой PackageKit, а его дополнением. На самом деле, если пакет добавляется при помощи Berlin API, то далее им можно управлять (например, деинсталлировать) с помощью PackageKit.

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

  1. Главная ссылка к новости (http://www.osnews.com/story/19...)
Автор новости: blkdog
Тип: К сведению
Короткая ссылка: https://opennet.ru/16620-rpm
Ключевые слова: rpm, dpkg, install, packet
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (89) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, trey (?), 16:13, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Установка ПО в Linux - задача достаточно сложная и по большей части не может контролироваться даже самим пользователем системы.

    как страшно жить...

     
     
  • 2.24, xcode (?), 21:25, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Уу, охренеть как сложно, особенно в моей кубунте Жмем K - add remove и ставим Д... большой текст свёрнут, показать
     
     
  • 3.27, Анонимус (?), 22:10, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Уу, охренеть как сложно, особенно в моей кубунте.Жмем K -> add\remove и ставим.Даже по категориям разложено - там мультимедия, а там - графика.Или если крутые запускаем adept или aptitude.А при попытке послушать MP3 плеер сам предложет втулить кодеки :).Вообще, нереально зубодробильно в управлении!

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

     
     
  • 4.30, xcode (?), 22:21, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Только не забывай, что сон разума рождает чудовищ.

    А уж сколько чудовищ рождают программеры... особенно это касается пакетных манагеров редхата, кстати.Я не знаю где там у них разум был но вечными перетрясками своих пакетных манагеров они малость заколебали а rpm в его разных инкарнациях просто ужасен.Что тупорылая структура пакетов что сам манагер.Вот уж кого я не стал бы ставить как эталон в плане пакетных систем так это редхат.Они IMHO представляют из себя отличный пример того как делать НЕ НАДО!И они будут учить других делать пакетные манагеры?!Упаси боже от таких учителей :\

     
     
  • 5.36, borey (??), 22:48, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Простите. Но разложите мне пожалуйста,как сей продукт использующего, по пунктам чем rpm так уж сильно отличается от deb к примеру.
     
     
  • 6.37, trey (?), 22:55, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Простите. Но разложите мне пожалуйста,как сей продукт использующего, по пунктам чем rpm
    >так уж сильно отличается от deb к примеру.

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

     
  • 5.44, Michael Shigorin (ok), 01:52, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Уважаемый, Вас тупорыло несёт второе сообщение dpkg несколько лучше изначально ... большой текст свёрнут, показать
     
     
  • 6.70, User294 (ok), 13:24, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Интересно, для каких прикладных задач придумывали RPM если на практике и в реаль... большой текст свёрнут, показать
     
     
  • 7.79, Michael Shigorin (ok), 01:52, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Промышленные дистрибутивы, вестимо Он более деревянный и при этом издревле v3... большой текст свёрнут, показать
     
  • 3.43, kostbebix (?), 01:43, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Подтвердите слова свои Особенно про грабли в федоре с с... большой текст свёрнут, показать
     

  • 1.2, Аноним (-), 16:25, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    "Установка ПО в Linux - задача достаточно сложная и по большей части не может контролироваться даже самим пользователем системы."

    Ха. Как хорощо узнать, что ты не единственный, кто видит кривизну. Осталось подождать пока заметное кол-во людей, наевшись кактусов, начнут спрашивать "а что ты там говорил про управление пакетами прикладного ПО".

     
     
  • 2.29, Анонимус (?), 22:21, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Ха. Как хорощо узнать, что ты не единственный, кто видит кривизну. Осталось
    >подождать пока заметное кол-во людей, наевшись кактусов, начнут спрашивать "а что
    >ты там говорил про управление пакетами прикладного ПО".

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

     

  • 1.3, anarsoul (?), 17:01, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Установка ПО в Linux - задача достаточно сложная

    Бред, чего сложного в пакетных менеджерах и их фронтендах? (Типа synaptic)
    И с какой это стороны неуправляемо пользователем системы??

     
     
  • 2.10, Knuckles (ok), 17:30, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Думаю, под неуправляемостью подразумевается тот факт, что после автомагического разрешения 10-20 зависимостей для пакета и установки нужной тебе софтины ты вряд ли вспомнишь, что еще нужно удалить вместе с этим пакетом, чтобы вернуть "все как было". И чтоб ничего не поломать. И чтоб быстро. А пакетов мноооого...
    Я слышал, в последней мандриве пакетный менеджер будет определять, что пакет более не используется другими пакетами и предлагать его удаление. Не знаю, как там это будет работать, но грызут сомнения, что не идеально.
     
     
  • 3.16, anonymous (??), 17:59, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    бгг, аптитуда уже давно умеет, причем по умолчанию.

    да и пакман тоже.

     
     
  • 4.18, Аноним (18), 18:41, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    но в apt сей функционал почему-то включать не хоят
     
     
  • 5.19, ewrw (?), 18:54, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >но в apt сей функционал почему-то включать не хоят

    а что такое apt-get autoremove ?

     
  • 3.39, himik (??), 23:59, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    emerge в Gentoo по моему неплохо справляется с задачей кдаления неиспользуемых пакетов..
     

  • 1.4, pavlinux (ok), 17:11, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Он думал, - зачем ставить в RedHat, пакет от Ubuntu или от SuSE в Debian???
     
  • 1.5, Дмитрий Ю. Карпов (?), 17:20, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мне кажется весьма удобной система пакаджей во FreeBSD - пора бы портировать её в Linux. Впрочем, если линуксоиды будут жестоко преследовать нарушителей GPL-лицензии, мир скоро перейдёт на FreeBSD.
     
     
  • 2.6, Аноним (18), 17:24, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >мир скоро перейдёт на FreeBSD.

    Не перейдёт, потому что есть ArchLinux, вобравший в себя самые лучшие особенности FreeBSD

     
     
  • 3.55, tux2002 (?), 08:42, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>мир скоро перейдёт на FreeBSD.
    >
    >Не перейдёт, потому что есть ArchLinux, вобравший в себя самые лучшие особенности
    >FreeBSD

    Slackware тоже нормально.

     
  • 2.8, Аноним (-), 17:27, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    ИМХО там совсем нет системы этих самых пакаджей. Есть система портов, а это вовсе не одно и то же.
     
  • 2.13, anonymous (??), 17:42, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Давно портировали, Gentoo называется. И удаление неиспользуемых пакетов работает.
     
  • 2.21, .3 (?), 19:35, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Мне кажется весьма удобной система пакаджей во FreeBSD - пора бы портировать
    >её в Linux. Впрочем, если линуксоиды будут жестоко преследовать нарушителей GPL-лицензии,
    >мир скоро перейдёт на FreeBSD.

    Ничего хуже системы портов FreeBSD я не знаю. Простая задача: есть самописная софтина, она зависит, ну, например, от стандартного sqlite (не важно). Расскажите, как же мне поставить мою софтину хотя бы на 20 серверов.

     
     
  • 3.28, Guest (??), 22:17, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Пожалуйста, 7 строчек.

    PORTNAME=       myprog
    PORTVERSION=    1.0
    CATEGORIES=     devel
    MASTER_SITES=   ftp://local_ftp/

    LIB_DEPENDS=    sqlite3.8:${PORTSDIR}/databases/sqlite3

    PLIST_FILES=    myprog

    .include <bsd.port.mk>

    потом touch pkg_descr && make makesum и дальше как угодно
    - можно добавить в дерево портов, расшаренное по NFS / в локальное зеркало дерева портов и ставить через for server in "a b c d"; do ssh server "cd /usr/ports/devel/myprog && screen -d -m make install clean"; done
    - можно сделать package и сделать то же самое, только с pkg_add -r

    Для деплоя как раз лучше портов ничего не придумали.

     
     
  • 4.33, .3 (?), 22:40, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    А ничего, что в случае pkg_add -r мне надо хранить ВСЕ стандартные пакеты (и их синхронизировать каждый день)? И я еще молчу про то, что библиотеки изредка меняются в пределах одной major.minor версии. И проверить это можно только с помощью getosreldate (здравствуй, статическая линковка!).

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

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

    Порты фри были хороши когда их придумали. Они были не так плохи в 2002--ом. Но сейчас остальные системы куда совершенее.

     
     
  • 5.42, Guest (??), 01:05, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Какие пакеты Зачем хранить Куда синхронизировать Что за бред Ничего смешного... большой текст свёрнут, показать
     
     
  • 6.46, Michael Shigorin (ok), 02:11, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, ну это просто феерическое нечто Вы всерьёз предлагаете каждый раз собирать... большой текст свёрнут, показать
     
     
  • 7.51, oops (?), 06:54, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Ничего не надо собирать на продакшне делаем пакет на лю... большой текст свёрнут, показать
     
     
  • 8.80, Michael Shigorin (ok), 02:15, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Недавно последнюю четвёрку хоронил, где был логин, а что То-то и оно Могу ещё... большой текст свёрнут, показать
     
     
  • 9.84, oops (?), 06:41, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Значит давно Вам компилятор жить мешает Ну так на то и source based система, ... большой текст свёрнут, показать
     
     
  • 10.86, pavel_simple (??), 08:20, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    я вот, до недавнего времени, как и Вы видел это каждый день и знаете -- мне очен... текст свёрнут, показать
     
  • 10.91, Michael Shigorin (ok), 16:57, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    К сожалению, в контексте обсуждаемого вопроса та поросшая мхом немигрируемая 4 1... большой текст свёрнут, показать
     
  • 7.75, Guest (??), 20:27, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Три кластера под рукой.. Почему сразу не десять?

    Боже, даже комментировать не хочу. Дешевый непрофессиональный троллинг.

     
     
  • 8.81, Michael Shigorin (ok), 02:25, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что СКИТ-1, СКИТ-2, СКИТ-3 -- это три кластера, а не десять На КПИ-шный... текст свёрнут, показать
     
  • 6.60, .3 (?), 10:38, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    А pkg_add -r уже научился ходить по разным серверам А то, что машина может быть... большой текст свёрнут, показать
     
     
  • 7.61, Осторожный (?), 10:55, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>> А ничего, что в случае pkg_add -r мне надо хранить ВСЕ стандартные пакеты (и их синхронизировать каждый день)?
    >> Какие пакеты? Зачем хранить? Куда синхронизировать? Что за бред?
    >
    >А pkg_add -r уже научился ходить по разным серверам?

    Вообще-то всегда умел :)

    export PACKAGEROOT=ftp://myserver-with-ports.mydomain.ru

    pkg_add -r gdbm perl && pkg_add -r bash && pkg_add -r sudo && \
    pkg_add -r aspell joe && pkg_add -r lynx && pkg_add -r mc && \
    pkg_add -r portaudit

     
     
  • 8.66, .3 (?), 11:44, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Я тут вижу только один сервер ... текст свёрнут, показать
     
  • 7.62, Осторожный (?), 10:59, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    1 Выделяется отдельный сервер 2 На нем синхронизуются порты 3 Делается сборка... большой текст свёрнут, показать
     
     
  • 8.73, .3 (?), 14:18, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    На некоторые тесты уходят часы Не правда ли проще подключить репозаторий, а пот... текст свёрнут, показать
     
  • 7.71, oops (?), 13:28, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>> Собирать на продакшен машинах, конечно, смешная идея
    >> Ничего смешного. Там что, компилятора нет? Или может процессор 486?
    >А то, что машина может быть загружена своей основной работой --- это
    >ничего? После сборки надо прогнать тесты, или где--то не так? У
    >тестов (да и у сборки) может быть еще одна большая куча
    >зависимостей. И ее тоже надо будет поставить на продакшен. И следить
    >за версиями.
    >И, прошу обратить внимание, не надо быть телепатом, что бы это знать.

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


     
     
  • 8.72, .3 (?), 14:11, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Мне это говорить не надо Говорите это Guest у, который не видит в этом ничего с... текст свёрнут, показать
     
     
  • 9.76, Guest (??), 20:29, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Из каких же моих слов вы сделали такой вывод ... текст свёрнут, показать
     
     
  • 10.77, .3 (?), 00:25, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Сообщение 42, цитата Ничего смешного Там что, компилятора нет Или может проц... текст свёрнут, показать
     
  • 8.78, fi (ok), 00:37, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Этого мало Лучше начинать с яиц - безболезненней будет Да и сам компилятор л... текст свёрнут, показать
     
     
  • 9.92, Michael Shigorin (ok), 17:18, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще-то нет и по словам опять же людей, которым склонен верить -- сейчас в ос... текст свёрнут, показать
     
  • 2.22, kostbebix (?), 20:20, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Кхм кхм. Совершенно недавно на работе я таки добился установки bugzilla. На сервак с freebsd - пишу фигню с портом (спасибо сисадмину, помог строчкой) - установило, сиди и пили сколько угодно дальше, потом еще пилил... Установил. Почти. Заняло ~2 часа, должно работать, но там какая-то фигня с сэндмэйлом, которая так и не заработала (лень разбираться).

    Попробовал на Gentoo. Тоже. Из портов сначала не собралось, потом где-то чего-то подпилили, собралось. Пилил пилил - та же фигня что и во фре с сэндмэйлом. Снова лень разбираться (в генте тоже никогда ничего не делал, да и сервак не мой, экспериментировать сильно не хотел).

    Ради чистоты эксперимента попробовал у себя под федорой.
    yum -y install bugzilla
    а далее - создать пользователя bugs и запустить скрипт багзилловский.


    Сорри что много текста лишнего, просто наболело. Я к чему это все - в портах минус: не всегда оно собирается, надо чего-то делать еще. В rpm и deb'ах все куда вероятнее что заработает с полупинка (по крайней мере у меня так).

     
     
  • 3.52, oops (?), 06:58, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Кхм кхм. Совершенно недавно на работе я таки добился установки bugzilla. На
    >сервак с freebsd - пишу фигню с портом (спасибо сисадмину, помог
    >строчкой) - установило, сиди и пили сколько угодно дальше, потом еще
    >пилил... Установил. Почти. Заняло ~2 часа, должно работать, но там какая-то
    >фигня с сэндмэйлом, которая так и не заработала (лень разбираться).

    pkg_add -r <pkgname> или portupgrade -PP <origin>
    с сэндмейлом надо понимать на месте. или отключить его и поставить MTA который вы знаете.

     
     
  • 4.63, kostbebix (?), 11:25, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Кхм кхм. Совершенно недавно на работе я таки добился установки bugzilla. На
    >>сервак с freebsd - пишу фигню с портом (спасибо сисадмину, помог
    >>строчкой) - установило, сиди и пили сколько угодно дальше, потом еще
    >>пилил... Установил. Почти. Заняло ~2 часа, должно работать, но там какая-то
    >>фигня с сэндмэйлом, которая так и не заработала (лень разбираться).
    >
    >pkg_add -r <pkgname> или portupgrade -PP <origin>
    >с сэндмейлом надо понимать на месте. или отключить его и поставить MTA
    >который вы знаете.

    Ну там основное время ушло на сборку модулей перла (руками надо было каждую прописывать, а потом, по идее, отвечать на кучу вопросов, но я делал yes2all, и все равно не все установилось). В федоре (в той же) оно сделано иначе. На примере пхп:

    чтоб проинсталлировать пхп надо сделать
    yum install php

    Чтобы подключить поддержку mysql не надо ничего пересобирать или еще чего. Достаточно сделать
    yum install php-mysql

    Так же и с перлом и остальными.

     
     
  • 5.68, oops (?), 13:07, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну там основное время ушло на сборку модулей перла (руками надо было
    >каждую прописывать, а потом, по идее, отвечать на кучу вопросов, но
    >я делал yes2all, и все равно не все установилось).

    Случайно не через cpan ставились?

    >Чтобы подключить поддержку mysql не надо ничего пересобирать или еще чего. Достаточно
    >сделать
    >yum install php-mysql
    >
    >Так же и с перлом и остальными.

    Чем это сложнее pkg_add -r или portupgrade -PP? оба варианта поставят исключительно бинарный пакет безо всяких пересборок и приплясываний..

     
     
  • 6.87, kostbebix (?), 11:07, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Случайно не через cpan ставились?

    Да, он.

    >Чем это сложнее pkg_add -r или portupgrade -PP? оба варианта поставят исключительно
    >бинарный пакет безо всяких пересборок и приплясываний..

    Типа установлен php, не надо его пересобирать с флагом --with-gd (к примеру), а можно сделать что-то вроде yum install php-gd2? типа pkg_add -r php-gd2? (чисто интуитивно)

     
     
  • 7.89, oops (?), 13:27, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Случайно не через cpan ставились?
    >Да, он.

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

    >>Чем это сложнее pkg_add -r или portupgrade -PP? оба варианта поставят исключительно
    >>бинарный пакет безо всяких пересборок и приплясываний..
    >
    >Типа установлен php, не надо его пересобирать с флагом --with-gd (к примеру),
    >а можно сделать что-то вроде yum install php-gd2? типа pkg_add -r
    >php-gd2? (чисто интуитивно)

    portupgrade -PP graphics/php5-gd (или graphics/php4-gd)
    Для pkg_add нужно знать точное имя пакета. можно посмотреть в порту.

     
     
  • 8.90, Andrey Mitrofanov (?), 13:31, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    что снова возвращает нас к вопросу, Решит ли возрождение проекта Berlin API ... текст свёрнут, показать
     
  • 2.35, Guest (??), 22:47, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне кажется весьма удобной система пакаджей во FreeBSD

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

    > пора бы портировать её в Linux

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

    Вообще дело не в этом. Дело в том имхо, что любая система пакетов должна основываться на исходниках, но при этом уметь порождать самодостаточные бинарные пакеты. Это значит, что не maintainer'ы не собирают пакеты как хотят, а пишут инструкцию, как пакет собрать (аналог порта FreeBSD или ebuild'а), после чего добавляют ее в репозиторий. Заодно могут залить и сам пакет, по ней собранный.

    Итого: имеем все плюсы source-based систем. Автоматизированная проверка и сборка подо все архитектуры, возможность быстро обновить порт до новой версии (просто взяв существующий и изменив циферку) и т.д. В то же время из этого должны получаться пакеты, которые как минимум знают, с какими версиями зависимых пакетов они могут работать. FreeBSD'шные пакаджи, например, не знают. Будут писать ворнинги, если версии не совпадают, и если, например, shared lib версия поменялась или еще какой косяк, ничего сделать не cмогут.
    Ну и системная библиотека для управления этим всем, чтобы любой пакет можно было установить одной командой, причем установка из исходников/бинарников меняется одним ключиком.

    Короче, потенциально есть куда развиваться всем существующим пакетным менеджерам, но то, что 'Установка ПО в Linux - задача достаточно сложная', и идеи о новом API, основанном на D-BUS (!!!) и XML - такой концентрированный параноидальный бред, что мне даже страшно.

     
  • 2.45, Michael Shigorin (ok), 02:00, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Мне кажется весьма удобной система пакаджей во FreeBSD - пора бы портировать
    >её в Linux.

    Дмитрий, от Вас не ожидал.

    Во-первых, пакетные системы в линуксах -- как минимум apt -- на порядок более развиты, чем зачаточная пакетная система FreeBSD.  Можете поискать да хотя бы и в архивах r.o.c разборы полётов :-)

    Во-вторых, _портаджи_ в Gentoo и ряде подобных дистров тоже есть и несмотря на улучшения относительно портов FreeBSD -- продолжают иметь ряд принципиальных и архитектурных проблем оригинала (например, отсутствие бранчей по версиям поддерживаемых дистрибутивов, когда желательно поддерживать их в режиме минимальных изменений).

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

    Когда кажется -- креститься пора :-)

    >Впрочем, если линуксоиды будут жестоко преследовать нарушителей GPL-лицензии,
    >мир скоро перейдёт на FreeBSD.

    Бздюшники пытались жёстко гнобить тех, кто нарушил даже не текст их лицензии, а то, что они себе возомнили.  Всё равно за бортом.

    Впрочем, не верьте мне на слово -- просто смотрите внимательно сами.

     
  • 2.50, oops (?), 06:41, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Мне кажется весьма удобной система пакаджей во FreeBSD - пора бы портировать
    >её в Linux. Впрочем, если линуксоиды будут жестоко преследовать нарушителей GPL-лицензии,
    >мир скоро перейдёт на FreeBSD.

    Система пакаджей во фряхе довольно убога:
    1. Пакетная база - набор каталогов с информацией о структуре и содержимом пакета. На большом количестве установленного софта начинаются заметные тормоза, так как упираемся в дисковую подсистему.
    2. Жесткие зависимости. т.е. при обновлении пакета на который ссылается другой пакет получаем битую зависимость.
    3. Отсутствие апгрейда как такового.

    Система портов тоже не без недостатков. В частности:
    1. Приходится долго и аккуратно подгонять make.conf под свои нужды, чтобы собраться скажем именно с апачем версии 2.0 и с нужными опциями, которые не всегда можно получить по make config(но присутствуют в Makefile порта).
    2. Зачастую невозможно собрать два пакета с разными опциями с одного порта и сложить в один пакетный репозиторий, т.к. имена таких пакетов вероятнее всего совпадут. Бывают правда и исключения например для опции WITH_THREADS.
    3. Апгрейд никакой.

    Вобщем для _пользователя_ подобная схема в большинстве случаев неприемлема. Все это более или меннее лечится portupgrade и ижи с ними, но знакомым точно не поставлю. Хотя сам фряшник и гибкость портовой системы покрывает все эти недостатки.

     
     
  • 3.53, oops (?), 07:04, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Из плюсов могу отметить гибкость портовой системы и _предсказуемость_ поведения как портов так и пакетов. Для админа эти плюсы легко перевешивают все минусы перечисленные выше.
     
  • 3.64, Осторожный (?), 11:25, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Обновлений нет А раз так, то в пункте 2 написана фигня - при обновлении пакета... большой текст свёрнут, показать
     
     
  • 4.69, oops (?), 13:22, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален гхм csup на usr ports и обновляемся за порта а заодно ... большой текст свёрнут, показать
     
  • 4.74, .3 (?), 14:21, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > Получить битую зависимость можно если удалить пакет с ключом "force".
    > Иначе pkg_delete просто не даст удалить пакет если есть зависящие от него.

    Еще можно запустить portupgrade. Даже в мане написано:
    > After performing a binary upgrade, it is strongly recommended that
    > you run ''pkgdb -F'' to fix broken dependencies introduced by the
    > newly installed packages.t

     

  • 1.9, Аноним (18), 17:27, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Зачем создавать ещё одну прослойку для линукса, и без того проблем хватает. Самая лучшая (но конечно не самая удобная и простая) установка пакетов реализована в slackware. Это предел простоты, и вот это должно быть примером для всех создателей дистрибутивов.
     
     
  • 2.11, Knuckles (ok), 17:33, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Не самая лучшая. Недавно решил удалить ненужные пакеты и понял, что не знаю, как.
    Ну покоцал, конечно, те, которые знаю, что точно не нужны. А сколько осталось lib*super-puper*.tgz и представить боюсь :)
     
     
  • 3.56, tux2002 (?), 09:18, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Не самая лучшая. Недавно решил удалить ненужные пакеты и понял, что не
    >знаю, как.
    >Ну покоцал, конечно, те, которые знаю, что точно не нужны. А сколько
    >осталось lib*super-puper*.tgz и представить боюсь :)

    Если ставишь через пакет, то и удаляешь removepkg. А то что make install DESTDIR= и затем makepkg это уж каждый кто устанавливает slackware должен знать сразу.


     
     
  • 4.57, tux2002 (?), 09:20, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Не самая лучшая. Недавно решил удалить ненужные пакеты и понял, что не
    >>знаю, как.
    >>Ну покоцал, конечно, те, которые знаю, что точно не нужны. А сколько
    >>осталось lib*super-puper*.tgz и представить боюсь :)

    Ктому же есть /var/adm/packages


     
  • 4.59, Knuckles (ok), 09:27, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо, как устанавливать и удалять пакеты я сам знаю :)
    Речь о другом:
    http://www.opennet.ru/openforum/vsluhforumID3/42532.html#10
     
  • 4.82, Michael Shigorin (ok), 02:29, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > это уж каждый кто устанавливает slackware должен знать сразу.

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

    Почему бы последние были "должны"?  Если я кому-то что-то впариваю, так это _я должен_ рассказать про подводные грабли, а не человек -- догадываться или впитать с молоком матери.

    Следствие: не утруждаетесь рассказывать -- не впаривайте, имейте совесть.

     
  • 2.47, Michael Shigorin (ok), 02:19, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Зачем создавать ещё одну прослойку для линукса, и без того проблем хватает.

    [*]

    >Самая лучшая (но конечно не самая удобная и простая)

    А чем лучшая-то?  Она ведь ещё и не самая надёжная.

    >установка пакетов реализована в slackware. Это предел простоты

    Не простоты, а примитивности.

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

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

    Для начала предлагаю http://lafox.net/support/index.php?showtopic=11769

     
     
  • 3.88, tux2002 (?), 11:07, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/

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

    Вы дистрибутивы без обратной связи с конечными пользователями делаете? Может быть убогие пользователи чего и подсказали бы :). Насчёт slackware - мне хватает её уровня сложности (если хотите примитивности). Изучать что-то ещё мне нехватает времени. Пусть например CentOS хороший дистрибутив, но я не собираюсь мёрзнуть в серверной управляя через графику (вообще X на серверах не держим), или растаскивать симлинки в rc.d вручную. Возьмём примитивнейший пример настройки сетевого интерфейса. Я знаю где лежит конфигурационный файл, но он пуст. Крутые дистростроители забыли предложить шаблон  хотя бы в виде комментариев. Я что должен из-за такой фигни хэндбуки курить? Так что почаще с пользователями советуйтесь.

     
     
  • 4.93, Michael Shigorin (ok), 17:35, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Ну почему же Отвечать могу только за себя -- стараюсь слушать, хотя тоже порой... большой текст свёрнут, показать
     
     
  • 5.94, tux2002 (?), 18:29, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/

    >Подсказать, почему не хватает, или сами догадаетесь?  Попробуйте сопоставить время на
    >решение задачи и время на возню с системой, не направленное непосредственно
    >на решение этой самой задачи.
    >Давайте посоветуемся.  Только сразу предупреждаю, к CentOS/RHEL у меня отношение тоже
    >ироничное, хоть и по другим поводам :-)  А в ALT
    >стараюсь делать так, чтоб было удобно и полезно себе и другим.
    > И это скорее правило по команде (хотя бывают заскоки, конечно).
    >

    Давайте посоветуемся и про затраченное время.

    ALT не видел, говорят хороший дистрибутив, посмотрю в ближайшее время. Загрузчик надеюсь предлагается запаролить при установке? Интересно как там у Вас со сборкой например зависимостей glibc->samba скажем с march=nocona.


     
     
  • 6.95, Andrey Mitrofanov (?), 18:38, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >ALT не видел, говорят хороший дистрибутив

    [...]
    >Интересно как там у Вас со сборкой например

    [...]
    >скажем с march=nocona.

    :-O То есть _не_ сорс-бейзеd дистрибутивов Вы вообще не видели? Мама-мама-мама...

     
     
  • 7.96, tux2002 (?), 18:56, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/

    >:-O То есть _не_ сорс-бейзеd дистрибутивов Вы вообще не видели? Мама-мама-мама...

    А что мне march=i486 mtune=i686 на сервер что ли ставить где 300 пользователей файлы гоняют самбой чараз кламав, да ещё жестоко VSS? Видел, на ноуте неплохо смотрятся.

     
  • 6.98, Michael Shigorin (ok), 19:47, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Давайте посоветуемся и про затраченное время

    /me listens

    >Загрузчик надеюсь предлагается запаролить при установке?

    В допнастройках -- хоть руками конфигурацию написать.

    >Интересно как там у вас со сборкой например зависимостей glibc->samba скажем
    >с march=nocona.

    Не уловил смысл, но можете поставить эксперимент -- hasher помогает.
    ftp://ftp.altlinux.org/pub/people/ldv/hasher/hasher.7.html
    ftp://ftp.altlinux.org/pub/people/ldv/hasher/thesis-2004.html

    Вообще самбу у нас собирает один из участников Samba Team -- проблемы последнее время бывали разве что вида "Саша медлит с релизом-с-буковкой, говоря, что там ещё сейчас патчик будет" :-)

     

  • 1.15, idkfa (?), 17:56, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    лучше всего в solaris :)
    никаких менеджеров - голова, блокнот и прямые руки :D
     
     
  • 2.40, anonymous (??), 00:19, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > лучше всего в solaris :)
    > никаких менеджеров - голова, блокнот и прямые руки :D

    +1; Очень просто, не отягощено гипертрофированными зависимостями
    (и, когда я с ним работал, никаких навязчивых update'ов,
    приводящих систему с публичными сервисами в непредсказуемое
    состояние).

     
     
  • 3.48, Michael Shigorin (ok), 02:21, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >> лучше всего в solaris :)
    >> никаких менеджеров - голова, блокнот и прямые руки :D

    Это простое человеческое щастье доступно пожалуй что на любом unix-like ;)  чем лучше-то?

    >+1; Очень просто, не отягощено гипертрофированными зависимостями

    Не переживайте, солярку уже пытаются привести в вид, приличный современному линуксу ;)

     

  • 1.23, coder (?), 21:01, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вряд ли это что-то решит. У Линуха должен быть свой собственный API для установки ПО. Иначе все поставщики его дистрибутивов так и будут продолжать лепить свои установщики
     
     
  • 2.26, xcode (?), 21:31, 24/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Вряд ли это что-то решит. У Линуха должен быть свой собственный API
    >для установки ПО.

    Если в итоге получится такое же глюкавое говнище как MSI инсталлер которое встает колом на каждый пшик, почти нихрена не умеет (кроме как глючить) и с массой ограничений - не, нафиг-нафиг.Линукс хорош выбором и тем что в итоге можно выбрать и что-то стоящее и нужное именно мне и именно в конкретно моих задачах порой.Вы такие умные?А покажите какую-нить систему под которую софта больше чем под .deb и .rpm?Всего 2 манагера пакетов кстати.

     
     
  • 3.54, oops (?), 07:07, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Если в итоге получится такое же глюкавое говнище как MSI инсталлер которое
    >встает колом на каждый пшик, почти нихрена не умеет (кроме как
    >глючить) и с массой ограничений - не, нафиг-нафиг.Линукс хорош выбором и
    >тем что в итоге можно выбрать и что-то стоящее и нужное
    >именно мне и именно в конкретно моих задачах порой.

    Может говнище и глюкавое, но от транзакций на unix like осях лично я бы не отказался.

     
     
  • 4.83, Michael Shigorin (ok), 02:36, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >от транзакций на unix like осях лично я бы не отказался.

    Для меня apt+rpm обеспечивают два уровня:

    - rpm умеет обломить транзакцию в несколько пакетов вплоть до момента проверки на пересечение устанавливаемых/обновляемых пакетов на пересечения по файлам;
    - rpm умеет обломить (откатить) установку одного пакета, если вдруг упёрлись в место/квоту/бэд/битый пакет (бишь он сперва распаковывает в файлы со случайными суффиксами и только если всё распаковалось -- unlink() старое);
    - apt умеет обломить транзакцию по куче условий верхнего уровня (например, исчезновение нужного какому из пакетов soname из системы);
    - apt умеет откатываться на пакеты с определёнными свойствами (pin-priority) -- впрочем, этим пользовался очень давно и нечасто, как-то не привык.

    Как с первыми двумя пунктами у dpkg -- не доводилось выяснять (это всё-таки редкие случаи), но можно предположить, что где-то сопоставимо.

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

     
     
  • 5.85, oops (?), 06:51, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Вот с откатом действий, производимых пакетными скриптами, может быть полный нетривиал.  
    >В смысле чтение их глазами да соображание, что было и что
    >стало

    в этом и заключается основная проблема. Как быть если я хочу поставить несколько пакетов в одной "транзакции"? при обломе я хочу откатиться на состояние до начала установки/апгрейда..


     
     
  • 6.97, Michael Shigorin (ok), 19:03, 26/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Вот с откатом действий, производимых пакетными скриптами, может быть полный нетривиал.  
    >>В смысле чтение их глазами да соображание, что было и что стало
    >в этом и заключается основная проблема.

    Вопрос, как обычно -- в том, какая именно проблема стоит и сколько готовности её решать.

    >Как быть если я хочу поставить несколько пакетов в одной "транзакции"?

    См. выше, тут это выходит в основном к apt и отчасти к rpm (насчёт пересечений).

    >при обломе я хочу откатиться на состояние до начала установки/апгрейда..

    Облом бывает разноплановый: одно дело откатить версии пакетов (это элементарно), другое -- например, "провернуть назад" фарш обновлённой базы данных после пинка в ребилдилку из постустановочного скрипта.  Или вот ещё один из частных примеров: https://bugzilla.altlinux.org/show_bug.cgi?id=14917 (rpm умеет после транзакции выполнить предварительно заданный код -- например, перестройку собственной базы; это и имелось в виду под post mortem).


    Бишь задача поиска обратной функции к произвольной (а именно к ней сводится вопрос отката действий скриптов) -- боюсь, нерешаемая "в лоб".

    В более-менее общем случае при условии пренебрежимости в разнице по остальному находящемуся на той же ФС состоянию[*]... наверное, я бы копал в сторону XFS/LVM snapshots.

    * бишь пользователи или там базы могут и должны жить на других ФС, нежели пакетное ПО,
      если уж актуальна такая точность/гарантированность отката состояния

    Но до сих пор хватало даже не аптовых pin'ов, а rpm -Uvh --oldpackage, благо случаи редки и происходят там, где и ожидаются (в основном unstable на буке).

    Кстати, на практике с этим тоже контейнеры помогают: делаешь клон, изучаешь процесс в деталях, но без риска уронить production, и если всё устраивает -- можно перекинуть адреса и оставить старую VE-шку в качестве бэкапа, пока пыль точно не осядет.

     
  • 2.41, anonymous (??), 00:28, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    > Вряд ли это что-то решит. У Линуха должен быть свой собственный API для установки ПО.
    > Иначе все поставщики его дистрибутивов так и будут продолжать лепить свои установщики

    Есть мнение, что <<ужасное>> состояние инсталляции под Linux не идёт ни в какое сравнение с инсталляцией на W. С _любым_ PM (или без него) я способен найти приемлемый для меня use-case. Количество вариантов-кандидатов всегда > 1.

     

  • 1.32, Guest (??), 22:28, 24/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Установка ПО в Linux - задача достаточно сложная и по большей части не может контролироваться даже самим пользователем системы.

    Черт возьми. Ну доколе?! Откуда берутся эти идиоты и откуда они берут такие сложности?

    - Линукс для дома - ubuntu. Synaptic - любой пакет ищется, скачивается и устанавливается/обновляется со всем зависимостями в пару кликов. Либо одной командой apt для которой надо помнить только 3 флага.

    - Не десктопная FreeBSD. Любой порт ищется, устанавливается, скачивается/обновляется также одной командой, либо также одним кликом через GUI к портам (забыл уже как оно зовется).

    В gentoo все ничем не сложнее, и подозреваю что в остальных mainstream дистрибутивах тоже. Бывшие Windows пользователи ОХРЕНЕВАЮТ, что ВЕСЬ софт ставится единообразно и мгновенно, и, при этом чисто потом удаляется.

    Так нет, обязательно вылезет чудо, которое придумает свой суперпростой формат пакетов. Хорошим тоном у них еще считается все зависимости статически прилинковать, ага. Ну и найдется еще пачка странных людей, которые им поддакнут (см. посты #17 и #20). 'Да-да, скажут, Linux для гиков, на любой чих ./configure надо и ядро пересобрать'.

    Научитесь думать мозгом, а пока проходите и не задерживайте.

     
     
  • 2.49, Michael Shigorin (ok), 02:26, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Так нет, обязательно вылезет чудо, которое придумает свой суперпростой формат пакетов.

    Не просто суперпростой, а особенно суперпростой с XML и бантиками.

    >Хорошим тоном у них еще считается все зависимости статически прилинковать, ага.

    Ну эт скорее у слакваристов навроде rоdlinuх.

    Вообще же тем, для кого synaptic сложен -- в новом распрекрасном мире показаны Wii/Xbox/PS3, мобила и тырнет-таблетка.  И никаких универсальных программируемых расширяемых компьютеров.

     

  • 1.58, Аноним (58), 09:20, 25/06/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Появится еще один бажный линуксовый пакет. Мне так линукс давно интересен только как встраиваемая система, в пользовательскую десктоп систему, я считаю, он не вырастет никогда. Ну а если ты например ставишь систему на какой-нить Colibri PXA и еще не врубился как собрать и проинсталить пакет, то тут уж ничего не поможет.
     
     
  • 2.65, kostbebix (?), 11:31, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Появится еще один бажный линуксовый пакет. Мне так линукс давно интересен только
    >как встраиваемая система, в пользовательскую десктоп систему, я считаю, он не
    >вырастет никогда.

    Уже выросла, осталось "привыкнуть" народу к ней. Действительно много людей (из моего круга общения) либо перешли либо переходят и довольны.

    А насчет:

    > Ну а если ты например ставишь систему на какой-нить
    >Colibri PXA и еще не врубился как собрать и проинсталить пакет,
    >то тут уж ничего не поможет.

    - почему бы в таком случае не сделать вариант "деньги за поддержку". Вы отваливаете раз в месяц сис. админу, который периодически помогает вам и консультирует вас. На бедно-студенческом уровне это вообще что-то типа "пиво за поддержку" :-)

     
     
  • 3.67, Максим (??), 12:19, 25/06/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Мне все же кажется создовать такой Ари надо ,но для РАЗРАБОТЧИКОВ программ .Например есть
    Такая програма как Firefox - хочеш установить обновление или дополнение ...хм если в пакетах нет то радости писать rpm что то не испытываю .

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру