diff options
author | Oleg Pykhalov <go.wigust@gmail.com> | 2024-10-05 15:02:00 +0300 |
---|---|---|
committer | Oleg Pykhalov <go.wigust@gmail.com> | 2024-11-01 18:33:21 +0300 |
commit | 94e0028d6f0f60cc390b98866718245ebb197f54 (patch) | |
tree | f1df724a3e211c468bb206ea65feac1cb0b549d5 /gnu/packages | |
parent | 78de845aaaa8d557f08a53ad34629bc566565f96 (diff) | |
download | guix-94e0028d6f0f60cc390b98866718245ebb197f54.tar guix-94e0028d6f0f60cc390b98866718245ebb197f54.tar.gz |
gnu: Add kvmfr-linux-module.
* gnu/packages/patches/kvmfr-linux-module-fix-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/video.scm (kvmfr-linux-module): New variable.
Change-Id: I113c1c8e1f6c9ebd541083b620ea0e098d56d588
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/patches/kvmfr-linux-module-fix-build.patch | 41 | ||||
-rw-r--r-- | gnu/packages/video.scm | 28 |
2 files changed, 69 insertions, 0 deletions
diff --git a/gnu/packages/patches/kvmfr-linux-module-fix-build.patch b/gnu/packages/patches/kvmfr-linux-module-fix-build.patch new file mode 100644 index 0000000000..49c1a713a5 --- /dev/null +++ b/gnu/packages/patches/kvmfr-linux-module-fix-build.patch @@ -0,0 +1,41 @@ +Copied from +https://github.com/gnif/LookingGlass/issues/1075#issuecomment-1546422678 and +https://github.com/gnif/LookingGlass/issues/1134 with adjustments for current +kvmfr source version. + +From c4950a830fbe2ca27337793aa227c86f5c044f46 Mon Sep 17 00:00:00 2001 +From: Oleg Pykhalov <go.wigust@gmail.com> +Date: Sat, 5 Oct 2024 16:11:45 +0300 +Subject: [PATCH] Fix build + +--- + module/kvmfr.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/module/kvmfr.c b/module/kvmfr.c +index 121aae5..4c386f9 100644 +--- a/module/kvmfr.c ++++ b/module/kvmfr.c +@@ -30,6 +30,7 @@ + #include <linux/highmem.h> + #include <linux/memremap.h> + #include <linux/version.h> ++#include <linux/vmalloc.h> + + #include <asm/io.h> + +@@ -539,7 +540,11 @@ static int __init kvmfr_module_init(void) + if (kvmfr->major < 0) + goto out_free; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0) + kvmfr->pClass = class_create(THIS_MODULE, KVMFR_DEV_NAME); ++#else ++ kvmfr->pClass = class_create(KVMFR_DEV_NAME); ++#endif + if (IS_ERR(kvmfr->pClass)) + goto out_unreg; + +-- +2.41.0 + diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 92c0acef3c..ff5dcd8daa 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -104,6 +104,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system go) #:use-module (guix build-system glib-or-gtk) + #:use-module (guix build-system linux-module) #:use-module (guix build-system meson) #:use-module (guix build-system perl) #:use-module (guix build-system pyproject) @@ -4357,6 +4358,33 @@ This may help improve your viewers watching experience, and allows you to use your host privately.") (license license:gpl2+))) +(define-public kvmfr-linux-module + (package + (name "kvmfr-linux-module") + (version "B6") + (source (origin + (method url-fetch) + (uri (string-append "https://looking-glass.io/artifact/" version + "/source")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15d7wwbzfw28yqbz451b6n33ixy50vv8acyzi8gig1mq5a8gzdib")) + (patches (search-patches "kvmfr-linux-module-fix-build.patch")))) + (build-system linux-module-build-system) + (inputs (list bash-minimal)) + (arguments + (list + #:tests? #f ;there are none. + #:source-directory "module")) + (home-page "https://looking-glass.io/") + (synopsis + "Linux Kernel module to interface with Looking Glass") + (description + "This kernel module implements a basic interface to the IVSHMEM device for +Looking Glass.") + (license license:gpl2+))) + (define-public obs-move-transition (package (name "obs-move-transition") |