1{
2 mkDerivation,
3 lib,
4 fetchFromGitHub,
5 cmake,
6 pkg-config,
7 qtbase,
8 qtmultimedia,
9 qtsvg,
10 qttools,
11 krdc,
12 libvncserver,
13 libvirt,
14 pcre,
15 pixman,
16 qtermwidget,
17 spice-gtk,
18 spice-protocol,
19 libselinux,
20 libsepol,
21 util-linux,
22}:
23
24mkDerivation rec {
25 pname = "virt-manager-qt";
26 version = "0.72.99";
27
28 src = fetchFromGitHub {
29 owner = "F1ash";
30 repo = "qt-virt-manager";
31 rev = version;
32 hash = "sha256-1aXlGlK+YPOe2X51xycWvSu8YC9uCywyL6ItiScFA04=";
33 };
34
35 cmakeFlags = [
36 "-DBUILD_QT_VERSION=5"
37 "-DQTERMWIDGET_INCLUDE_DIRS=${qtermwidget}/include/qtermwidget5"
38 ];
39
40 buildInputs = [
41 qtbase
42 qtmultimedia
43 qtsvg
44 krdc
45 libvirt
46 libvncserver
47 pcre
48 pixman
49 qtermwidget
50 spice-gtk
51 spice-protocol
52 libselinux
53 libsepol
54 util-linux
55 ];
56
57 nativeBuildInputs = [
58 cmake
59 pkg-config
60 qttools
61 ];
62
63 meta = with lib; {
64 homepage = "https://f1ash.github.io/qt-virt-manager";
65 description = "Desktop user interface for managing virtual machines (QT)";
66 longDescription = ''
67 The virt-manager application is a desktop user interface for managing
68 virtual machines through libvirt. It primarily targets KVM VMs, but also
69 manages Xen and LXC (linux containers).
70 '';
71 license = licenses.gpl2;
72 maintainers = with maintainers; [ peterhoeg ];
73 inherit (qtbase.meta) platforms;
74 };
75}