[request-tracker-maintainers] packaging of RT extensions

Dominic Hargreaves dom at earth.li
Sat Nov 1 21:09:27 UTC 2014


On Fri, Jan 03, 2014 at 01:22:00AM +0100, Kai Storbeck wrote:
> Hey,

Hi,

Erm, I've had this in my inbox for far too long - I have no idea
whether it's still a relevant issue, but I thought I ought to at least
reply.
 
> On 15/09/13 01:46, Dominic Hargreaves wrote:
> > On Wed, Aug 28, 2013 at 10:33:27PM +0200, Kai Storbeck wrote:
> >> I already wrote up some patches in June, but didn't publish it anywhere.
> >> I've just pushed it to my github repo [1]. I made 2 branches:
> >>  * honour-destdir-variable
> >>  * support-vendorlib
> >>
> >> As I stated earlier, the first (honour-destdir-variable) is already
> >> filed upstream [2].
> > 
> > Yep, that looks sane. Of course from a Debian packaging point of view
> > it'd be much better if the thing never got bundled in inc/, too.
> 
> Ahem. Yes. Have you ever read the BEGIN block in inc/Module/Install.pm?
> It tries its best shot at loading the libs in ./inc anyway, even if it
> might've found a newer version installed globally. Do I understand that
> correctly?

That sounds plausible - after all, that's the version which the module
thinks is best (so the theory might go). Unfortunate for packagers, but
I don't see an easy way round it sadly.

> > This looks very promising. The only complication is where we have
> > packages that are designed to build multiple binary packages for 
> > multiple major releases of RT, but that can be fixed by running as much
> > of the build as necessary multiple times (and we don't actually have
> > multiple supported versions of RT at the moment and I'm hoping to keep
> > RT 4.2 in request-tracker4).
> > 
> > Have you proven this patch by modifying a currently-packaged extension
> > to use it? I guess that would be the next step if not.
> 
> I have recently rebuilt rt-extension-jsgantt in jessie. That worked
> reasonably well using a stripped version of debian/rules. I pasted it on
> refheap: [1], and the diff against the current version: [2].
> 
> I did have to fix a few things, instructing makemaker about VENDOR man
> locations.
> 
> Man pages go into /usr/share/man, _always_ right? Do you know why
> rt-extension-jsgantt's debian/rules is moving it to /usr/share/man/auto?
> 
> The latest diff for Module::Install::RTx compared to upstream's 0.31
> version is now at [3].
> 
> >> What is missing is doing something useful with other valid values of
> >> INSTALLDIRS [3]. Valid settings are perl, site and vendor. I could let
> >> 'site' install to RT::LocalPluginPath, which is more or less the current
> >> behaviour if one doesn't supply an INSTALLDIRS argument.
> > 
> > Sounds reasonable.
> 
> I'm a bit uncertain if this work is needed. I would need to add a test
> to the
> 
> > elsif ($RT::LocalPluginPath)
> 
> That code currently does what 'site' would do, and this code would only
> _not_ execute when installing against an RT that doesn't have
> LocalPluginPath.
> 
> Perhaps you would have some idea on how to refactor this?

Sorry, I'm not certain what you're asking here, but it's been a while
since I've looked at the code.

Dominic.



More information about the pkg-request-tracker-maintainers mailing list