- Pkgcore
-
Pkgcore — задумана как защищённая замена для portage в Gentoo, оптимизирована для работы и написана на python.
Он представляет emerge в трех основных сценариях.
- pemerge для установки, обновления и удаления пакетов. Это почти тоже самое что и emerge.
- pquery для поиска в дереве portage и установленных пакетов.
- pmain для синхронизации дерева и других технических работ.[1]
Содержание
Особенности
Необходимо проверить качество перевода и привести статью в соответствие со стилистическими правилами Википедии. Вы можете помочь улучшить эту статью, исправив в ней ошибки.
Оригинал на английском языке — [[:en:[2]|[3]]].Framework
- Абстрагированная подсистема конфигурации, поддерживающая различные форматы файлов конфигурации (в том числе при их одновременном использовании):
- формат ini-файлов (для внутреннего использования и высокоуровневых директив pkgcore);
- формат make.conf и /etc/portage/;
- dhcp-подобный формат.
- Единый интерфейс запроса метаданных. Один и тот же API используется для выборки пакетов, поиска по содержимому, поиска по описанию и прочих запросов основных метаданных. Поддерживается логическая группировка (boolean grouping), а также определение собственного запроса соответствующих объектов (query matching objects).
- Формат агностик resolver надлежащего осуществления поддержки формата, ничего не требует от resolver для его поддержки. Обнаружение и обработка циклических зависимостей, настраиваемые включение / выключение глубокого разрешения (deep resolution), полный / неполный граф зависимостей.
- Основанный на триггерах движок слияния; расширяемый и спроектированный для избежания ненужного ввода-вывода для любой проверки / изменения образа для установки / удаления. Это позволяет пользователю конфигурации для переопределения.
Конкретно Gentoo
- EBD, известный Ebuild Daemon. 40 % сокращение времени выполнения регенерации, полной перезагрузки окружающей среды / сохранения поддержки, необходимой для glep33; дополнительное преимущество его в том, что binpkgs и VDB (устанавливается файлы сборки), не зависящие от доступа eclasses из дерева. И наконец, если у вас есть система SMP, может получить около линейного расширения (~ 90 % расширения тестирования на четверых P3 500 MHz) с помощью распараллеливания источник: pkgcore / source:pkgcore/bin/utilities/pregen.py, 7x быстрее четырехъядерных; статистика доступна через pregen.
- Поддержка N родителей наследования в профилях.
- USE / SLOT DEPS.
- /etc/portage/sets support.
- Встроенная интеграция GLSA (без внешних XML DEPS).
- metadata.xml интегрирован в пакет Ebuild API.
- Слияния прямо из tbz2 без расточительной промежуточной декомпрессии на временный каталог.
Ненаучные данные о производительности (2010-07-15)
- Первый запуск(cold buffers).
$ time pmerge -p portage > /dev/null $ time emerge -p portage > /dev/null real 0m15.680s real 0m56.778s $ time pquery portage > /dev/null $ time emerge -s portage > /dev/null real 0m7.748s real real 0m25.653s - Второй запуск(hot buffers).
$ time pmerge -p pkgcore > /dev/null $ time emerge -p pkgcore > /dev/null real 0m0.825s real 0m17.414s $ time pquery pkgcore > /dev/null $ time emerge -s pkgcore > /dev/null real 0m0.718s real 0m4.705s Примечания
Ссылки
- Официальный сайт. (англ.)
Категории:- Gentoo
- Системы управления пакетами
Wikimedia Foundation. 2010.