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

Re: Help with packaging of python executable and its modules



[Olivier Berger, 2014-02-09]
> Piotr Ożarowski <piotr@debian.org> writes:
> 
> > [Andreas Tille, 2014-02-07]
> >> On Fri, Feb 07, 2014 at 02:41:10PM +0100, Julian Taylor wrote:
> >> > I assume this is a python application and not a library?
> >> 
> >> It is an application including some private modules which I like to be
> >> compiled into *.pyc.
> >
> > please install to /usr/share/package-name/ both the library and the
> > scripts, then symlink these scripts to /usr/bin - this way you will not
> > have to patch anything.
> >
> > (use /usr/lib/package-name/ if it contains arch-dep. files)
> 
> What would then be the recommended way to do so ? debian/install, or is
> dh_python* a way to do that ?

good that you ask, I will use this opportunity to dispel a myth:
dh_python* tools (or any other dh_* tool which doesn't have "install" in
its name AFAIK) do not install files.

dh_python* is not supposed to install files

dh_python* handles already installed files

dh_python* tries to move files already installed (f.e. into site-packages
or /usr/local/) to the right location

... there's one tiny feature¹ in dh_python* for installing files
(*.pyinstall files) but since there's no site-packages vs. dist-packages
problem anymore, it shouldn't be needed at all.

Once again, just to make it clear:

dh_python* != dh_install != pybuild
dh_python* doesn't invoke `setup.py install` or `make install` or anything
like that. If you want that, use pybuild (which doesn't replace
dh_python*, BTW)

> May I suggest to update the wiki to reflect such cases, i.e. difference
> between application-specific modules or generic library modules.

https://wiki.debian.org/Python/AppStyleGuide needs some updates indeed
I'll try to squash it into few lines (with
PYBUILD_INSTALL_ARGS=--install-lib=/usr/share/foo --install-scripts=/usr/share/foo)


[¹] which was apparently a big mistake - I will try to fix this by moving
    this functionality to pybuild (which didn't exist when I wrote dh_python2)
-- 
Piotr Ożarowski                         Debian GNU/Linux Developer
www.ozarowski.pl          www.griffith.cc           www.debian.org
GPG Fingerprint: 1D2F A898 58DA AF62 1786 2DF7 AEF6 F1A2 A745 7645


Reply to: