We now have a list of derivatives and some information about them. A list of derivatives hiding away in a corner of the wiki is not that useful. Better would be to aggregate the available information about derivatives and present it in Debian infrastructure in a way that makes the derivatives visible to Debian contributors and useful to them. Got an idea about how we can do that? Add it below!

The code being written to help integrate the census into Debian infrastructure is available in git under the deriv-team project:

git clone https://salsa.debian.org/deriv-team/census.git
https://salsa.debian.org/deriv-team/census

The data output by the census code is available here:

http://deriv.debian.net/

The census code's README documents extensively how the codebase works.

Status

Currently the census is only minimally used for integration of derivatives with Debian:

Some information about derivatives has been manually integrated:

Planet Debian derivatives

Aggregates all the developer and main blogs of all derivatives in one location on https://planet.debian.org/deriv/. The derivatives census scripts perform the following steps:

  1. download the census pages (scripts 1 2)

  2. look for items related to blogs (scripts 1 2)

  3. look for a logo (script)

  4. find if there are RSS feeds on those pages (script)

  5. download the logo (script)

  6. generate a planet config snippet (script)

  7. resize the logo into a head (script)

  8. aggregate the planet config snippets and planet heads (scripts 1 2)

  9. download the Planet Debian git repository (script)

  10. compare the new planet config file and heads against the planet config and heads in git, mail the results via cron output (scripts 1 2)

  11. A human should then review the cron mails and when necessary run the review script using cd var ; make review and commit any changes that are valid and useful to Planet Debian git.

Patches

A script running on a machine containing a mirror of Debian snapshot and a database with the metadata updates apt and then runs the compare-source-package-list script once for each derivative.

compare-source-package-list iterates through all the Sources files for a derivative, iterates through all the source packages, downloads source packages when needed, checks if they were ever in Debian and if they were not, applies some heuristics to figure out which Debian source package they were derived from, runs debdiff against the relevant packages and outputs some metadata.

The patches are available via HTTP and shell on lw08. Some metadata about them is available (warning, very large).

The patches are linked from the patches panel of the Debian PTS, but not yet from the package tracker.

Ideas

Packages

Aggregate all the derivative's sources.list snippets and integrate them into the following:

Bugs

Link to the derivatives bug trackers from the PTS so that Debian folks can find potential problems in their packages. This might be hard since it can be rare for derivatives to provide mappings between a bug report and the source package it applies to.

Screenshots

Allow folks to upload screenshots for packages that are only in derivatives. This would rely on some way to differentiate between free and non-free sections in our derivatives, since screenshots.d.n does not accept screenshots for contrib/non-free.

Popcon

Publish stats about dpkg vendors in the data exports.

Add links from the Debian Popularity Contest statistics to the corresponding census pages (discussion)

Import popcon information from derivatives, present on the graphs and link from Debian graphs