Новость из категории: Информация

Сборочная среда Woof и система управления пакетами

Содержание:
1. Немного истории, принципы функционирования проекта;
2. Самые разные Puppy;
3. Сборочная среда Woof и система управления пакетами (Вы читаете данный раздел).
Сборочная среда Woof и система управления пакетами

Сейчас большинство версий Puppy Linux собирается с помощью сборочной среды Woof. Она начала создаваться в 2008 году с целью получить возможность пользоваться репозитори-ями других Linux-дистрибутивов и освободиться таким образом от многих проблем. Сегодня Puppy LiveCD может быть собран из бинарных пакетов Debian, Ubuntu, Arch, Slackware, T2 или самой Puppy. Сборочная среда состоит из шести скриптов:
> 0Pre - генерирование базы данных пакетов (только для Т2);
> 0setup - загрузка базы данных пакетов;
> 1download - загрузка пакетов;
> 2createpackages - сборка пакетов Puppy (процесс занимает 2-3 часа);
> 3builddistro - сборка LiveCD;
> 4quirkybuild - дополнительный скрипт, применяемый только для Quirky.

Кроме того, для Woof есть ещё один скрипт, создающий графический интерфейс .

Система управления пакетами

Начиная с версии 2.14 дистрибутив Puppy перешел на новый тип пакетов с расширением PET, что можно расшифровать как «Puppy's Extra Treats» или «Puppy's Enhanced Tarballs». Сам пакет представляет собой простой архив tar.gz с MD5-суммой. Кроме того, большинство пакетов включают в себя специальный текстовый файл .specs с данными о программе (в том числе и с перечислением зависимостей, хотя очень часто их там не бывает). При необходимости в пакет могут помещаться скрипты, запускаемые после установки или удаления программы. В системе предусмотрен простой скрипт для создания пакетов из откомпилированных пользователем программ - это требует существенно меньших усилий, чем, скажем, собрать пакет DEB или RPM.

Сборочная среда Woof и система управления пакетами
Пакетный менеджер Slickpet 1.6.4

Кроме того, существует принципиально иная форма распространения программ - SFS-файлы. Фактически это комплексные пакеты со всеми зависимостями, представленные в виде образа файловой системы. Они применяются совсем не так, как обычные пакеты, поскольку требуют непосредственной загрузки в память. Для загрузки .sfs «на лету» Puppy предлагает программу «SFS-Load-on-the-fly». Если какой-то модуль нужен постоянно, то это легко сделать через штатный конфигуратор загрузки. Программы, установленные из .pet-пакетов, в конечном счёте увеличивают размер вашего файла сохранения (дистрибутива на носитель), а SFS-модули просто располагаются отдельно, по соседству с основным файлом сохранения. Обычно SFS-файлы используются для крупных вещей: оконных менеджеров, систем программирования и т.д. При использовании SFS-модулей следует следить, чтобы версия модуля соответствовала вашей системе.

В системе Slacko 5.3 есть два менеджера пакетов: основной менеджер «Puppy package manager» (в дальнейшем PPM) и, так называемый, «установщик популярных программ» Slickpet 1.6.4. В PPM представлены 180 программ в 13 категориях. По умолчанию он настроен на официальный репозиторий вашей системы. В любой момент базу пакетов можно обновить. После того, как вы выбрали пакет для установки, вам предложат выбрать одно из девяти зеркал, находящихся в Европе, Северной Америке и Австралии. При установке пакетов из официального репозитория, как правило, конфликтов и неустановленных зависимостей не бывает. В PPM есть и кнопка для удаления программ: после нажатия на неё появляется список установленных программ, доступных для удаления.

Программа PPM - это набор скриптов, у которых есть скриптовый же GUI. Все необходимые для управления пакетами базы данных находятся в каталоге /root/.packages. Отдельно взятый пакет (не важно, каким способом он получен) устанавливается простым кликом -при этом используется petget (один из скриптов PPM). Можно устанавливать не только «родные» пакеты, но и DEB, RPM, пакеты Arch Linux, Slackware, T2 Linux. Для проверки я установил таким образом консольный редактор nano сначала из .deb, потом - из .rpm. Операции завершились успехом - редактор нормально работал.

Потом установил программу с заведомо неудовлетворёнными зависимостями - gnome-terminal. Она установилась без вопросов. Запуск скрипта поиска зависимостей тоже не показал никаких неудовлетворённых зависимостей. Однако программа по понятным причинам не работала. Всё дело в том, что зависимости проверяются по базе программ, установленных пользователем, а в базу они попадают из .specs-файлов, находящихся в пакете. Поэтому, если в файле спецификации зависимости не указаны, то система считает, что они удовлетворены. Когда система работает с чужими пакетами, она преобразует их в свои пакеты, но зависимости при этом теряются.

Программы unrpm, undeb и dpkg прежде всего предназначены для работы с PPM, но при желании ими можно пользоваться отдельно. Например, если добавить в систему файл /var/lib/ dpkg/status, то появится возможность устанавливать DEB-пакеты с помощью dpkg. При этом он будет вести свою базу установленных пакетов. Конечно, методически это неправильно и может привести к существенным проблемам в системе - то же самое можно сказать в целом об установке отдельных пакетов, взятых из посторонних источников. Особенно осторожными надо быть с библиотеками. Хотя, если вы знаете, что делаете, допустим и такой метод.


Гораздо больше, чем новая сборка Linux, Вам необходимы услуги патронажа (http://www.opora-patron.ru/), предоставляемые опытными специалистами? Значит, Вам следует прямо сейчас обратиться в компанию «Опора», где работают настоящие профессионалы своего дела!

Slickpet 1.6.4 можно настроить на один из девяти репозиториев, а по умолчанию он работает с ibiblio.org.

Пакетов в этом менеджере немного, и разбиты они на пять разделов:
> Popular Pets: графический редактор Gimp, интернет-телефон Psip Puppyphone, Wine и игры для GNOME;
> Internet Pets: Firefox, Dillo, Chromium, Opera, TOR Browser, Pidgin;
> SFS Get: модуль для программирования (devx_slacko_5.3.sfs), несколько игр, Google Earth, Skype, JRE, математический модуль, исходники ядра 2.6.37.6, LibreOffice, библиотека Qt;
> Drivers,
> News: новости проекта Puppy.

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

Другие подробности об управлении пакетами в Puppy можно найти на странице http:// puppylinux.com/development/package-management.htm.

Рейтинг статьи

Оценка
5/5
голосов: 1
Ваша оценка статье по пятибальной шкале:
 
 
   

Поделиться

Похожие новости

Комментарии

^ Наверх