Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Debian dpkg (http://www.linux-archive.org/debian-dpkg/)
-   -   Moving debian/* to non-standard location (http://www.linux-archive.org/debian-dpkg/701856-moving-debian-non-standard-location.html)

Kip Warner 09-08-2012 11:51 PM

Moving debian/* to non-standard location
 
Hey list,

This is no doubt going to cause concern with some folks, but I'd like to
know if it is feasible for a package maintainer to use a non-standard
location for the usual debian related packaging files. For instance, the
usual location for the packaging makefile is debian/rules in the root,
but it would be nice if in my project's repository I could use...

Packaging/Debian/rules

--
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com

Guillem Jover 09-09-2012 01:11 AM

Moving debian/* to non-standard location
 
Hi!

On Sat, 2012-09-08 at 16:51:16 -0700, Kip Warner wrote:
> This is no doubt going to cause concern with some folks, but I'd like to
> know if it is feasible for a package maintainer to use a non-standard
> location for the usual debian related packaging files. For instance, the
> usual location for the packaging makefile is debian/rules in the root,
> but it would be nice if in my project's repository I could use...
>
> Packaging/Debian/rules

This is not really supported (or at least not generally tested), and
there's probably a ton of software with the assumption that the
directory and companion files are located in the topdir of the
source tree.

You still might (?) be able to concoct a command-line invokation to
dpkg-buildpackage that passes enough information to the inferior dpkg
tools so that the packaging can be relocated. Stuff like -R for
dpkg-buildpackage; -c, -l, -T, -f for dpkg-genchanges via
--changes-option, etc, etc. I don't think debhelper might be happy
with the new path though.

But then it might be just easier to install the packaging files into
the expected place at source distribution time («make dist» in
autotools parlance) through a “dist hook” for example.

I realize the rpm spec files might seem like being advantageous on
this, but then it's usually not recommended to have packaging on the
upstream tree, and an even “easier” way might be to just stick the
packaging in its own branch on the source repository, which would
then not clutter your normal project tree.

thanks,
guillem


--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 20120909011124.GA23729@gaara.hadrons.org">http://lists.debian.org/20120909011124.GA23729@gaara.hadrons.org

Kip Warner 09-09-2012 05:29 AM

Moving debian/* to non-standard location
 
On Sun, 2012-09-09 at 03:11 +0200, Guillem Jover wrote:
> Hi!

Hey Guillem.

> This is not really supported (or at least not generally tested), and
> there's probably a ton of software with the assumption that the
> directory and companion files are located in the topdir of the
> source tree.

That's what I figured.

> You still might (?) be able to concoct a command-line invokation to
> dpkg-buildpackage that passes enough information to the inferior dpkg
> tools so that the packaging can be relocated. Stuff like -R for
> dpkg-buildpackage; -c, -l, -T, -f for dpkg-genchanges via
> --changes-option, etc, etc. I don't think debhelper might be happy
> with the new path though.
>
> But then it might be just easier to install the packaging files into
> the expected place at source distribution time («make dist» in
> autotools parlance) through a “dist hook” for example.

Yes, I think that could work. The only problem is that I still couldn't
run dpkg-buildpackage from the root on its own.

> I realize the rpm spec files might seem like being advantageous on
> this, but then it's usually not recommended to have packaging on the
> upstream tree,

Yes, I'm familiar with this line of thinking. My project has a few
unique considerations that make maintaining its packages upstream
convenient both for its maintainers and its users though.

> and an even “easier” way might be to just stick the
> packaging in its own branch on the source repository, which would
> then not clutter your normal project tree.

As in in a separate repository? That could work too.

--
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com

Russ Allbery 09-09-2012 05:57 AM

Moving debian/* to non-standard location
 
Kip Warner <kip@thevertigo.com> writes:
> On Sun, 2012-09-09 at 03:11 +0200, Guillem Jover wrote:

>> and an even “easier” way might be to just stick the
>> packaging in its own branch on the source repository, which would
>> then not clutter your normal project tree.

> As in in a separate repository? That could work too.

Generally you can just do it as a separate branch within the same
repository. See, for example:

http://www.eyrie.org/~eagle/notes/debian/git.html#combine

(This still needs some updates for the --upstream-vcs-tag flag.)

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


--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 87zk4zviuc.fsf@windlord.stanford.edu">http://lists.debian.org/87zk4zviuc.fsf@windlord.stanford.edu

Kip Warner 09-09-2012 06:06 AM

Moving debian/* to non-standard location
 
On Sat, 2012-09-08 at 22:57 -0700, Russ Allbery wrote:
> Generally you can just do it as a separate branch within the same
> repository. See, for example:
>
> http://www.eyrie.org/~eagle/notes/debian/git.html#combine
>
> (This still needs some updates for the --upstream-vcs-tag flag.)

Hey Russ. Thanks for the tip. I'll definitely keep that in mind if I
ever decide to migrate to Git. For now though, I'm using Bzr.

--
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com

Russ Allbery 09-09-2012 06:11 AM

Moving debian/* to non-standard location
 
Kip Warner <kip@thevertigo.com> writes:
> On Sat, 2012-09-08 at 22:57 -0700, Russ Allbery wrote:

>> Generally you can just do it as a separate branch within the same
>> repository. See, for example:

>> http://www.eyrie.org/~eagle/notes/debian/git.html#combine

>> (This still needs some updates for the --upstream-vcs-tag flag.)

> Hey Russ. Thanks for the tip. I'll definitely keep that in mind if I
> ever decide to migrate to Git. For now though, I'm using Bzr.

They're similar for this purpose. I think bzr-builddeb even works
essentially the same way, although you may not get pristine-tar and the
--upstream-vcs-tag features. But you can still get the same benefit of
using the same repository and just a different branch.

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


--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 87txv7vi8b.fsf@windlord.stanford.edu">http://lists.debian.org/87txv7vi8b.fsf@windlord.stanford.edu

Kip Warner 09-09-2012 06:12 AM

Moving debian/* to non-standard location
 
On Sat, 2012-09-08 at 23:11 -0700, Russ Allbery wrote:
> They're similar for this purpose. I think bzr-builddeb even works
> essentially the same way, although you may not get pristine-tar and the
> --upstream-vcs-tag features. But you can still get the same benefit of
> using the same repository and just a different branch.

Thanks Russ. I'll look into bzr-builddeb.

--
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com


All times are GMT. The time now is 08:27 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.