1
0
mirror of https://gitlab.com/libvirt/libvirt-python.git synced 2025-11-29 00:23:46 +03:00
Go to file
Daniel P. Berrangé 545cc70f2f gitlab: switch to using 'pip' for package installation
The distutils/setuptools 'install' command is deprecated in favour of
'pip', and with recent versiosn, using it will create a bad install
that triggers a traceback on all future use of setuptools:

Traceback (most recent call last):
  File "/builds/berrange/libvirt-python/setup.py", line 328, in <module>
    setup(name = 'libvirt-python',
  File "/usr/lib/python3.10/site-packages/setuptools/__init__.py", line 154, in setup
    _install_setup_requires(attrs)
  File "/usr/lib/python3.10/site-packages/setuptools/__init__.py", line 143, in _install_setup_requires
    dist = MinimalDistribution(attrs)
  File "/usr/lib/python3.10/site-packages/setuptools/__init__.py", line 135, in __init__
    super().__init__(filtered)
  File "/usr/lib/python3.10/site-packages/setuptools/dist.py", line 456, in __init__
    for ep in metadata.entry_points(group='distutils.setup_keywords'):
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 1009, in entry_points
    return SelectableGroups.load(eps).select(**params)
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 459, in load
    ordered = sorted(eps, key=by_group)
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 1006, in <genexpr>
    eps = itertools.chain.from_iterable(
  File "/usr/lib64/python3.10/importlib/metadata/_itertools.py", line 16, in unique_everseen
    k = key(element)
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 941, in _normalized_name
    return self._name_from_stem(stem) or super()._normalized_name
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 622, in _normalized_name
    return Prepared.normalize(self.name)
  File "/usr/lib64/python3.10/importlib/metadata/__init__.py", line 871, in normalize
    return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
  File "/usr/lib64/python3.10/re.py", line 209, in sub
    return _compile(pattern, flags).sub(repl, string, count)

This is certainly a bug in distutils/setuptools, but given the
'install' command is deprecated, instead of waiting for a fix,
just switch to the recommend 'pip install .' command.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-03-28 15:44:48 +01:00
2015-05-28 14:50:51 -06:00
2013-11-22 15:58:06 +00:00
2013-11-22 15:58:06 +00:00
2013-11-22 15:58:06 +00:00
2019-07-29 13:39:39 -05:00
2020-08-18 09:48:25 +00:00
2019-12-04 12:14:51 +00:00
2019-12-04 12:14:51 +00:00
2014-06-18 13:19:30 -06:00
2022-02-11 11:20:26 +00:00
2017-09-19 16:11:23 +01:00
2022-03-01 10:16:39 +01:00
2019-12-04 12:14:51 +00:00

Libvirt Python Binding README
=============================

This package provides a python binding to the libvirt.so,
libvirt-qemu.so and libvirt-lxc.so library APIs.

It is written to build against any version of libvirt that
is 0.9.11 or newer.

This code is distributed under the terms of the LGPL version
2 or later.

Requirements
------------

To build the libvirt python binary requires the GCC and pkg-config
tools, and development headers for the libvirt and python libraries.

Building and installing
-----------------------

The module can be built by following the normal python module
build process

  python setup.py build
  sudo python setup.py install

or to install as non-root

  python setup.py build
  python setup.py install --user

If python-pytest is installed, you can test the package with

  python setup.py test

A makefile shim is provided so that you can do

  make && make check

rather than directly invoking setup.py.

As of libvirt 1.2.6, it is possible to develop against an uninstalled
libvirt.git checkout, by setting PKG_CONFIG_PATH and LD_LIBRARY_PATH
environment variables to point into that libvirt tree; you can even
automate this by using libvirt's run script:

  /path/to/libvirt/run python setup.py build

Patches for this code should be submitted as merge requests to the
project page on gitlab. See CONTRIBUTING.rst for more information.
Description
Python language binding for libvirt native C API
Readme 1.8 MiB
Languages
C 64.9%
Python 31%
Dockerfile 2.3%
Shell 1.7%