IntroDeveloperDocs

IntroDeveloperDocs

Status

Introduction

A request was made for introductory documentation for developers.

Rationale

To assist starting developers to get up to speed with conventions and procedures etc.

Scope and Use Cases

MOTU Universe Maintainers

Implementation Plan

Data Preservation and Migration

Packages Affected

User Interface Requirements

Outstanding Issues

UDU BOF Agenda

Notes

  • Make the page as short as possible, we want to avoid the length of the Debian New Maintainer's Guide. Once they know the basics with tools like cdbs they can use the DNMG as a more complete reference.
  • A clear scope and mission of the document "This will take you X hours."
  • "Preparing your system for packaging". Installing dev tools and setting up pbuilder. Modify pbuilder to work out of the box with ubuntu instead of having new developers modify their config files. Set up their GPG setup
  • Start with apt-get source, explain each file apt pulls down. We'll make them start with a simple package, like tomboy.
  • Go inside debian/ and explain the files in the directory.
  • After that with something like bazaar-ng to make something distributable, from scratch.
  • Build Package. User builds a binary package and then installs it on their system. "The first step into a new world."


Building a new package from scratch

  • Grab tarball from upstream, unpack. (./configure and make first?)
  • dh_make -e you@blah.com in the top level directory.

  • Clean up debian/
  • Fix up the copyright, rules, and control file.
  • Have examples of these files, but not something they can copy and paste, but something that will show them how the file itself works.
  • dpkg-buildpackage -S -rfakeroot
  • Where does lintian fit in?
  • Run the source package through pbuilder.
  • Install and test the package.
  • Where do I go from here. (Cleaning up your package, building your own apt repository, links to MOTU process and TODO list, getting your key signed, getting someone to review your package, list to policies, etc. etc.)


Other

  • Initially on the wiki until it's fleshed out, then get into the DocTeam so that translators can begin translating.

  • Advanced Document, seperate from this: Updating a package when a new upstream version is available, multiple binaries, lintian, debhelper, advanced cdbs and cdbs2.
  • Advanced Documents could be organized by use case instead of a linear "read this all at once" thing. Developers can then cherry pick what they need in modules instead of one monolithic document.
  • Advanced Documentes should cross reference the existing Debian Documentation.
  • Recommend official policies only, ie. "Stop!! Using!! Backports!!"

UDU Pre-Work

Notes/Comments

  • The documentation should also explain the correct way to build packages for stuff that aren't compilable (php, python, documentation, artwork etc) - MikkoVirkkilä (mvirkkil)

  • The documentation should perhaps devote proper naming conventions, best practices, suggestions, and complex examples either interspersed into the whole documentation as supplementary sections or as an appendix - DeanMichaelCBerris (mikhail^)


CategoryUdu CategorySpec

UbuntuDownUnder/BOFs/IntroDeveloperDocs (last edited 2008-08-06 16:24:51 by localhost)