[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 1.2 source archive and packaging issues



> I also think that's important.  The source packages should be very
> simple, and the source unpacker/packer should be written in a scripting
> language.
tar xzf source-version.tar.gz
mv source.version source.version.orig
tar xzf source-version.tar.gz
cd source.version
zcat ../diff-version-revision.diff.gz | patch

the above lines aren't very difficult but we need to continue with
a few checks IMHO:

"dpkg --status various packages needed for building this package should be
installed ok"

> >From what I've gathered, the rpm format for sources is basically lines
> of text giving control information, followed by a cpio of all the
> gzipped tars.  The control field gives commands to do things like
> unpack, build, etc.

> Because we already mandate commands for debian.rules, such complexity
> is not needed.  This program (dsource?) would know that it just needs
> to run "debian.rules build" to build, "debian.rules dist" for a
> distribution, etc.  The only information in the control field is how to
> unpack.
Not only how to unpack, but also a possibility to download the original
sources (so an URL to the original sources at the original site should be
provided). 

The copyright field which comes with rpm might be usefull too, in the 
debian source handling approach. We might construct a automatic
/usr/doc/copyright/package file by using this copyright field, the
maintainer information, the url to the original sources, the organization
where the package comes from, the package name the revision name, the
changes made for this revision from debian.Changelog and the contents of
debian.README (which would contain other info than it does right now, only
the copyright info from the original sources).

All this can be translated into some machine created sentences like:

---/usr/doc/copyright/package
This is the Debian Linux prepackaged version of the <organization> <package>
distribution.  This package <package>-<version>-<revision> was put together
by <maintainer>, from the <organization> sources, which were obtained from
<source-url>. The changes for revision <revision> are listed below:

<revision changes>

The debian specific changes are copyrighted by <maintainer> and put under
the <gpl>  (see /usr/doc/copyright/GPL).

The original sources from <organization/author> are put under the
<copyright> license.

contents debian.README
---/usr/doc/copyright/package

Additionally we need the possibility to use more than one source (tar.gz)
file. Example is web2c and kpathsea and those big things. So we need more
than one source field and related debian diff field which specify the
patches to be applied at the original sources.


"Unix: 30 definitions of regular expressions living under one roof"
                                                                D.E. Knuth
Erick Branderhorst  http://www.iaehv.nl/users/branderh/


Reply to: