1{ stdenv, lib, fetchFromGitHub, kernel }:
2
3stdenv.mkDerivation rec {
4 name = "vmm_clock";
5 version = "0.1.0";
6
7 src = fetchFromGitHub {
8 owner = "voutilad";
9 repo = "vmm_clock";
10 rev = "${version}";
11 sha256 = "0hg7ywznh6v11fywsz6f7w298bxph0wwm046zqaqncjvr4aizla4";
12 };
13
14 hardeningDisable = [ "pic" "format" ];
15 nativeBuildInputs = kernel.moduleBuildDependencies;
16
17 extraConfig = ''
18 CONFIG_RTC_HCTOSYS yes
19 '';
20
21 makeFlags = kernel.makeFlags ++ [
22 "DEPMOD=echo"
23 "INSTALL_MOD_PATH=$(out)"
24 "KERNELRELEASE=${kernel.modDirVersion}"
25 "KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
26 ];
27
28 meta = with lib; {
29 broken = kernel.kernelOlder "4.19";
30 description =
31 "Experimental implementation of a kvmclock-derived clocksource for Linux guests under OpenBSD's hypervisor";
32 homepage = "https://github.com/voutilad/vmm_clock";
33 license = licenses.gpl2;
34 maintainers = with maintainers; [ qbit ];
35 platforms = [ "i686-linux" "x86_64-linux" ];
36 };
37
38 enableParallelBuilding = true;
39}