Differences between revisions 26 and 27
Revision 26 as of 2007-01-16 20:30:33
Size: 6760
Editor: NeilWilliams
Comment:
Revision 27 as of 2007-01-18 15:17:04
Size: 6790
Editor: NeilWilliams
Comment:
Deletions are marked like this. Additions are marked like this.
Line 58: Line 58:
||gpe-bluetooth|||||| ||gpe-bluetooth||407221||testing for experimental||

Neil Williams

  • Current packages: QOF, pilot-qof, deb-gview and gpe-expenses.
  • [:Embedded_Debian:Emdebian] work: Wookey's cross-get (bash) has been converted to perl using the dpkg-cross model. On release in debian unstable as apt-cross.

My main aim is to add the 'glue' required to get the existing subsections of emdebian working together as a whole.

{{{sudo apt-get install emdebian-tools emsetup cd /path/to/debian/source/source-1.2.3 em_make emdebuild dput emdebian ../source_1.2.3-1em1_$(ARCH).changes}}}

Plan

cross-get => apt-cross, adding support for:

apt-cross --get == cross-get

apt-cross --build == cross-get && dpkg-cross --build

apt-cross --install

  1. Intended for chroots to prevent the packages being removed when the underlying system is upgraded.
  2. To be used in a pbuilder type build.
  3. Implemented as cross-get && dpkg-cross --build && dpkg-cross --install

apt-cross --query == dpkg-cross --query

apt-cross --list  == dpkg-cross --list

This keeps dpkg-cross for local files and apt-cross for repository files.

Status : Available in Debian unstable.

emchain

New script that automates the download (cross-get code), unpacking (dpkg), rebuilding and repackaging of binutils, glibc and gcc as per emdebian requirements. Outputs the current binaries in a non-privileged folder without installing. Also, needs to monitor uploads of source packages for the emdebian toolchain (probably via cron-apt) and schedule a rebuild of only those components of the chain that have been updated. The aim is to keep emdebian toolchains in sync with Debian packages with a delay of only 24-48hrs which is similar to most buildd machines. Likely to use and possibly extend Hector's existing script(s). Part of emdebian-tools, due for the Debian NEW queue soon.

empdebuild

Built on pdebuild with a few differences.

  1. Uses emchain binaries to add to our own --mbase-tgz, by default called emdebian.tgz. These binaries are retained within the chroot until upgraded with emchain.
  2. Uses pdebuild code to locate the .dsc in a debian source tree.
  3. Uses cross-built gcc to build in the emdebian chroot.
  4. Uses apt-cross to get, build and install (to the chroot) dependencies, like pdebuild, dependencies will not be saved to the chroot.
  5. Builds an emdebian package from the debian source tree.
  6. IGNORES Debian essential packages - require each package to specify the FULL dependency list.

  7. Uses the emdebian version number (from svn) and appends emX to the Debian version string. Renames each built .deb as .mdeb.
  8. Use dash as the default shell, not bash.
  9. Add busybox-full, initscripts, tinylogin and minibase (rather than dropbear) as the base system of the chroot.

GPE in Debian

Some GPE packages are already in Debian, I'm working to complete the list so that Debian itself can support smaller devices and provide the GPE packages for Emdebian to optimise further. This is the current status of GPE packages awaiting entry into Debian:

Package

ITP

Status

gpe-appmgr

#404083

packaging

gpe-bluetooth

407221

testing for experimental

gpe-calendar

#327568

Experimental (queue)

gpe-conf

#404059

Crashes

gpe-confd

#404390

packaging

gpe-dm

depends on gpe-session-scripts

gpe-go

407124

New queue

gpe-icons

needs an update

pending

gpe-irc

needed?

gpe-lights

407139

New queue

gpe-login

Philippe

gpe-mileage

needed ?

gpe-minibrowser

#403802

Dependency issue

gpe-mininet

gpe-mixer

#404381

Dependency: gpe-icons >= 0.23

gpe-othello

407123

licence has been clarified (GPL): New queue

gpe-ownerinfo

Philippe

gpe-plucker

gpe-question

407173

packaging

gpe-screenshot

gpe-sketchbook

Philippe

gpe-session-scripts

depends on gpe-question and bluetooth

gpe-soundbite

#198923

New queue

gpe-soundserver

#404312

New queue

gpe-su

#404380

Experimental

gpe-task-apps

needed ?

gpe-terminal

needed ?

gpe-tetris

needed ?

gpe-theme-clearlooks

needed?

gpe-timesheet

packaging

gpe-today

Philippe

libnrcit

upstream issues

libnrcore

upstream issues

Emdebian package building

  1. Patch debian/ files according to emdebian SVN *without* running debian/rules (this allows rules itself to be patched).
  2. Prepare a .deb under this naming scheme:

{{{<package> == binary package name, exactly as in Debian. <dvers> == Exact Debian version string. <evers> == Sequential emdebian release number.

<package>_<dvers>em<evers>_<arch>.deb}}}

So, taking libqof1 as our example.

{{{Binary package name: libqof1 Upstream version: 0.7.2. Debian version: 1 Example arch: amd64

Current Debian package name: libqof1_0.7.2-1_amd64.deb}}}

{{{Emdebian release: 1 Emdebian arch: arm

Proposed emdebian package name: libqof1_0.7.2-1em1_arm.deb}}}

use svn-buildpackage layout to keep debian diffs as 'upstream' and emdebian diffs as 'debian'.

Status : Likely to need a script to generate diffs from modified files - along the lines of interdiff.

Ideas for collaborative maintenance of emdebian packaging.

  1. Wherever possible, automate the streamlining of package building without patching (that is likely to fail with the next upload).
  2. Where manual changes are needed to debian/* files for emdebian, changes should be possible by any emdebian developer. This may need restrictions on svn write access to only Debian developers.

  3. Each amendment of the svn for a particular package needs to increment the emversion - a simple file that denotes the digit to use to append to the emdebian version identifier ('em') to form the emdebian version, itself appended to the existing Debian version. No other form of emdebian version string is anticipated - NMU's and backports should only affect the Debian version string and emX will be appended to whatever Debian supply. It may be possible to automate the emdebian version increment but this could lead to em1 being followed by em6 if it is based simply on an svn changeset. Just like 'dch', it may be simpler to just leave this as a manual intervention.

  4. Where patches are necessary, the emdebian svn stores the patched file for ease of maintenance.

The prime motivation for this is that emdebian packages should not need dedicated, specific, emdebian maintainers in addition to Debian maintainers.


Main homepage: http://www.linux.codehelp.co.uk/

Debian homepage: http://people.debian.org/~codehelp/


CategoryEmdebian