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

Re: [PATCH] proposed v3 source format using .git.tar.gz



On Tue, 9 Oct 2007 01:10:00 +1000, Anthony Towns <aj@azure.humbug.org.au> said: 

> On Mon, Oct 08, 2007 at 09:16:52AM -0500, Manoj Srivastava wrote:
>> In any case, I think the kinds of actions taken by joey's and Colin's
>> patches are probably not things that we'll have to do to support
>> shipping an arh working directory in the source packagel if we have
>> {arch} and .arch-id dirs in the source, the end user has access to
>> the distributed version control system;

> Joey's thing lets you do a clean tarball that only contains the git
> (or bzr, or darcs) information, and recreates the working directory by
> a checkout.

        Well, an additional factor is that git/bzr/darcs contains all
 the data required in the .git/.bzr/.darcs directories  to recreate all
 the sources, and do the diffs, etc, which is not the case with arch --
 rch does not follow the model where every checkout is a repo; so the
 checked dirs do not have all the info (you refer to the repo for the
 rest).  Unless you use {arch}/++pristine trees, which I have not used
 in years.

        [Snip bunches of git/bzr/darcs material]

> What's the point of that?

> There may not be any -- if you're just packaging something that's
> completely straightforward, just adding a pointer to the official
> repository is probably the most sensible thing to do anyway; whether
> that be a subversion url or a tla grab file, or something else, and
> you can already do that.

        Right. I am not sure what I package is always trivial, though.

> Where it starts becoming relevant (afaics) is when there's a
> Debian-specific patch history (either due to it being a native
> package, complicated packaging, or significant patches against
> upstream) and we want the archive, as the primary way we distribute
> the source, to include a real change history rather than a simple
> snapshot.

        This seems to fit my use case; I have often large feature
 branches that only sporadically get merged back upstream.

        The question is, how do I do this if I use arch as a version
 control system? I can, or course, start shipping  a cacherev + patches,
 but that can be large; and might not mean much unless I also ship all
 the feature branches and upstream branch at the same time; which can
 blow up badly: see the ps for details.

        If we just look at lenny, and I want to provide people with full
 details of all changes that have been made in various feature branches
 and upstream and debian packaging for lenny (etcvh is somewhat larger),
 I get:
--8<---------------cut here---------------start------------->8---
3.0M    fvwm--autotools--2.5.18/
368K    fvwm--autotools--2.5.21/
88K     fvwm--autotools--2.5.23/
3.0M    fvwm--debian--2.5.18/
356K    fvwm--debian--2.5.21/
5.3M    fvwm--debian--2.5.23/
3.1M    fvwm--devo--2.5.18/
392K    fvwm--devo--2.5.21/
1.7M    fvwm--devo--2.5.23/
3.0M    fvwm--terminal-emulator--2.5.18/
360K    fvwm--terminal-emulator--2.5.21/
1.5M    fvwm--terminal-emulator--2.5.23/
2.9M    fvwm--upstream--2.5.18/
344K    fvwm--upstream--2.5.21/
1.5M    fvwm--upstream--2.5.23/
600K    debian-dir--fvwm--0.1/
27M  total
--8<---------------cut here---------------end--------------->8---

	What I ship currently:
--8<---------------cut here---------------start------------->8---
 132 /usr/local/src/arch/done/fvwm_2.5.23-2.diff.gz
   8 /usr/local/src/arch/done/fvwm_2.5.23-2.dsc
3244 /usr/local/src/arch/done/fvwm_2.5.23.orig.tar.gz
3.3M total.
--8<---------------cut here---------------end--------------->8---

        This is almost an order of magnitude increase in size, which I
 find hard to justify.

        I still think that shipping a full working dir, with no dpkg
 changes, seem to be the way to go, along with a tla grab file, which I
 think I should consider putting into the package itself (If I can work
 around the chicken and egg issue of adding a grab file changes the
 source revision which means the grab file should change which means a
 new revision is needed  ....)


>> I am not sure how the pritine-tar bit fits in into the picture yet.

