diff mbox series

[bug#61731] gnu: Add evdi, libevdi.

Message ID 20230223114822.7338-1-db@minikn.xyz
State New
Headers show
Series [bug#61731] gnu: Add evdi, libevdi. | expand

Commit Message

Demis Balbach Feb. 23, 2023, 11:48 a.m. UTC
---
 gnu/packages/linux.scm | 67 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 66 insertions(+), 1 deletion(-)

Comments

Ludovic Courtès March 5, 2023, 9:58 p.m. UTC | #1
Hi,

Demis Balbach <db@minikn.xyz> skribis:

> ---
>  gnu/packages/linux.scm | 67 +++++++++++++++++++++++++++++++++++++++++-
>  1 file changed, 66 insertions(+), 1 deletion(-)

I split it into two different commits, as per our conventions, added a
commit log, and…

> +                              (copy-file "libevdi.so"
> +                                         (string-append lib "/libevdi.so"))))))))

… changed this to an ‘install-file’ call.

Thanks,
Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 9917f5d135..ae1291d5ac 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -68,7 +68,7 @@ 
 ;;; Copyright © 2022 Hunter Jozwiak <hunter.t.joz@gmail.com>
 ;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
 ;;; Copyright © 2022 Stefan <stefan-guix@vodafonemail.de>
-;;; Copyright © 2022 Demis Balbach <db@minikn.xyz>
+;;; Copyright © 2022, 2023 Demis Balbach <db@minikn.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1492,6 +1492,34 @@  (define-public tuxedo-keyboard
 is also needed for the @code{tuxedo-control-center} (short tcc) package.")
     (license license:gpl3+)))
 
+(define-public evdi
+  (package
+    (name "evdi")
+    (version "1.12.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/DisplayLink/evdi")
+                    (commit "bdc258b25df4d00f222fde0e3c5003bf88ef17b5")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1yi7mbyvxm9lsx6i1xbwp2bihwgzhwxkydk1kbngw5a5kw9azpws"))))
+    (build-system linux-module-build-system)
+    (arguments
+     (list #:tests? #f ;no test suite
+           #:phases #~(modify-phases %standard-phases
+                        (add-after 'unpack 'chdir
+                          (lambda _
+                            (chdir "module"))))))
+    (home-page "https://github.com/DisplayLink/evdi")
+    (synopsis "EVDI Linux kernel module")
+    (description
+     "The @acronym{EVDI, Extensible Virtual Display Interface} is a Linux kernel module
+that enables management of multiple screens, allowing user-space programs to
+take control over what happens with the image.")
+    (license license:gpl2)))
+
 (define-public ec
   (package
     (name "ec")
@@ -9659,6 +9687,43 @@  (define-public libtree
 libraries are found or why they cannot be located.")
     (license license:expat)))
 
+(define-public libevdi
+  (package
+    (name "libevdi")
+    (version "1.12.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/DisplayLink/evdi")
+                    (commit "bdc258b25df4d00f222fde0e3c5003bf88ef17b5")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1yi7mbyvxm9lsx6i1xbwp2bihwgzhwxkydk1kbngw5a5kw9azpws"))))
+    (build-system gnu-build-system)
+    (inputs (list libdrm))
+    (arguments
+     (list #:tests? #f ;no test suite
+           #:make-flags #~'("CC=gcc")
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'chdir
+                          (lambda _
+                            (chdir "library")))
+                        (replace 'install
+                          (lambda* _
+                            (let* ((lib (string-append #$output "/lib")))
+                              (mkdir-p lib)
+                              (copy-file "libevdi.so"
+                                         (string-append lib "/libevdi.so"))))))))
+    (home-page "https://github.com/DisplayLink/evdi")
+    (synopsis "User-space EVDI library")
+    (description
+     "Libevdi is a library that gives applications easy access to
+@acronym{EVDI, Extensible Virtual Display Interface} devices on
+various operating systems.")
+    (license license:lgpl2.1)))
+
 (define-public touchegg
   (package
     (name "touchegg")