Richard W.M. Jones
2022-Oct-18 10:13 UTC
[Libguestfs] distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]
On Tue, Oct 18, 2022 at 10:53:12AM +0100, Richard W.M. Jones wrote:> https://github.com/libguestfs/libguestfs/blob/master/m4/guestfs-python.m4Actually some help for how to replace it would be useful too as sysconfig is not an exact replacement for distutils.sysconfig. In particular get_python_lib doesn't exist, and I can't find an exact replacement. Original code: $ python3 -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_lib(1,0));' /usr/lib64/python3.11/site-packages Potential replacement: $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));' /usr/local/lib64/python3.11/site-packages Maybe the original code was wrong, but I guess we don't want to install site packages in /usr/local when running under RPM at least. Note it's used here: https://github.com/libguestfs/libguestfs/blob/master/python/Makefile.am#L50-L54 (We do not -- and cannot -- use ordinary Python install mechanisms.) Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com nbdkit - Flexible, fast NBD server with plugins https://gitlab.com/nbdkit/nbdkit
Richard W.M. Jones
2022-Oct-24 13:14 UTC
[Libguestfs] distutils use in hivex libdnet libnbd (and more) [was: Re: Help needed triaging build failures without distutils]
[Sending 2nd email again since it didn't reach the Python-devel list first time] On Tue, Oct 18, 2022 at 11:13:47AM +0100, Richard W.M. Jones wrote:> On Tue, Oct 18, 2022 at 10:53:12AM +0100, Richard W.M. Jones wrote: > > https://github.com/libguestfs/libguestfs/blob/master/m4/guestfs-python.m4 > > Actually some help for how to replace it would be useful too as > sysconfig is not an exact replacement for distutils.sysconfig. In > particular get_python_lib doesn't exist, and I can't find an exact > replacement. > > Original code: > > $ python3 -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_lib(1,0));' > /usr/lib64/python3.11/site-packages > > Potential replacement: > > $ python3 -c 'import sysconfig; print(sysconfig.get_path("platlib"));' > /usr/local/lib64/python3.11/site-packages > > Maybe the original code was wrong, but I guess we don't want to > install site packages in /usr/local when running under RPM at least. > Note it's used here: > > https://github.com/libguestfs/libguestfs/blob/master/python/Makefile.am#L50-L54 > > (We do not -- and cannot -- use ordinary Python install mechanisms.) > > Rich. > > -- > Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones > Read my programming and virtualization blog: http://rwmj.wordpress.com > nbdkit - Flexible, fast NBD server with plugins > https://gitlab.com/nbdkit/nbdkit-- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-p2v converts physical machines to virtual machines. Boot with a live CD or over the network (PXE) and turn machines into KVM guests. http://libguestfs.org/virt-v2v