1{
2 lib,
3 pkgs,
4 stdenv,
5 buildPythonPackage,
6 fetchFromGitLab,
7 setuptools,
8 cryptography,
9 pytestCheckHook,
10 pefile,
11}:
12
13buildPythonPackage rec {
14 pname = "virt-firmware";
15 version = "25.7.3";
16 pyproject = true;
17
18 src = fetchFromGitLab {
19 owner = "kraxel";
20 repo = "virt-firmware";
21 rev = "refs/tags/v${version}";
22 hash = "sha256-kuFTKMhBVlgCBYLTO23IUz/tRLoMRHxjWPIaauu/PWw=";
23 };
24
25 build-system = [ setuptools ];
26
27 dependencies = [
28 setuptools
29 cryptography
30 pefile
31 ];
32
33 # tests require systemd-detect-virt
34 doCheck = lib.meta.availableOn stdenv.hostPlatform pkgs.systemd;
35
36 nativeCheckInputs = [
37 pytestCheckHook
38 pkgs.systemd
39 ];
40
41 enabledTestPaths = [ "tests/tests.py" ];
42
43 pythonImportsCheck = [ "virt.firmware.efi" ];
44
45 meta = with lib; {
46 description = "Tools for virtual machine firmware volumes";
47 homepage = "https://gitlab.com/kraxel/virt-firmware";
48 license = licenses.gpl2;
49 maintainers = with maintainers; [
50 raitobezarius
51 ];
52 };
53}