Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


etc:common_activities:slind:deb_producer

This is an old revision of the document!


Плагин работы с .deb пакетами

Требования приведены в таблице.

Id Описание P1) Комментарий
REQ1 Должен быть расширением стандартного проекта CDT 1
REQ2 Структура дерева файлов пакета должна определяться целью install в makefile 1
REQ3 Должен поддерживаться standard проект 1
REQ4 Должен поддерживаться managed проект 2
REQ5 Пользователь указывает местоположение файлов на целевой платформе вручную 1
REQ6 Файлы, входящие в пакет берутся из CDT- проекта или из его целей 1
REQ7 Должен быть предоставлен интерфейс описания пакетов (файл control) 3
REQ8 Должна быть возможность редактирования скриптов установки / удаления пакета 3
REQ9 Пользователь должен уметь изменять changelog 2
REQ10 Должна быть возможность генерации бинарного пакета для целевой платформы 1
REQ11 Проект должен экспортироваться в deb-пакет выбором меню File/Export выбор debian package 1

Определения

  • Standard makefile project – проект CDT в котором makefile пишется вручную, никогда не изменяется извне струдствами разработки.
  • Managed makefile project – проект CDT в котором makefile каждый раз генерируется заново при изменении проекта.

Реализация

  • Разработка пакета (плагина) org.slind.ei.debproducer
  • Для standard-проектов пользователь вручную заполняет местоположение файлов внутри цели install
  • Для managed-проектов пользватель может отредактировать переменные указывающие пути для установи файлов в целевой системе(bin,doc,lib,…)
  • Если в проекте нет каталога debian, (в котором в том числе лежит changelog), то он генерируется dh_make и все файлы добавляются в проект
  • Любой из шагов экспорта проекта в deb-пакет может завершиться ошибкой
  • Сборка пакета происходит из специально подготовленного каталога при помощи dpkg
  • Подготовка каталога, где будет запущен dpkg, происходит при помощи make install и копирования директории debian экспортируемого проекта

Интерфейс пользователя

  • Редактирование переменных
  • Шаг 1 : Описание пакета 2)
  • Шаг 2 : Описание изменений 3)
  • Шаги: файлы из каталога debian

Сценарии

Вариант 1. Экспорт проекта в deb-пакет

* Предусловие: В makefile проекта есть цель install, зависящая от DESTDIR * Предусловие: Для managed-проектов заданы пути4) для

Пользователь выбирает меню File/export или Export в контекстном меню проекта. В появившемся дилоге выбирает пункт “General/Debian package”. Мастер имеет следующие экраны:

наименование обязательный назначение
control да выбор каталога для пакета, описание зависимостей, архитектуры, разработчик, описание пакета, версия
changelog да описание изменени (текстовый редактор текущего изменения)
редактор каталога debian нет интерфейсы для редактирования файлов в каталоге debian

Кнопка Finish генерирует deb-пакет.

Вариант 2

Генерация директории DEBIAN
  • Пользователь выбирает пункт меню File→New→DEBIAN
  • В полях мастера задает целевую директорию и заполняет поля для файла control (Описание пакета, рис.1)
  • Генерируются файлы директории DEBIAN
  • Пользователь имеет возможность редактировать полученные файлы и добавлять необязательные файлы в созданный каталог
Экспорт .deb-пакета
  • Пользователь выбирает пункт меню File→Export→deb 5)
  • В мастере экспорта указывает целевую директорию, архитектуру, описание изменений
  • словно по волшебству, в указанной директории появляется deb-пакет…

Подробности

Общие вопросы

  1. Почему для SLIND выбран именно debian?

Ссылки

1)
приоритет: 1-maх,3-min
2)
редактирование файла control
3)
редактирование changelog
4)
есть ли уже такие переменные в eclipse:doc,bin,lib,…
5)
снова разногласия: вариант - Run→Run as dpkg

Discussion

cheat, 2008/03/23 23:20

Сейчас по факту у экспорта вообще нет опций. Можно добавить: поле для пути к файлу с подписью(может ему место вообще в настройках плагина?), чекбокс «не подписывать файлы», комбо выбора архитектуры для которой собирается, чекбокс «не выполнять проверку зависимостей». Нужно уточнить что их этого нужно + озвучить проблему с местом оседания файлов.

You could leave a comment if you were logged in.
etc/common_activities/slind/deb_producer.1196029909.txt.gz · Last modified: 2008/01/03 02:32 (external edit)