Ниже, я предполагаю , что источник является открытым (например , скрипты на Python) , которые , следовательно , не связаны с какой - либо архитектуры (например , amd64 или i386), следовательно , «все», Если у вас есть какой - то источник C, вам нужно использовать Architecture: amd64 i386
в исходном control
файле.
создание пакета готовых для Launchpad
Это в конечном счете станет серией индивидуального Launchpad пакетов PPA.
То, что я предпочитаю (но не могу быть в состоянии достичь ...), чтобы сохранить свою упаковку до минимума - создать серию пакетов из шаблона и настроить необходимый минимум (изменения и т.д. + файл деготь).
Launchpad принимает только пакеты с исходными текстами, поэтому создать rules
что устанавливает файлы в нужных местах. Для удобства я буду использовать debhelper . Каталог с файлами должен выглядеть следующим образом :
debian/changelog
debian/control
debian/rules
debian/compat
mypluginfolder/...
debian/copyright
Файл также может быть полезен для информирования пользователей о лицензиях , связанных с пакетом. Я не думаю , что вам нужен postinst
сценарий , так как вам нужно только извлечь некоторые файлы. compat
должен содержать уровень compatilbility debhelper, скажем , «8». (пожалуйста , обратитесь к странице руководства по debhelper для более подробной информации)
changelog
Файл можно редактировать с помощью dch
команды, доступной из devscripts
пакета. rules
( С использованием debhelper) должна содержать:
#!/usr/bin/make -f
%:
dh $@
override_dh_install:
dh_install mypluginfolder/ /usr/share/rhythmbox/plugins
Сделайте его исполняемым с помощью chmod 755 debian/rules
. Исходный пакет может быть построен с использованием debuild -S
. Убедитесь, что в директории с именем <package-name>-<version>
. Более подробная информации о override_
поведении и dh
командах можно найти на странице руководства .
Руководство разработчика Debian было очень ценным для меня , чтобы понять это, это рекомендуется чтение. Пример упаковки можно найти на https://github.com/Bumblebee-Project/bumblebee-ppa .
создание пакета из существующего дерева файлов
dpkg-deb -b
может быть использовано для создания тарболов из существующего дерева файлов. Во- первых, начните с создания каталога , который должен быть назван в честь вашего пакета. Я предполагаю , что вы хотите назвать его myplugin
, и положил его в /usr/share/rhythmbox/plugins/mypluginfolder
.DEBIAN
mkdir -p myplugin/usr/share/rhythmbox/plugins/mypluginfolder
mkdir myplugin/DEBIAN
Скопируйте файлы:
cp -r ~/mypluginsfolder myplugin/usr/share/rhythmbox/plugins
Далее, вам потребуется так называемый контрольный файл , расположенный в myplugin/DEBIAN/control
котором описывается пакет. Содержимое такого файла помещаются ниже:
Package: myplugin
Version: 1.0-1
Maintainer: You <whatever@contact.address>
Architecture: all
Description: plugins for Rhythmbox
Longer description here
.
As you can see, new paragraph are split by a single dot,
and lines have to be indented by one space.
Теперь, вы можете дополнительно проверить содержимое упаковки. Следующая команда выводит список директорий и файлов Записи содержимого myplugin
:
find myplugin -ls
Если вы удовлетворены, сборки пакета в текущем каталоге:
dpkg-deb -b myplugin .
Новый файл появится, названный , как <package>_<version>_<architecture>.deb
что в этом примере myplugin_1.0-1_all.deb
. Вы можете использовать less
программу , чтобы заглянуть в файл. Например, less myplugin_1.0-1_all.deb
.