Hi,
Am Samstag, den 04.07.2009, 22:31 +0200 schrieb Joachim Breitner:
> May I propose a change to the darcs repository layout? I’d suggest we
> actually do have one darcs repository, containing the debian/ files, per
> package. The advantages are:
> * A tool very similar to build-pkg-haskell can be created
> (pkg-haskell-checkout, or an improved debcheckout). Given a package
> name, it would, like your script, fetch the upstream tarball, but not
> only copy the _contents_ of the repository to debian/, but rather put
> the repository at debian/. This way, you have one place where you can
> make and commit changes, but also build the package as usual. This has
> also the advantage that you can use dpkg-buildpackage, debuild, pdebuild
> or whatever you like there, it’s not tied to our tools.
> * The Vcs-Darcs: line is more meaningful than just
> Vcs-Darcs: http://darcs.debian.org/darcs/pkg-haskell/
> This is especially interesting with an improved debcheckout.
>
> I find the first one quite important: Not being able to build from the
> directory you are working on is suboptimal, having the upstream sources
> at the usual place is good to check the .cabal file and in general it’s
> a more common setup.
>
> I know that we are losing the one-repository-advantages, which is
> unfortunate, but the issues written above are more important, IMHO.
>
> Maybe I’ll set it up for a package to better describe what I mean, if
> it’s unclear.
Oh, here is a prototype of what I’d imaging. I modified your script to
pkg-haskell-checkout[0], but I’d imagine this can be merged into
debcheckout if it works out[1].
== Initial Checkin from existing package ==
$ cd ~/debian/official/haskell/haskell-x11-xft-0.3
$ fakeroot debian/rules clean
$ cd debian/
$ darcs init
$ darcs add *
$ darcs rec -a
$ darcs push alioth.debian.org:/darcs/pkg-haskell/haskell-x11-xft
== Getting the sources ==
$ ./pkg-haskell-checkout haskell-x11-xft
Copying patches, to get lazy repository hit ctrl-C...
Finished getting.
haskell-x11-xft: Version (0.3) available on remote site:
http://hackage.haskell.org/packages/archive/X11-xft/0.3/X11-xft-0.3.tar.gz
(local version is 0.3)
haskell-x11-xft: Successfully downloaded updated package
X11-xft-0.3.tar.gz
and symlinked haskell-x11-xft_0.3.orig.tar.gz to it
Successfully checked out haskell-x11-xft in haskell-x11-xft-0.3
$ ls haskell-x11-xft-0.3
debian Graphics Hello.hs LICENSE Setup.lhs X11-xft.cabal
$ ls haskell-x11-xft-0.3/debian/
changelog compat control copyright _darcs rules watch
From now on, we have a fully regular Debian source package tree where
you can use debuild -I, and inside debian/ use the normal darcs
commands. No need for extra tools like dpkg-buildpackage that need to be
learned.
Greetings,
Joachim
[0] I couldn’t push:
darcs: takeLock /srv/darcs.debian.org/darcs/pkg-haskell/_darcs/lock
in /srv/darcs.debian.org/darcs/pkg-haskell:
atomic_create /srv/darcs.debian.org/darcs/pkg-haskell/_darcs/lock
in /srv/darcs.debian.org/darcs/pkg-haskell: permission denied
(Permission denied)
Marco, do you need to run
chmod g+w -R /srv/darcs.debian.org/darcs/pkg-haskell/
on alioth?
Strangely, the repositories that I pushed with "darcs put" have correct
permissions.
[1] http://bugs.debian.org/535767
--
Joachim "nomeata" Breitner
Debian Developer
nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata
Attachment:
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil