[Ubuntu] Packaging work flow policy

Sebastiaan Couwenberg sebastic at xs4all.nl
Tue Jan 7 14:56:30 PST 2014


On 01/07/2014 09:09 PM, Ivan Minčík wrote:
> Dear UbuntuGIS devs,
> If I understand things correctly, there are few important rules in
> packaging work flow which I did not found anywhere in UbuntuGIS wiki.

Please note that there are very few "rules", the proposed Debian GIS
Policy documents best practices mostly. The Policy section documenting
the content of the debian/ directory is the only part you can consider
hard rules.

As can be seen from the development of the policy document, it's
composed of several other team policies and guides in Debian. The Debian
GIS Policy will document how things /should/ be done within the Debian
GIS team, not so much how they /must/ be done. Because there is always
room for change and improvement.

Linking to the Debian GIS Policy after it's accepted is a good idea, I
consider it a bit early to link to the draft I currently host (note the
/tmp/ path in the URL).

The Packaging walkthrough I'm currently working on will be very useful
to UbuntuGIS and is a good candidate to adopt in the UbuntuGIS wiki,
like the walkthrough itself was adopted from the Debian Perl Git Guide.

There is many good documentation spread over different websites and
wikis, the policy tries to document a best practices workflow combining
the bits from the various sources.

What part the proposed Debian GIS Policy will play for UbuntuGIS is
still undecided. I hope it will help UbuntuGIS users and developers in
collaborating with the Debian GIS team by documenting our procedure and
best practices.

> 1. All UbuntuGIS packaging work should be done in Debian's Alioth Git
> repositories at git.debian.org by members of pgk-grass group [1]

While not a hard rule, it's how Debian and it's derivatives can most
easily collaborate on the packaging. Sharing changes between our
packages is currently not very optimal, having to obtain the source
packages and extract changes from it manually.

The pkg-grass group on Alioth is used to allow access to the git and svn
repositories that Alioth hosts together with the mailing list for
Maintainer email adress, bug reports, commit logs, etc.

> 2. UbuntuGIS packaging in git.debian.org repository should be done in
> dedicated branches [3] and with correct versioning policy [2]

The dedicated branches recommendation and the workflow it implies is not
fully worked out yet. This is very far from a hard-rule currently.

There is no recommended workflow for the shared packaging effort between
Debian GIS and UbuntuGIS yet. The Debian GIS Policy is an attempt to
document this based on the best practices of other teams.

The idea behind the dedicated branches is that we have the common debian
source package development based on new upstream releases in the master
branch. And distribution specific changes in their respective tracking
branches of master. The dedicated branches primarily serve to track the
changes not intended to be included in the package that gets uploaded to
Debian, changes intended for Debian should live in the master branch.

> 3. Packaging of new version should always start in Debian unstable, then it
> could be adjusted in Ubuntu branch and than package in UbuntuGIS PPA could
> be build. This also means that UbuntuGIS could not build any package which
> does not exists in Debian unstable or at least in experimental

Ideally the life of packages starts in Debian unstable from which they
propagate to Ubuntu and the other derivative distributions. In practice
this is not always the case.

A good example is TinyOWS which is available in the UbuntuGIS PPA for
quite some time now, but was only recently uploaded to Debian. It
unfortunately got rejected by the ftp-masters on licensing conflicts
between the OGC Document Notice and the DFSG, so it will not appear in
Debian until a solution is found to the licensing issue. But this has
not prevented the package from being available in UbuntuGIS.

What we mostly need to agree upon between UbuntuGIS and Debian GIS is
how to best share the debian/changelog in the master branch, and
possible debian/control deviations.

> For me, these steps looks very reasonable and could bring very good final
> result. If all these steps are true, could they be written in UbuntuGIS
> wiki as official policy ?

It's still very early to look at whats documented in the proposed Debian
GIS Policy as anything that can be considered ready for the general public.

I'll leave it to the proposed PSC to label things as official within
UbuntuGIS :-)

Ubuntu has forked the Debian Policy to include its own specific changes,
UbuntuGIS can do the same with the proposed Debian GIS Policy.

> 1 - https://alioth.debian.org/account/register.php
> 2 - http://linuxminded.nl/tmp/pkg-grass-website/policy.html#ubuntugis-ppa
> 3 - http://linuxminded.nl/tmp/pkg-grass-website/policy.html#git-branches

I'm very curious about your experiences bridging the cap between Debian
GIS and UbuntuGIS, and how the proposed Debian GIS Policy can be
improved to help you in this process.

Your feedback has been very valuable so far to know what practices need
to be documented more clearly.

Kind Regards,

Bas

-- 
GnuPG: 0xE88D4AF1 (new) / 0x77A975AD (old)


More information about the Ubuntu mailing list