Diff for "LaunchpadPpa"

Not logged in - Log In / Register

Differences between revisions 1 and 76 (spanning 75 versions)
Revision 1 as of 2009-11-12 04:16:49
Size: 2554
Editor: maxb
Comment:
Revision 76 as of 2021-08-24 10:34:01
Size: 6245
Editor: cjwatson
Comment: update supported series
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
= launchpad-dependencies = <<TableOfContents>>

= Launchpad-specific packages =

== bzr-lpreview-body ==
This package contains the [[https://launchpad.net/lpreview-body|lpreview_body plugin]] for Bazaar. The packaging can be found in lp:~launchpad/lpreview-body/packaging.

== geoip-data-city-lite ==
This package is a single data file, which upstream publishes updates to monthly. Why haven't we updated it since 2008?
 * Because we are using it only for tests and updating too frequently may actually break some tests (we've seen it happen). It's no big deal if developers don't get the fully up-to-date geoIP DB. Production uses the proprietary geoIP DB instead. — Danilo (2010-01-21)

== launchpad-dependencies ==
Line 9: Line 20:
 1. You will need bzr-builddeb and debhelper packages installed.
 1. Edit debian/control to add or change the dependencies.
 1. Set the DEBEMAIL and DEBFULLNAME environment variables. Your name and email address must match an identity in your GPG key exactly. You may want to put this in your shell rc file so you don't have to set it manually every time.
 1. Run 'debchange -i' in the root to increment the version number and add a changelog entry in the correct format. Remember that launchpad-dependencies should not have an ubuntu1 suffix on its version number, so if debchange -i adds that for you, take it out again and increment the unsuffixed version number instead.
 1. debcommit or bzr commit
Line 13: Line 29:
bzr builddeb --native -- --no-lintian bzr builddeb
Line 15: Line 31:
 1. Actually build your source upload: {{{
bzr builddeb -S --native -- --no-lintian
 1. Since the package has a [[https://code.launchpad.net/~launchpad/+recipe/meta-lp-deps-on-demand|Launchpad build recipe]], you only need to push the branch to Launchpad:{{{
bzr push lp:meta-lp-deps
Line 18: Line 34:
 1. Tag it, push it, upload it: {{{
bzr mark-uploaded
bzr push
dput ppa:launchpad/ppa ../launchpad-dependencies_<whatever>_source.changes
}}}
 
Line 25: Line 35:
= geoip-data-city-lite =
This package is a single data file, which upstream publishes updates to monthly. Why haven't we updated it since 2008?
Line 28: Line 36:
= Rebuilds to restore Python 2.4 support =
Most of the PPA is rebuilds of python library packages to re-instate support for the old Python version Launchpad requires, which has since been dropped as a supported version in Ubuntu.
== launchpad-buildd ==
Line 31: Line 38:
maxb is leading a migration towards using no-source-change rebuilds for this where possible. This is from https://launchpad.net/launchpad-buildd.
Line 33: Line 40:
 * Sourceful changes - in bzr branches
  * python-defaults - https://code.edge.launchpad.net/~maxb/ubuntu/karmic/python-defaults/launchpad-ppa
python-lpbuildd is used by the test suite, so is part of launchpad-developer-dependencies. launchpad-buildd itself runs an actual buildd and is only needed on slaves.
Line 36: Line 42:
 * Sourceful changes - not in bzr branches
  * pysvn - debian/rules required rework to deal with changed Python versions. Should go to branch and should be pushed upstream.
  * python-support:
   * Embedded list of supported python versions is changed.
   * Python version-specific Provides added, so that launchpad-dependencies can enforce a launchpad-modified version.
  * subversion - requires XS-Python-Version amendment. Change to trivial to be worth maintaining in a bzr branch.
[[https://code.launchpad.net/~launchpad/+recipe/launchpad-buildd-daily|The package is built daily or on request by a recipe]]
Line 43: Line 44:
 * Sourceful changes - not rebuilt since jaunty, might be able to be no-source-change on next upload
  * psycopg2
  * pycxx
  * python-imaging
  * python-sqlite
  * tickcount
Line 50: Line 45:
 * No-source-change rebuilds
  * python-apt
  * python-crypto
  * python-geoip
  * python-pysqlite2
== lpsetup ==

?? (probably only used by parallel buildbot slaves, which are probably using the puppet fork anyway)


== mmm-archive-manager ==

??


= Backported or patched Ubuntu packages =

== pocket-lint (precise) ==

pocket-lint is in the Ubuntu primary archive, but the PPA upgrades precise's 0.5.30 to 0.5.31. trusty's version is fine.

You can build trunk on demand using a recipe
https://code.launchpad.net/~sinzui/+recipe/pocket-lint-daily


== postgresql-9.3, postgresql-common, postgresql-debversion, slony1-2 (precise) ==

Straight backports of PostgreSQL 9.3 and paraphernalia from trusty to precise, since LP no longer runs on PostgreSQL 9.1. trusty's version is fine.


== pgbouncer (precise, trusty) ==

Trusty's pgbouncer with wgrant's ENABLE/DISABLE patch as required by full-update.py, and additionally backported to precise. For the benefit of launchpad-dependencies, the patched package additionally Provides pgbouncer-with-disconnect.

The ENABLE/DISABLE patch is included upstream in pgbouncer 1.6, so xenial's version is fine.


== libsodium (precise, trusty) ==

Straight backports of wily's libsodium, for pymacaroons. xenial's version is fine.


== cgit, libgit2, python-pygit2, git (trusty) ==

Backported dependencies of turnip (for git.launchpad.net), not LP itself. turnip doesn't run on precise, so they're not required there.

libgit2 and python-pygit2 sometimes have minor backports from master. Only 0.22 is currently supported, so xenial onwards currently require a forward port of those two.


== git (precise) ==

Cherrypicks of remote symbolic ref features for the LP git codeimport workers. trusty's version is fine.


== convoy ==

[[https://code.launchpad.net/~launchpad/+recipe/launchpad-convoy|Daily builds of lp:convoy with custom packaging]]. The packaging is based on [[https://code.launchpad.net/~landscape/+recipe/convoy-daily-trunk-lds|Landscape's]], but modified to install Launchpad's convoy.wsgi. Ubuntu's modern packaging uses dh-python and supports Python 3, which makes Landscape's packaging preferable while we still support precise.


== debian-archive-keyring (precise) ==

Straight backport for new Debian archive keys for gina's mirror. trusty's version is fine.


== debmirror (precise) ==

Straight backport to allow us to mirror [[https://lists.debian.org/debian-devel-announce/2016/03/msg00006.html|Debian's newly SHA256-only archive]] for gina. trusty's version is fine.


== apt, python-apt (precise, trusty) ==

Trusty's apt with apt-ftparchive source package caching backported, and additionally backported to precise. xenial's version is fine.

python-apt is additionally backported to precise (with Python 3 support dropped and some test fixes) to cope with the new libapt-pkg.


== python-debian (precise, trusty) ==

?? (backports from wily, but why?)


== git-build-recipe ==

[[https://code.launchpad.net/~launchpad/+recipe/git-build-recipe-daily|Daily builds of lp:git-build-recipe]] for buildds.


= Distro series support =


== Stable ==
 * trusty (obsolete production LTS, still used by databases)
 * xenial (current production LTS)
 * bionic (next production LTS)


== In progress ==
 * focal (next, next production LTS?)


When the supported series change, remember to also update [[Getting]] and [[Running]].

This page is documentation for uploaders to the Launchpad PPA.

The Launchpad PPA (https://launchpad.net/~launchpad/+archive/ppa) contains dependencies for running Launchpad.

Launchpad-specific packages

bzr-lpreview-body

This package contains the lpreview_body plugin for Bazaar. The packaging can be found in lp:~launchpad/lpreview-body/packaging.

geoip-data-city-lite

This package is a single data file, which upstream publishes updates to monthly. Why haven't we updated it since 2008?

  • Because we are using it only for tests and updating too frequently may actually break some tests (we've seen it happen). It's no big deal if developers don't get the fully up-to-date geoIP DB. Production uses the proprietary geoIP DB instead. — Danilo (2010-01-21)

launchpad-dependencies

The launchpad-dependencies source is managed in Bazaar branches at https://code.launchpad.net/meta-lp-deps.

Policy/procedure for updates:

  1. You will need bzr-builddeb and debhelper packages installed.
  2. Edit debian/control to add or change the dependencies.
  3. Set the DEBEMAIL and DEBFULLNAME environment variables. Your name and email address must match an identity in your GPG key exactly. You may want to put this in your shell rc file so you don't have to set it manually every time.
  4. Run 'debchange -i' in the root to increment the version number and add a changelog entry in the correct format. Remember that launchpad-dependencies should not have an ubuntu1 suffix on its version number, so if debchange -i adds that for you, take it out again and increment the unsuffixed version number instead.
  5. debcommit or bzr commit
  6. Exercise personal judgment on whether your change merits a merge proposal, or is sufficiently trivial to just be committed directly.
  7. If preparing a merge proposal, please ensure your branch for review contains a complete debian/changelog entry ready for release.
  8. Go to the trunk (or older distro) branch and merge / commit or pull changes ready to build.
  9. Test-build your package:

    bzr builddeb
  10. Since the package has a Launchpad build recipe, you only need to push the branch to Launchpad:

    bzr push lp:meta-lp-deps

launchpad-buildd

This is from https://launchpad.net/launchpad-buildd.

python-lpbuildd is used by the test suite, so is part of launchpad-developer-dependencies. launchpad-buildd itself runs an actual buildd and is only needed on slaves.

The package is built daily or on request by a recipe

lpsetup

?? (probably only used by parallel buildbot slaves, which are probably using the puppet fork anyway)

mmm-archive-manager

??

Backported or patched Ubuntu packages

pocket-lint (precise)

pocket-lint is in the Ubuntu primary archive, but the PPA upgrades precise's 0.5.30 to 0.5.31. trusty's version is fine.

You can build trunk on demand using a recipe https://code.launchpad.net/~sinzui/+recipe/pocket-lint-daily

postgresql-9.3, postgresql-common, postgresql-debversion, slony1-2 (precise)

Straight backports of PostgreSQL 9.3 and paraphernalia from trusty to precise, since LP no longer runs on PostgreSQL 9.1. trusty's version is fine.

pgbouncer (precise, trusty)

Trusty's pgbouncer with wgrant's ENABLE/DISABLE patch as required by full-update.py, and additionally backported to precise. For the benefit of launchpad-dependencies, the patched package additionally Provides pgbouncer-with-disconnect.

The ENABLE/DISABLE patch is included upstream in pgbouncer 1.6, so xenial's version is fine.

libsodium (precise, trusty)

Straight backports of wily's libsodium, for pymacaroons. xenial's version is fine.

cgit, libgit2, python-pygit2, git (trusty)

Backported dependencies of turnip (for git.launchpad.net), not LP itself. turnip doesn't run on precise, so they're not required there.

libgit2 and python-pygit2 sometimes have minor backports from master. Only 0.22 is currently supported, so xenial onwards currently require a forward port of those two.

git (precise)

Cherrypicks of remote symbolic ref features for the LP git codeimport workers. trusty's version is fine.

convoy

Daily builds of lp:convoy with custom packaging. The packaging is based on Landscape's, but modified to install Launchpad's convoy.wsgi. Ubuntu's modern packaging uses dh-python and supports Python 3, which makes Landscape's packaging preferable while we still support precise.

debian-archive-keyring (precise)

Straight backport for new Debian archive keys for gina's mirror. trusty's version is fine.

debmirror (precise)

Straight backport to allow us to mirror Debian's newly SHA256-only archive for gina. trusty's version is fine.

apt, python-apt (precise, trusty)

Trusty's apt with apt-ftparchive source package caching backported, and additionally backported to precise. xenial's version is fine.

python-apt is additionally backported to precise (with Python 3 support dropped and some test fixes) to cope with the new libapt-pkg.

python-debian (precise, trusty)

?? (backports from wily, but why?)

git-build-recipe

Daily builds of lp:git-build-recipe for buildds.

Distro series support

Stable

  • trusty (obsolete production LTS, still used by databases)
  • xenial (current production LTS)
  • bionic (next production LTS)

In progress

  • focal (next, next production LTS?)

When the supported series change, remember to also update Getting and Running.

LaunchpadPpa (last edited 2021-08-24 10:48:34 by cjwatson)