[Python-modules-team] Bug#700782: python3-cxx-dev: unhandled symlink to directory conversion: /usr/include/python3.2

Sebastian Ramacher sramacher at debian.org
Wed Feb 20 00:37:56 UTC 2013


On 2013-02-20 00:19:31, Andreas Beckmann wrote:
> > python3-cxx-dev installs files to /usr/include/python3.2/CXX and
> > /usr/include/python3.2 is a symlink provided by python3.2-dev. However,
> > no other package has ever shipped files in /usr/include/python3.2mu/CXX.
> > Additionally /usr/include/python3.2 always has been a symlink to
> > python3.2mu [1]. So it's neither an unhandled symlink to directory
> > conversion nor overwriting files owned by other packages.
> 
> Thanks for clarifying the actual situation.
> So it's *just* installing over an existing symlink. Don't do this, it 
> will break in subtle ways. Is there a guarantee that python3.2-dev is 
> unpacked before python3-cxx-dev? (No, see below, I tried it.) What will 
> happen if python3.2-dev decides to point the symlink somewhere else? 
> Just install the files to the real location.
> 
> > Maybe I'm just unable to find the policy section that forbids installing
> > to locations which contain symlinks in the dirname, so could you please
> > clarify why you think this bug warrants severity serious? Or am I just missing
> > something from the bug report?
> 
> So far it is not explicitly forbidden, but considered bad practice. See 
> e.g. http://lists.debian.org/87ehlevcrf.fsf@windlord.stanford.edu

Sure, I wasn't questioning that it's a bad idea. From the original bug report it
just wasn't clear to me why this would be an issue.

> # dpkg --unpack /var/cache/apt/archives/glx-diversions_0.2.2_amd64.deb
                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I guess that should be python3-cxx-dev_6.2.4-2_all.deb, shouldn't it?

> # apt-get -f install
> [...]
> Setting up python3.2-dev (3.2.3-6) ...
> WARNING: non-empty directory on upgrade: /usr/include/python3.2
> total 0
> drwxr-xr-x 3 root root 200 Feb 19 23:05 CXX
> Setting up python3-dev (3.2.3-6) ...
> Setting up python3-cxx-dev (6.2.4-2) ...
> [...]
> 
> # ls -lad /usr/include/python*
> drwxr-xr-x 3 root root   60 Feb 19 23:05 /usr/include/python3.2
> drwxr-xr-x 2 root root   60 Feb 19 23:05 /usr/include/python3.2_d
> drwxr-xr-x 2 root root 1900 Feb 19 23:06 /usr/include/python3.2mu
> 
> Congratulations, now python*-dev* is borked.

Thank you. So that's the bit that was missing from the original bug report. That
makes it a lot clearer.

Could you please check python3-bsddb3, python3-mpi4py, python3-numpy and
python3-pygame? These packages also install stuff to /usr/include/python3.2.

Cheers
-- 
Sebastian Ramacher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/python-modules-team/attachments/20130220/76039b77/attachment.pgp>


More information about the Python-modules-team mailing list