Differences between revisions 45 and 46
Revision 45 as of 2007-03-22 19:42:32
Size: 6523
Editor: NeilWilliams
Comment: migrate Wookey's SoC ToDo list - allow the SoC list to be optimised for SoC
Revision 46 as of 2007-03-27 01:40:25
Size: 5853
Editor: wookey
Comment: Add Rootfs link, update for current status somewhat
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:
Emdebian is experimenting with different approaches to cross-building and small-system-friendly packages in order to produce sustainable and robust long-term solutions. For cross-building there are two main approaches: ["Scratchbox"], which allows cross-builds to appear to be native to the apps being built, and dpkg-cross which allows conventional cross-builds to occur in a Debian-compatible way. EmdebianSlind is a distribution built using dpkg-cross, and STAGE is built using scratchbox. (See a [:Emdebian_Nokia:working Emdebian build environment].) Emdebian is experimenting with different approaches to cross-building and small-system-friendly packages in order to produce sustainable and robust long-term solutions. For cross-building there are two main approaches: ["Scratchbox"], which allows cross-builds to appear to be native to the apps being built, and dpkg-cross which allows conventional cross-builds to occur in a Debian-compatible way. EmdebianSlind is a distribution built using dpkg-cross, and now we have emdebian-tools to build modified debian packages.
Line 45: Line 45:
Line 58: Line 57:
    * Busybox-based rootfs as well as GNU-based     * Busybox-based rootfs as well as GNU-based EmdebianRootfs
Line 63: Line 62:
   * Make it easy to build and cross-build emdebian packages and support local patches
Line 74: Line 72:
 * http://lists.debian.org/debian-embedded/2005/11/msg00014.html
   Current state of affairs.
 * bring Ed's framework up to date with Etch.
Line 83: Line 78:
Set-up a buildd inside [:Scratchbox:scratchbox] (which should be possible as I heard
that it has already been done) to start building more packages. (This
will hopefully be possible when the emdebian server is back up). (Once I
find out how to silence my proliant server I might hook it up to my
internet line and provide a secondary build env)
Set-up a buildd inside [:Scratchbox:scratchbox]
Line 101: Line 92:

Well I hope I can open a fruitfull discussion with this and hope to see
some more people starting to work on this.

Adapted Debian tools so you can build/cross-compile [:Debian packages] or adapted packages with info on how to cross-build and build smaller packages.

Emdebian is experimenting with different approaches to cross-building and small-system-friendly packages in order to produce sustainable and robust long-term solutions. For cross-building there are two main approaches: ["Scratchbox"], which allows cross-builds to appear to be native to the apps being built, and dpkg-cross which allows conventional cross-builds to occur in a Debian-compatible way. EmdebianSlind is a distribution built using dpkg-cross, and now we have emdebian-tools to build modified debian packages.

For package meta-data making packages more suitable for shrinking, two approaches are currently being investigated. The STAG approach uses a $(DEBIAN_DIR) directory to overlay changed info from the /debian directory, and is used by STAGE. The udeb approach of Debian-installer gives a tighter integration with Debian, with embedded packages having changed names so they can exist in the debian package namespace. Both mechanisms have pros and cons which are discussed in EmdebianMetaData.

Project Website

http://www.emdebian.org/

August 17th 2006: The server has moved to a new machine in Europe instead of the US.

Wiki SiteMap

[:EmdebianWebLayout:Emdebian Web Layout]

Frequently Asked Questions (FAQ)

["EmbeddedDebianFAQ"]

Wiki pages in continuous devel

["CategoryEmdebian"]

Hardware

Cross Toolchains

Emdebian builds [:EmdebianToolchain:cross-toolchains] for use on standard Debian development machines. [http://www.emdebian.org/crosstools.html Repository details]. [:EtchCrossToolchains:Toolchains for Etch].

Documentation

EmdebianPackagingGuidelines is a document explaining to package maintainers the sorts of things they should be aware of in their packaging to make their packages 'Embedded-friendly'. This includes cross-building and small-system-building.

[:Embedded_Debian_packaging_infrastructure:Embedded Debian Packaging Infrastructure] explains how the Emdebian repositories are organised, where the repositories are located and how to setup your system for emdebian uploads.

[:Embedded_Debian_packaging_rules:Emdebian packaging rules] details how emdebian packages should be built and organised.

TODO

Things that need doing are:

  • Emdebianising more packages so that they
    1. do not install unnecessary things (docs, examples, multiple translations)
    2. cross-build correctly
    3. split packages where the default has too many dependencies
  • Work on Emdebian policy and actual packages to:
    • Speed up boot time
    • Reduce dependencies
    • Differentiate between install time and run-time dependencies
    • Differentiate between build and target build-dependencies
    • Shrink minimum rootfs sizes
      • Busybox-based rootfs as well as GNU-based EmdebianRootfs

      • Dash instead of bash
      • Remove perl from essential
  • Work on Debian and emdebian tools to:
    • Support changes due to above policy
    • Push changes back into Debian as much as possible (e.g faster boot)
  • Infrastructure Work:
    • Completing auto-build mechansism that will keep emdebian cross-toolchains uptodate with debian toolchain versions
    • Incorporate full 3-stage bootstrap changes from slind
    • Auto-build emdebian packages, tracking debian versions and including support for developers to track packages which have build failures
  • Document:
    • Making Emdebian systems
    • Emdebianising new packages
    • The infrastructure
    • Developed Policy
  • create configurations for various devices and document howto do it
  • promote DEB_BUILD_OPTIONS=nodocs flag for not building docs
  • promote DEB_BUILD_OPTIONS=notest for skipping tests
  • co-operate with i386-uclibc team and embedded arch porters
  • Kill scratchbox in its current form and make a better scratchbox2

Set-up a buildd inside [:Scratchbox:scratchbox]

Document setting up the buildd so ["people"]/ ["dev"]s can try it out for themselves.

Integrate ["uclibc"] in the story. This will definitely give some size boost toward smaller footprint to the packages.

Once we have proven that this works start pushing things into Debian proper.

Optional :

  • Make sure everything works with the successors of scratchbox
  • Check the ARM build of Ubuntu

See also: EmDebian/DeBootstrap and EmDebian/CrossDebootstrap .

Wacky Ideas

There are also a few ideas that may need to be investigated further to decide whether it is a good idea to make them a new TODO item. These are collected on the EmdebianWackyIdeas page.

Donations / Donors

[:EmdebianDonations:Emdebian Donations and Donors]

Meetings, Conferences, Work Sessions

2006

May 14th - May 21st, in Mexico. DebConf6EmdebianStuff

April 12-16th, in Extremadura, Spain. DebianEmbeddedWorkSessionExtremadura2006

February 25&26th, in Brussels, Belgium. [http://wiki.debian.org/EmDebian/Fosdem2006 Fosdem2006]

October 25&26th, in London, UK. [http://www.linuxworldexpo.co.uk/ London Linux World Expo]

2007

February 24&25th, in Brussels, Belgium. [http://www.fosdem.org Fosdem2007]

June 17-23rd, in Edinburgh, Scotland. [https://debconf7.debconf.org/wiki/Main_Page DebConf7]


CategoryEmdebian