python-libdiscid implements Python >= 3.6 bindings for libdiscid using Cython.
- libdiscid
- Cython (>= 0.15, optional)
- pkgconfig (optional)
Note that the tarballs come with pre-built C source for the Cython module. So Cython is only required if one builds python-libdiscid from the git repository or if one wants to change anything in the Cython module.
If pkgconfig is installed, setup.py uses libdiscid's pkg-config information to set include directories, libraries to link, etc.
python-libdiscid is available in some distributions:
- Debian/Ubuntu:
apt-get install python3-libdiscid
(Python 3) - Fedora:
dnf install python3-libdiscid
(Python 3)
python-libdiscid can be installed via pip
:
$ pip install python-libdiscid
or by running:
$ python3 setup.py install
If you just want to try it locally, run:
$ python3 setup.py build_ext -i
and hack right away. You can also run:
$ python3 setup.py build
but please make sure that build/lib.*
is in sys.path
before the source
folder.
It is also avalaible on conda-forge
:
$ conda install python-libdiscid -c conda-forge
or
$ mamba install python-libdiscid -c conda-forge
There are eggs available from PyPI that don't require the extension module to be
built. If these are used, it is still required to drop a working discid.dll in
C:\WINDOWS\system32
(or wherever it can be found).
Installing the package through conda-forge
for Windows 64-Bit will automatically download and install the library.
from libdiscid import read
disc = read("/dev/cdrom")
print("id: {}".format(disc.id))
python-libdiscid is released under the MIT license. Check LICENSE for details.