Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Как использовать пакетные
менеджеры для своего софта
       Александр Шигин
        shigin@rambler-co.ru
В чем проблема
написать программу — начало пути
главная цель: использование
когда машин много, установка становится
проблемой


                                          2
Пакетные менеджеры
есть почти везде
решают проблемы установки, обновления
и удаления программ
решают по разному, но обычно работают
Python
изначально странная установка модулей
по умолчанию модули для 2.4, 2.5 и 2.6 —
это абсолютно разные модули
  даже если они ничем не отличаются
Python: distutils
решает проблему установки
но по своему:
  только в python 2.5 появились зависимости
  в поставке только bdist_rpm
странная архитектура
до autoconf далеко
distutils: rpm
иногда установка сломана
  из __os_install_post убрать
    brp-python-bytecompile
зависимости надо прописывать «ручками»
distutils: deb
bdist_deb появился в 2004 году, но до сих
пор не включен в поставку
easy_dep, stdeb
distutils: FreeBSD
собственная обвязка для портов
dist2free: страшный, но работает
  http://github.com/shigin/dist2free/tree/master
  документация доступна в wiki
Python: setuptools
заточен под eggs
встроенные модули и FreeBSD
зависимости с первого дня
setuptools: easy_install
умеет обновлять пакеты
но не ведет их базы
не умеет удалять
Python: pip
люди опять не хотят понять, что надо
создавать «нативные» пакеты
он новый и пока его не используют
Ruby: gems
нативные пакеты в TODO
  уже 4 года
gems: парадокс
FreeBSD уже всё поняли
deb: dpkg-gem, dkpg-rails
rpm: gem2rpm

More Related Content

Как использовать пакетные менеджеры для своего софта