Merge pull request #285760 from DavHau/add-qemu-python

python3Packages.qemu: init at 0.6.1.0a1
This commit is contained in:
Lassulus 2024-02-05 14:09:04 +07:00 committed by GitHub
commit c3c03f17ee
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 86 additions and 2 deletions

View File

@ -4657,6 +4657,12 @@
githubId = 30475873;
name = "Andrei Hava";
};
devplayer0 = {
email = "dev@nul.ie";
github = "devplayer0";
githubId = 1427254;
name = "Jack O'Sullivan";
};
devusb = {
email = "mhelton@devusb.us";
github = "devusb";

View File

@ -0,0 +1,63 @@
{ lib
, buildPythonPackage
, pythonOlder
, qemu
, setuptools
, fuseSupport ? false, fusepy
, tuiSupport ? false, urwid, urwid-readline, pygments
}:
buildPythonPackage {
pname = "qemu";
version = "0.6.1.0a1";
pyproject = true;
disabled = pythonOlder "3.6";
src = qemu.src;
prePatch = ''
cd python
'';
# ensure the version matches qemu-xxx/python/VERSION
preConfigure = ''
if [ "$version" != "$(cat ./VERSION)" ]; then
echo "The nix package version attribute is not in sync with the QEMU source version" > /dev/stderr
echo "Please update the version attribute in the nix expression of python3Packages.qemu to '$version'" > /dev/stderr
exit 1
fi
'';
buildInputs = [
setuptools
];
propagatedBuildInputs = [ ]
++ lib.optionals fuseSupport [ fusepy ]
++ lib.optionals tuiSupport [ urwid urwid-readline pygments ];
# Project requires avocado-framework for testing, therefore replacing check phase
checkPhase = ''
for bin in $out/bin/*; do
$bin --help
done
'';
pythonImportsCheck = [ "qemu" ];
preFixup =
(lib.optionalString (! tuiSupport) ''
rm $out/bin/qmp-tui
'')
+ (lib.optionalString (! fuseSupport) ''
rm $out/bin/qom-fuse
'');
meta = with lib; {
homepage = "http://www.qemu.org/";
description = "Python tooling used by the QEMU project to build, configure, and test QEMU";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ devplayer0 davhau ];
};
}

View File

@ -34736,6 +34736,13 @@ with pkgs;
inherit (darwin) sigtool;
};
qemu-python-utils = python3Packages.toPythonApplication (
python3Packages.qemu.override {
fuseSupport = true;
tuiSupport = true;
}
);
qemu-utils = qemu.override {
toolsOnly = true;
};

View File

@ -2389,7 +2389,9 @@ self: super: with self; {
cose = callPackage ../development/python-modules/cose { };
cot = callPackage ../development/python-modules/cot { };
cot = callPackage ../development/python-modules/cot {
qemu = pkgs.qemu;
};
cov-core = callPackage ../development/python-modules/cov-core { };
@ -5008,7 +5010,9 @@ self: super: with self; {
guessit = callPackage ../development/python-modules/guessit { };
guestfs = callPackage ../development/python-modules/guestfs { };
guestfs = callPackage ../development/python-modules/guestfs {
qemu = pkgs.qemu;
};
gudhi = callPackage ../development/python-modules/gudhi { };
@ -12284,6 +12288,10 @@ self: super: with self; {
qgrid = callPackage ../development/python-modules/qgrid { };
qemu = callPackage ../development/python-modules/qemu {
qemu = pkgs.qemu;
};
qiling = callPackage ../development/python-modules/qiling { };
qimage2ndarray = callPackage ../development/python-modules/qimage2ndarray { };