> I don't think it really does; though it makes it possible to confirm
> that the point in the repo that claims to match some upstream release,
> really does match the official tarball of that release from upstream,
> which might have some use.

> pristine-tar seems mostly useful for generating a v1 source package
> purely from a remote repository; this allows you to turn a repository
> _into_ a (v3) source package.

        Thanks for the clarification.

        manoj
ps: This is from my lenny archive

1.8M    angband--autotools--3.0/
1.8M    angband--debian--3.0/
1.8M    angband--devo--3.0/
1000K   angband-doc--devel--3.0/
1.7M    angband--upstream--3.0/
292K    c2man--configure--2.0/
292K    c2man--devo--2.0/
296K    c2man--manpage-fix--2.0/
248K    c2man--upstream--2.0/
952K    calc--debian--2.0/
956K    calc--devo--2.0/
904K    calc--upstream--2.0/
148K    checkpolicy--devo--1.32/
128K    checkpolicy--devo--1.34/
176K    checkpolicy--devo--2.0.1/
148K    checkpolicy--upstream--1.32/
128K    checkpolicy--upstream--1.34/
176K    checkpolicy--upstream--2.0.1/
216K    cvs-buildpackage--devel--0.2/
116K    debian-dir--angband--1.0/
92K     debian-dir--angband-doc--1.0/
92K     debian-dir--c2man--1.0/
100K    debian-dir--calc--1.0/
236K    debian-dir--checkpolicy--1.0/
148K    debian-dir--cvs-buildpackage--1.0/
88K     debian-dir--devotee--1.0/
160K    debian-dir--dist--1.0/
244K    debian-dir--flex--1.0/
104K    debian-dir--flex-old--1.0/
600K    debian-dir--fvwm--0.1/
128K    debian-dir--gnus-dfsg--1.0/
276K    debian-dir--kernel-package--1.0/
144K    debian-dir--libcgi-perl--1.0/
88K     debian-dir--libgraphics-colordeficiency-perl--1.0/
88K     debian-dir--libgraphics-colornames-perl--1.0/
88K     debian-dir--libgraphics-colorobject-perl--1.0/
148K    debian-dir--liblog-log4perl-perl--1.0/
88K     debian-dir--libmodule-load-perl--1.0/
356K    debian-dir--libselinux--1.0/
436K    debian-dir--libsemanage--1.0/
380K    debian-dir--libsepol--1.0/
496K    debian-dir--mailagent--1.0/
116K    debian-dir--make--1.0/
108K    debian-dir--make-dfsg--1.0/
108K    debian-dir--make-doc-non-dfsg--1.0/
92K     debian-dir--polgen--1.0/
92K     debian-dir--polgen-dfsg--1.0/
92K     debian-dir--polgen-doc-non-dfsg--1.0/
304K    debian-dir--policycoreutils--1.0/
248K    debian-dir--psgml--1.0/
792K    debian-dir--refpolicy--1.0/
96K     debian-dir--selinux-doc--1.0/
184K    debian-dir--sepolgen--1.0/
244K    debian-dir--setools--2.0/
92K     debian-dir--skeleton--1.0/
192K    debian-dir--slat--1.0/
88K     debian-dir--tla-tools--1.0/
116K    debian-dir--tome--1.0/
392K    debian-dir--ucf--2.0/
264K    debian-dir--vm--1.0/
92K     debian-dir--wm-icons--1.0/
976K    debian-policy--devel--3.7/
276K    devotee--devel--0.1/
736K    dist--debian--3.70/
788K    dist--devo--3.70/
640K    dist--upstream--3.70/
1.1M    flex--autotools-refresh--2.5.33/
984K    flex--autotools-refresh--2.5.33.1/
1.1M    flex--debian--2.5.33/
1.1M    flex--debian--2.5.33.1/
1.2M    flex--devo--2.5.33/
992K    flex--devo--2.5.33.1/
1.1M    flex--doc-fix--2.5.33/
1.1M    flex--doc-fix--2.5.33.1/
1.1M    flex--m4-quotes-fix--2.5.33/
1.1M    flex--m4-quotes-fix--2.5.33.1/
1.1M    flex--mem-fix--2.5.33/
1.1M    flex--mem-fix--2.5.33.1/
1.1M    flex--non-asni-fn-fix--2.5.33/
1.1M    flex--non-asni-fn-fix--2.5.33.1/
472K    flex--old-c-fixups--2.5/
436K    flex--old-debian--2.5/
540K    flex--old-devo--2.5/
472K    flex--old-doc-fixes--2.5/
572K    flex--old-i18l-fix--2.5/
1.1M    flex--stream-ptr-fix--2.5/
1.1M    flex--str-fix--2.5/
1.1M    flex--unistd-fix--2.5/
1.1M    flex--upstream--2.5.33/
1.1M    flex--upstream--2.5.33.1/
1.1M    flex--write-fix--2.5/
3.0M    fvwm--autotools--2.5.18/
368K    fvwm--autotools--2.5.21/
88K     fvwm--autotools--2.5.23/
3.0M    fvwm--debian--2.5.18/
356K    fvwm--debian--2.5.21/
5.3M    fvwm--debian--2.5.23/
3.1M    fvwm--devo--2.5.18/
392K    fvwm--devo--2.5.21/
1.7M    fvwm--devo--2.5.23/
3.0M    fvwm--terminal-emulator--2.5.18/
360K    fvwm--terminal-emulator--2.5.21/
1.5M    fvwm--terminal-emulator--2.5.23/
2.9M    fvwm--upstream--2.5.18/
344K    fvwm--upstream--2.5.21/
1.5M    fvwm--upstream--2.5.23/
804K    kernel-package--devel--11.0/
852K    kernel-package--devel--9.0/
212K    libcgi-perl--debian--2.0/
216K    libcgi-perl--devo--2.0/
212K    libcgi-perl--missing-fn--2.0/
212K    libcgi-perl--path-fix--2.0/
212K    libcgi-perl--read-fix--2.0/
164K    libcgi-perl--upstream--2.0/
88K     libgraphics-colordeficiency-perl--devo--0.0/
88K     libgraphics-colordeficiency-perl--upstream--0.0/
104K    libgraphics-colornames-perl--devo--0.0/
104K    libgraphics-colornames-perl--upstream--0.0/
108K    libgraphics-colorobject-perl--devo--0.0/
104K    libgraphics-colorobject-perl--upstream--0.0/
336K    liblog-log4perl-perl--devo--1.07/
140K    liblog-log4perl-perl--devo--1.10/
324K    liblog-log4perl-perl--upstream--1.07/
136K    liblog-log4perl-perl--upstream--1.10/
88K     libmodule-load-perl--upstream--0.0/
292K    libselinux--debian--1.32/
148K    libselinux--debian--1.34/
240K    libselinux--debian--2.0/
352K    libselinux--devo--1.32/
164K    libselinux--devo--1.34/
244K    libselinux--devo--2.0/
288K    libselinux--ia64-fix--1.30/
148K    libselinux--ia64-fix--1.34/
188K    libselinux--ia64-fix--2.0/
288K    libselinux--pkg-config--1.32/
148K    libselinux--pkg-config--1.34/
188K    libselinux--pkg-config--2.0/
288K    libselinux--tls-fix--1.32/
148K    libselinux--tls-fix--1.34/
188K    libselinux--tls-fix--2.0/
236K    libselinux--upstream--1.32/
148K    libselinux--upstream--1.34/
188K    libselinux--upstream--2.0/
184K    libsemanage--debian--1.10/
324K    libsemanage--debian--1.8/
176K    libsemanage--debian--2.0/
188K    libsemanage--devo--1.10/
332K    libsemanage--devo--1.8/
180K    libsemanage--devo--2.0/
132K    libsemanage--upstream--1.10/
272K    libsemanage--upstream--1.8/
176K    libsemanage--upstream--2.0/
348K    libsepol--debian--1.14/
176K    libsepol--debian--1.16/
184K    libsepol--debian--2.0/
364K    libsepol--devo--1.14/
228K    libsepol--devo--1.16/
188K    libsepol--devo--2.0/
344K    libsepol--pkg-config--1.14/
176K    libsepol--pkg-config--1.16/
184K    libsepol--pkg-config--2.0/
292K    libsepol--upstream--1.14/
128K    libsepol--upstream--1.16/
184K    libsepol--upstream--2.0/
712K    mailagent--debian--3.0/
712K    mailagent--devo--3.0/
660K    mailagent--upstream--3.0/
1.8M    make--autotools--3.81/
1.8M    make--conditionals-fix--3.81/
1.8M    make--debian--3.81/
1.8M    make--devo--3.81/
1.5M    make-dfsg--autotools--3.81/
1.5M    make-dfsg--conditionals-fix--3.81/
1.5M    make-dfsg--debian--3.81/
1.5M    make-dfsg--devo--3.81/
1.5M    make-dfsg--i18n--3.81/
1.4M    make-dfsg--upstream--3.81/
1.5M    make-dfsg--varbuf--3.81/
616K    make-doc-non-dfsg--devo--3.81/
572K    make-doc-non-dfsg--upstream--3.81/
1.8M    make--i18n--3.81/
1.7M    make--upstream--3.81/
1.8M    make--varbuf--3.81/
1.3M    polgen--debian--1.3/
1.3M    polgen--devo--1.3/
1.2M    polgen-dfsg--debian--1.3/
1.2M    polgen-dfsg--devo--1.3/
1.1M    polgen-dfsg--upstream--1.3/
264K    polgen-doc-non-dfsg--devo--1.3/
252K    polgen-doc-non-dfsg--upstream--1.3/
1.2M    polgen--upstream--1.3/
416K    policycoreutils--debian--1.32/
576K    policycoreutils--debian--1.34/
196K    policycoreutils--debian--2.0/
428K    policycoreutils--devo--1.32/
576K    policycoreutils--devo--1.34/
248K    policycoreutils--devo--2.0/
356K    policycoreutils--upstream--1.32/
572K    policycoreutils--upstream--1.34/
192K    policycoreutils--upstream--2.0/
440K    psgml--debian--1.0/
444K    psgml--devo--1.3/
392K    psgml--speed-fix--1.0/
344K    psgml--upstream--0.1/
3.7M    refpolicy--debian--0.0/
2.4M    refpolicy--devo--0.0/
1.9M    refpolicy--netuser--0.0/
1.8M    refpolicy--upstream--0.0/
252K    selinux-doc--debian--1.26/
252K    selinux-doc--devo--1.26/
200K    selinux-doc--upstream--1.26/
128K    sepolgen--devo--1.0/
828K    sepolgen--upstream--1.0/
1.6M    setools--debian--2.4/
3.2M    setools--debian--3.1/
944K    setools--debian--3.2/
1.6M    setools--devo--2.4/
3.2M    setools--devo--3.1/
944K    setools--devo--3.2/
1.6M    setools--upstream--2.4/
3.2M    setools--upstream--3.1/
940K    setools--upstream--3.2/
144K    skeleton-make-rules--kernel--1.0/
144K    skeleton-make-rules--main--0.1/
636K    slat--debian--2.0/
640K    slat--devo--2.0/
548K    slat--upstream--2.0/
232K    tla-tools--devo--0/
3.6M    tome--debian--2.3/
3.6M    tome--devo--2.3/
3.6M    tome--docs--2.3/
3.5M    tome--upstream--2.3/
244K    ucf--devel--2.0/
132K    ucf--devel--3.0/
544K    vm--base64-fix--7.1/
548K    vm--debian--7.1/
556K    vm--devo--7.1/
544K    vm--mime-view-fix--7.1/
544K    vm--sexp--0.1/
496K    vm--upstream--0.1/
3.8M    wm-icons--autotools--0.4/
3.8M    wm-icons--debian--0.4/
3.9M    wm-icons--devo--0.4/
3.8M    wm-icons--upstream--0.4/

-- 
I left my WALLET in the BATHROOM!!
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Reply to: