Python libs on Debian/Raspbian

Gary E. Miller gem at
Tue Dec 19 20:38:37 UTC 2017

Yo Richard!

On Tue, 19 Dec 2017 14:03:07 -0600
Richard Laager <rlaager at> wrote:

> On 12/19/2017 01:50 PM, Gary E. Miller via devel wrote:
> > I'm confused.  To me, if you use --prefix, or DESTDIR, then you are
> > explicitly NOT doing a system install.  A system install MUST go
> > in /usr, per the FHS, and your DESTDIR is preventing that.  So now
> > you are a #3.  
> I, and probably Achim, define system install and user install as
> follows: `./waf configure --prefix=/usr` is a system install.
>   `./waf configure --prefix=/home/...` is a user install.

Yup,  I'm with you.  Except installing into /usr violates the
desires of every distro I know of.  That is for system packages,
not user installed from source.

So, we are back to the original 3 cases:

#1 `./waf configure --prefix=/usr` is a system install.
#2 `./waf configure                into /usr/local/
#3 `./waf configure --prefix=/home/...` is a user install.

> Package build scripts use a system install (`./waf configure
> --prefix=/usr`), not a user install (`./waf configure
> --prefix=/home/...`).

Uh, really?  I've never seen that.  Every one I see is a #3, that is
then copied into a binary package.  Except on Gentoo (source based).

> `./waf install --destdir` is temporarily putting the files somewhere
> else.

Yup, same as #3 above.  Very unlike #1 above.

> If you're going to define "system install" and "user install"
> differently, such that this is a "user install":

I'd rather not have yet another set of definitions.  Plus the words
are overloaded differently by different people.  I'd rathaer stick to
#1, #2, and #3.

>   ./waf configure --prefix=/usr
>   ./waf install --destdir=debian/tmp
> then your terminology is consistent, albeit not something I agree
> with.

Ah, not MY terminology.  From now on, due to the confusion, I'm not
even gone touch that terminology.  I take that as a #3.

> If we set aside terminology, can we agree on the following? (Treat
> "sudo" as an example of running something as root. It doesn't have to
> be literally sudo, of course.)

Dunno why you are adding another complication to a simle problem...

> Default source installs are:
>   ./waf configure
>   sudo ./waf install
> which is equivalent to:
>   ./waf configure --prefix=/usr/local
>   sudo ./waf install

Yup.   That is a #2.

> Source installs to /usr:
>   ./waf configure --prefix=/usr
>   sudo ./waf install
> # These are not FHS compliant, but if someone wants to do this on
> their # own system, that's their call.

Yup, that is a #3.  Installed not in /usr or /usr/local

> Also, maybe source-based
> distros (e.g. # Gentoo) install like this?  I'm not sure if they use
> a temp dir.

Yeah, sort of.  As soon as the build is complete to DESTDIR, Gentoo
copies to /usr.  But that is nothing we do,  nothing we need to change to
support it.  For Gentoo we just do a #3.

> Package builds are:
>   ./waf configure --prefix=/usr
>   ./waf install --destdir=some_tmp_path

Yup, that is a #3.

> Installing to $HOME, which is likely less common with this project
> than other userspace applications:
>   ./waf configure --prefix=$HOME/.local
>   ./waf install

Yup, another #3.

Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
	gem at  Tel:+1 541 382 8588

	    Veritas liberabit vos. -- Quid est veritas?
    "If you can’t measure it, you can’t improve it." - Lord Kelvin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the devel mailing list