On 07/11/06 16:13:53, Julian Gilbey wrote:
On Tue, Nov 07, 2006 at 11:07:18AM +0000, Wookey wrote:Wasn't the whole point of Julian's suggestions that once we had constructed a suitable new source package with the emdebian diff, that the tools wouldn't need to change at all? I like that concept. dpkg-cross already diverts dpkg-buildpackage - doing it again is not an option if you have that installed.
Ah, then again, maybe we should just go with the standard dpkg-source after all, and have other scripts handle the SVN side of things? That opens up a very different way of thinking....This would mean, fleshing it out: - the .dsc files for emdebs would contain just .orig.tar.gz and foo-1.1em2.diff.gz, and the latter would be the merged Debian diff and emdeb patches
Presumably interdiff would be able to separate the two, should the need arise.
- we would have some special tools for maintainers (variants of svn-buildpackage and dpkg-dev tools, presumably) for pulling the emdeb patch out of svn and applying it to a Debian version, and for generating the patch files.
But if we are packaging the emdebian diff's inside the ordinary .diff.gz (superimposed on the debian diffs), we won't need to pull down the patches from svn. Just getting the source (from the correct repository) will do the work - exactly as it does for ordinary Debian packages. Some packages have their debian/ data in a VCS of some kind but by no means all.
The emdebian tools would only need to do the update. The actual changes made by the tools would be put into the next diff.gz.
i.e. change from a pull model to a push model. Get the patches with the source, already applied by dpkg-source. Update the package and push the amended patches back to SVN for safekeeping.
SVN becomes just storage - the patches themselves will live alongside the source in the repository.
Have I missed something here? It sounds like we hardly need SVN.
As I think about it more, I'm beginning to like this approach better: it will mean that anyone can build emdebs using pretty standard tools, and managing the emdeb patches - which is not part of the build process per se - is the only thing which will need customised tools.
Especially as the patch process needs to be done before scripts like debuild and pdebuild start work because we need to patch debian/rules before it stars executing.
So, at which point in this example, does the patch process take place? $ sudo apt-get install emdebian-tools $ apt-get source foo $ cd foo-1.2.3/ $ debuildapt-get source will just get the Debian source and diff.gz so, a modified 'apt-get source' tool in emdebian tools, maybe, that uses the emdebian repository instead of the Debian mirrors to get the package (and hence gets the emdebian diff.gz which dpkg-source applies as normal).
It's not a job for apt-cross --get (that would confuse things awfully) - would we still need a customised emdebian get source routine in emdebian-tools?
All it needs to do is get the source from the emdebian repository instead of the default debian repository in the sources.list.
What about: $ apt-get source foo=1.2.3-1em1 ? Is that too subtle?It appears to work (i.e. apt does take notice of the version string but there aren't any emN packages to test).
-- Neil Williams ============= http://www.data-freedom.org/ http://www.nosoftwarepatents.com/ http://www.linux.codehelp.co.uk/
Description: PGP signature