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

Re: Goals of debian/copyright



Steve Langasek <vorlon@debian.org> writes:
> On Tue, Mar 24, 2009 at 05:25:28PM -0700, Russ Allbery wrote:

>> I've had that conversation I think five separate times now and each
>> time seem to have convinced people, which is why debian/copyright is
>> what's recommended in devref and similar sources (see devref 6.7.8.2).
>> I can have the conversation again if you haven't seen the previous
>> rounds, but I'd rather not if you're willing to either take my word for
>> it or research the previous conversations.  (Apologies if this sounds
>> snarky; I'm not upset at you.  I'm just kind of tired of repeating
>> myself.  :/)

> Where have these conversations taken place?  I don't recall seeing any
> such discussions before, and don't understand how documenting "any
> necessary repackaging of upstream source" in debian/copyright meshes
> with Policy 4.14.

Two or three times on mentors, at least once here, and I thought at least
once on debian-devel, but maybe I'm misremembering.

My argument is based on:

    In addition, the copyright file must say where the upstream sources
    (if any) were obtained.

from 12.5.  I think one of the purposes of debian/copyright is to document
the provenance of the upstream source, which includes notes about any
repacking that needed to be done.  This is far from clear at the moment,
though, and I'd like to make it clearer in a revision.

I should say that I agree it's not the place for detailed instructions on
exactly how to reproduce that repackaging.  README.source is indeed a
better place for those, if it can't be automated in get-orig-source.  But
it should explain why repackaging was done and what was removed (if
anything).

For example, from debian/copyright for one of my packages:

    The upstream source has been repackaged to remove the
    src/packaging/MacOS and src/platform/DARWIN directories and the files
    src/afs/sysctl.h and src/util/fstab.c.  These directories and files
    are only used for building on MacOS X and contained content covered by
    the Apple Public Source License 2.0.  This license is not considered
    DFSG-free.  Since the repackaging was needed anyway, the WINNT
    directory was also dropped, reducing the size of the upstream tarball
    by 8MB.

    The upstream openafs-src and openafs-doc tarballs have been combined
    into one source tarball.

This differs from the detailed instructions for how to do that, which are
currently documented by way of a get-orig-source target:

VERSION   = 1.4.8
DEBVERS   = 1.4.8.dfsg1
UPSTREAM  = /afs/grand.central.org/software/openafs/$(VERSION)
get-orig-source:
        cp $(UPSTREAM)/openafs-$(VERSION)-src.tar.bz2 .
        tar xjf openafs-$(VERSION)-src.tar.bz2
        rm openafs-$(VERSION)-src.tar.bz2
        cp $(UPSTREAM)/openafs-$(VERSION)-doc.tar.bz2 .
        tar xjf openafs-$(VERSION)-doc.tar.bz2
        rm openafs-$(VERSION)-doc.tar.bz2
        rm -r openafs-$(VERSION)/src/packaging/MacOS
        rm -r openafs-$(VERSION)/src/platform/DARWIN
        rm -r openafs-$(VERSION)/src/WINNT
        rm openafs-$(VERSION)/src/afs/sysctl.h
        rm openafs-$(VERSION)/src/util/fstab.c
        mv openafs-$(VERSION) openafs_$(DEBVERS).orig
        tar cf openafs_$(DEBVERS).orig.tar openafs_$(DEBVERS).orig
        rm -r openafs_$(DEBVERS).orig
        gzip -9 openafs_$(DEBVERS).orig.tar

(which will need to be modified based on the outcome of the
get-orig-source discussion).

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>


Reply to: