etc:common_activities:slind:deb_producer
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| etc:common_activities:slind:deb_producer [2007/11/10 21:29] – zps | etc:common_activities:slind:deb_producer [2008/03/23 23:16] (current) – zan | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ==== Плагин | + | ===== Плагин |
| - | Пакет -- архив, содержащий в себе файлы, приготовленные для | + | < |
| + | для тестирования плагина | ||
| + | </ | ||
| - | Помимо всего прочего, | ||
| - | Разрешением | + | Требования к плагину приведены в таблице. |
| + | ^Id ^Описание ^P((приоритет: | ||
| + | | REQ1 | Должен быть расширением | ||
| + | | REQ2 | Структура дерева файлов пакета должна определяться целью install в makefile | ||
| + | | REQ3 | Должен поддерживаться standard проект | ||
| + | | REQ4 | < | ||
| + | | REQ5 | < | ||
| + | | REQ6 | Файлы, входящие в пакет берутся из CDT- проекта или из его целей | 1 | | | ||
| + | | REQ7 | Должен быть предоставлен интерфейс описания пакетов (файл control) | ||
| + | | REQ8 | Должна быть возможность редактирования скриптов установки / удаления | ||
| + | | REQ9 | Пользователь должен уметь изменять changelog | ||
| + | | REQ10 | Должна быть возможность генерации бинарного пакета для целевой платформы | ||
| + | | REQ11 | Проект должен экспортироваться в deb-пакет выбором | ||
| + | | REQ12 | Должен быть предоставлен помощник создания каталога debian, генерирующий | ||
| - | === Требования верхнего уровня | ||
| - | В балице приведены требования самого верхнего уровня к разрабатываемому плагину. | + | ==== План работ ==== |
| + | |Освоиться со сборкой source и binary пакетов|21.01| | ||
| + | |Экспорт (доработка)|23.01| | ||
| + | |Редактор control-файла|28.01| | ||
| + | |Помощник changelog|28.01| | ||
| + | |Генерация rules|6.02| | ||
| - | ^Id ^Описание ^P((приоритет: | ||
| - | | REQ1 | Должен поддерживать проект deb описывающий один или несколько пакетов | ||
| - | | REQ2 | Deb-проект должен уметь загружаться и сохраняться | ||
| - | | REQ3 | Пользователь должен уметь указывать местоположение файлов на целевой платформе | ||
| - | | REQ4 | Должна быть возможность использования файлов и целей CDT-проекта | ||
| - | | REQ5 | Должен быть предоставлен интерфейс описания пакетов (файл control) | ||
| - | | REQ6 | Должна быть возможность редактирования скриптов установки / удаления | ||
| - | | REQ7 | Пользователь должен уметь изменять changelog | ||
| - | | REQ8 | Должна быть возможность генерации пакета для целевой платформы | ||
| - | | REQ9 | Должен быть мастер создания проекта | ||
| - | | REQ10 | Должна быть возможность генерации пакета с исходными текстами | ||
| - | | REQ11 | Должна быть возможность генерации бинарного пакета | ||
| - | === Варианты использования | + | ==== Определения |
| - | FIXME: | + | * **Standard makefile project** -- проект CDT в котором makefile пишется вручную, никогда не изменяется извне средствами разработки. |
| + | * **Managed makefile project** -- проект CDT в котором makefile каждый раз генерируется заново при изменении проекта. | ||
| + | * **DebianNature** -- свойство проекта CDT, которое означает что проект содержит каталог debian и для него может быть сгенерирован deb-пакет. | ||
| - | - **Выбор типа пакета**. Пользователь перед началом создания пакета, | ||
| - | * сделать очередную версию уже существующего пакета | ||
| - | * сделать первую версию нового пакета | ||
| - | - **Выбор существующего пакета**. Если пользователь хотел сделать очередную версию, | ||
| - | - **Ввод основных данных о пакете**. Пользователь заполняет набор полей, которые необходимы для создания нового пакета. | ||
| - | - **Выбор файлов, | ||
| - | - **Указание каталога установки для файлов**. Пользователь видит список ранее выбраных фалов и указывает пути, куда должны быть установленны файлы. Чтобы указать место установки файлов, | ||
| - | - **Редактирование списка зависимостей нового пакета**. Пользователь видит список пакетов, | ||
| - | - **Добавление скриптов пре/ | ||
| - | - **Ввод " | ||
| - | - **Сборка нового пакета**. Пользователь наблюдает все ранее введеные данные в наглядной форме, чтобы удостоверится, | ||
| + | ==== Реализация ==== | ||
| - | === Уточняющая информация | + | * Разработка пакета (плагина) org.slind.ei.debproducer |
| + | * Для standard-проектов пользователь вручную заполняет местоположение файлов внутри цели install | ||
| + | * < | ||
| + | * Если в проекте нет каталога debian, (в котором в том числе лежит changelog), то он генерируется помощником, | ||
| + | * Сборка пакета происходит из специально подготовленного каталога при помощи dpkg | ||
| + | * Подготовка каталога, | ||
| - | == Входные данные для генерации пакета == | ||
| - | Чтобы сгенерировать пакет, необходимо иметь следующие данные: | ||
| - | * тип пакета (бинарный или с исходными текстами программы); | ||
| - | * список файлов, | ||
| - | * в случае, | ||
| - | * список требуемых библиотек; | ||
| - | * список предоставляемых библиотек; | ||
| - | * путь, куда ставить какой файл(разные файлы могут быть установлены в различные каталоги) | ||
| - | == Сборка пакетов для другой платформы | + | ==== Интерфейс |
| - | FIXME: в работе | + | * Генерация каталога DEBIAN (File-> |
| + | * Редактор файла control: по аналогии с редактором для plugin.xml. Должен предоставлять возможность заполнения стандартных полей control-файла и добавление специальных полей для пакетов slind | ||
| + | * Дейсвия редактировани файла changelog: new item, new version, новая подверсия (non-maintainer) | ||
| + | * Экспорт пакета (File-> | ||
| - | == Пакеты с исходниками: | ||
| - | FIXME: в работе | + | ==== Сценарии ==== |
| + | * Предусловие: стандартный cdt-проект. В makefile проекта есть цель install, зависящая от DESTDIR | ||
| + | === Генерация директории DEBIAN === | ||
| + | * Пользователь выбирает пункт меню File-> | ||
| + | [[.: | ||
| + | ^наименование ^обязательный ^назначение ^ | ||
| + | | Package type | да | выбор типа пакета, | ||
| + | |Source description|source|Описание общей части| | ||
| + | |Packages descrition|source|Описание бинарных пакетов| | ||
| + | |Package description|binary|Описание бинарного пакета| | ||
| + | |||
| + | * В полях мастера пользователь заполняет поля для файла control | ||
| + | * Генерируется директория debian, содержащая файлы control, changelog и rules((для source-пакетов)) | ||
| + | * Пользователь имеет возможность редактировать полученные файлы и добавлять необязательные файлы в созданный каталог | ||
| + | === Экспорт .deb-пакета === | ||
| + | * Пользователь выбирает меню File/export или Export в контекстном меню проекта. В появившемся дилоге | ||
| + | выбирает пункт " | ||
| + | Мастер имеет следующие экраны: | ||
| + | ^наименование ^обязательный ^назначение ^ | ||
| + | | export | ||
| + | * словно по волшебству, | ||
| + | ==== Подробности ==== | ||
| + | * [[.: | ||
| + | * [[.: | ||
| + | ==== Ссылки ==== | ||
| + | [[http:// | ||
| + | ~~DISCUSSION~~ | ||
etc/common_activities/slind/deb_producer.1194719345.txt.gz · Last modified: 2008/01/03 02:32 (external edit)