diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 569e99f52ec7..162f9d1b4c91 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -4643,6 +4643,12 @@ githubId = 6874204; name = "Jason Carr"; }; + j-brn = { + email = "me@bricker.io"; + github = "j-brn"; + githubId = 40566146; + name = "Jonas Braun"; + }; j-keck = { email = "jhyphenkeck@gmail.com"; github = "j-keck"; diff --git a/pkgs/os-specific/linux/kvmfr/default.nix b/pkgs/os-specific/linux/kvmfr/default.nix new file mode 100644 index 000000000000..a7949c85c2ee --- /dev/null +++ b/pkgs/os-specific/linux/kvmfr/default.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchFromGitHub, kernel, kmod, looking-glass-client }: + +stdenv.mkDerivation rec { + pname = "kvmfr"; + version = looking-glass-client.version; + + src = looking-glass-client.src; + sourceRoot = "source/module"; + hardeningDisable = [ "pic" "format" ]; + nativeBuildInputs = kernel.moduleBuildDependencies; + + makeFlags = [ + "KVER=${kernel.modDirVersion}" + "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + installPhase = '' + install -D kvmfr.ko -t "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/misc/" + ''; + + meta = with lib; { + description = "Optional kernel module for LookingGlass"; + longDescription = '' + This kernel module implements a basic interface to the IVSHMEM device for LookingGlass when using LookingGlass in VM->VM mode + Additionally, in VM->host mode, it can be used to generate a shared memory device on the host machine that supports dmabuf + ''; + homepage = "https://github.com/gnif/LookingGlass"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ j-brn ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2e04bc25bb82..f6e95914730e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21017,6 +21017,8 @@ in jool = callPackage ../os-specific/linux/jool { }; + kvmfr = callPackage ../os-specific/linux/kvmfr { }; + mba6x_bl = callPackage ../os-specific/linux/mba6x_bl { }; mwprocapture = callPackage ../os-specific/linux/mwprocapture { };