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

Re: Re: [MoM] Re: bart - tools for computational magnetic resonance imaging



Hi Andreas,

> On Mon, Dec 07, 2015 at 08:18:59AM +0000, Uecker, Martin wrote:
> > > On Sun, Dec 06, 2015 at 11:59:02PM +0000, Uecker, Martin wrote:
> > > > > Put simply, pristine-tar is our way to encapsulate access to the source 
> > > > > tarball used for packaging. Someone who checks out a d-science 
> > > > > repository does not need to know where the tarball comes from (github, 
> > > > > bitbucket, PyPI...), he or she can just check it out using pristine-tar 
> > > > > on the packaging repository.
> > > > 
> > > > Ok, I created a tar ball using a git archive (which matches what
> > > > github does) and then used pristine-tar to check it in.
> > > 
> > > I think this is a misunderstanding.  You should write a debian/watch file
> > > (line 22 of this template
> > >   https://anonscm.debian.org/viewvc/debian-med/trunk/package_template/watch?revision=20511&view=markup
> > > is your friend) and use the downloaded tarball when importing pristine-tar.
> > 
> > Ok, done.
> > 
> > Please note that there is no difference between downloading 
> > tar balls from github which uses 'git archive' to create them
> > or creating them locally using 'git archive' (with the
> > right arguments). This already produces bit-identical results
> > (with the same hash)! So there is really no point in downloading
> > upstream tarballs from Github when one has a local copy of the git
> > repository. 
> 
> I have no doubt that *Github* can create bit-identical results.
> However, I have doubt that you can create from a local clone the
> very same tarball.  

I agree that it is a bit surprising, but it does work:

wget https://github.com/mrirecon/bart/archive/v0.2.09d.tar.gz
git archive --prefix=bart-0.2.09d/ -o bart_0.2.09d.tar.gz v0.2.09d
sha256sum v0.2.09d.tar.gz bart_0.2.09d.tar.gz 
35879d41dcdefedc9fbca40267490d055e3a4840d7731a0f221c6976035dfff0  v0.2.09d.tar.gz
35879d41dcdefedc9fbca40267490d055e3a4840d7731a0f221c6976035dfff0  bart_0.2.09d.tar.gz

> This is the role of the pristine-tar branch
> and currently I can not build bart by the following procedure:
> 
> 
>    ssh://git.debian.org/git/debian-med/bart.git
>    cd bart
>    gbp buildpackage

The following works for me:

git clone ssh://uecker-guest@git.debian.org/git/debian-med/bart.git
cd bart
gbp buildpackage --git-upstream-tag=v0.2.09d --git-pbuilder

Also the following should also work correctly:

git clone ssh://uecker-guest@git.debian.org/git/debian-med/bart.git
cd bart
pristine-tar checkout ../bart_0.2.09.orig.tar.gz
dpkg-buildpackage 


The only issue is that I have to specify the tag with 'gdb'
because it looks for 'upstream/v0.2.09' which does not
currently exist. Instead of adding these tags, I would prefer
to reconfigure 'gdb' to use the existing upstream tags without
the prefix 'upstream/'. Then I could just push the regular
upstream tags. Would this be ok?


I also created a newer upstream tag v0.2.09d specifically
for the initial packaging work because I made some upstream
changes to make packaging easier.  The bart_0.2.09.orig.tar.gz 
which is now in the pristine-tar branch actually corresonds
to v0.2.09d.  I hope that is not too messed up, but with the
next upstream version (to be released soon) this hack would 
gone.


Martin


Reply to: