nixpkgs/pkgs/applications/virtualization/virt-manager/qt.nix
2021-01-16 23:49:59 -08:00

53 lines
1.7 KiB
Nix

{ mkDerivation, lib, fetchFromGitHub, fetchpatch, cmake, pkg-config
, qtbase, qtmultimedia, qtsvg, qttools, krdc
, libvncserver, libvirt, pcre, pixman, qtermwidget, spice-gtk, spice-protocol
, libselinux, libsepol, util-linux
}:
mkDerivation rec {
pname = "virt-manager-qt";
version = "0.71.95";
src = fetchFromGitHub {
owner = "F1ash";
repo = "qt-virt-manager";
rev = version;
sha256 = "1s8753bzsjyixpv1c2l9d1xjcn8i47k45qj7pr50prc64ldf5f47";
};
cmakeFlags = [
"-DBUILD_QT_VERSION=5"
"-DQTERMWIDGET_INCLUDE_DIRS=${qtermwidget}/include/qtermwidget5"
];
patches = [
(fetchpatch {
# Maintainer note: Check whether this patch is still needed when a new version is released
name = "krdc-variable-name-changes.patch";
url = "https://github.com/fadenb/qt-virt-manager/commit/4640f5f64534ed7c8a1ecc6851f1c7503988de6d.patch";
sha256 = "1chl58nra1mj96n8jmnjbsyr6vlwkhn38afhwqsbr0bgyg23781v";
})
];
buildInputs = [
qtbase qtmultimedia qtsvg krdc
libvirt libvncserver pcre pixman qtermwidget spice-gtk spice-protocol
libselinux libsepol util-linux
];
nativeBuildInputs = [ cmake pkg-config qttools ];
meta = with lib; {
homepage = "https://f1ash.github.io/qt-virt-manager";
description = "Desktop user interface for managing virtual machines (QT)";
longDescription = ''
The virt-manager application is a desktop user interface for managing
virtual machines through libvirt. It primarily targets KVM VMs, but also
manages Xen and LXC (linux containers).
'';
license = licenses.gpl2;
maintainers = with maintainers; [ peterhoeg ];
inherit (qtbase.meta) platforms;
};
}