[ Вебинар ] "7+2=9 ошибок, из-за которых менеджеры сливают заявки"
Как использовать пакетные менеджеры для своего софта
-
Upload
alexander-shigin -
Category
Documents
-
view
402 -
download
0
description
Transcript of Как использовать пакетные менеджеры для своего софта
Как использовать пакетные менеджеры для своего софта
Александр Шигин[email protected]
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