gnu: looking-glass-client: Update to B5.
* gnu/packages/virtualization.scm (looking-glass-client) [version]: Update to B5. [source]: Delete snippet and enable recursive fetch. [inputs]: Add bash-minimal, freetype, gmp, libglvnd, libiberty, libx11, libxcursor, libxfixes, libxi, libxinerama, libxkbcommon, libxpresent, libxrandr, libxscrnsaver, openssl, wayland-protocols, zlib. [phases]: Delete add-missing-include phase and add wrapper phase. [home-page]: Update URL.
This commit is contained in:
parent
7edc70ee27
commit
d997fcd3e7
1 changed files with 83 additions and 59 deletions
|
@ -24,6 +24,7 @@
|
||||||
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
|
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
|
||||||
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
|
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
|
||||||
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
|
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
|
||||||
|
;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -70,6 +71,7 @@
|
||||||
#:use-module (gnu packages fontutils)
|
#:use-module (gnu packages fontutils)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages gl)
|
#:use-module (gnu packages gl)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages gnome)
|
#:use-module (gnu packages gnome)
|
||||||
|
@ -88,6 +90,7 @@
|
||||||
#:use-module (gnu packages libusb)
|
#:use-module (gnu packages libusb)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages m4)
|
#:use-module (gnu packages m4)
|
||||||
|
#:use-module (gnu packages multiprecision)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages nettle)
|
#:use-module (gnu packages nettle)
|
||||||
#:use-module (gnu packages networking)
|
#:use-module (gnu packages networking)
|
||||||
|
@ -1647,70 +1650,91 @@ Machine Protocol.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public looking-glass-client
|
(define-public looking-glass-client
|
||||||
(let ((commit "182c4752d57690da7f99d5e788de9b8baea33895"))
|
(package
|
||||||
(package
|
(name "looking-glass-client")
|
||||||
(name "looking-glass-client")
|
(version "B5")
|
||||||
(version (string-append "a12-" (string-take commit 7)))
|
(source
|
||||||
(source
|
(origin
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference (url "https://github.com/gnif/LookingGlass")
|
(uri (git-reference
|
||||||
(commit commit)))
|
(url "https://github.com/gnif/LookingGlass")
|
||||||
|
(commit version)
|
||||||
|
(recursive? #t)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02bq46ndmzq9cihazzn7xq1x7q5nzm7iw4l9lqzihxcxp9famkhw"))
|
"09mn544x5hg1z31l92ksk7fi7yj9r8xdk0dcl9fk56ivcr452ylm"))))
|
||||||
(modules '((guix build utils)))
|
(build-system cmake-build-system)
|
||||||
(snippet
|
(inputs
|
||||||
'(begin
|
(list bash-minimal
|
||||||
;; Do not create binaries optimized for the CPU of the build machine,
|
fontconfig
|
||||||
;; for reproducibility and compatibility. TODO: in the next version
|
freetype
|
||||||
;; of looking glass, this is exposed as a CMake configure option.
|
glu
|
||||||
(substitute* "client/CMakeLists.txt"
|
gmp
|
||||||
(("-march=native")
|
libglvnd
|
||||||
""))
|
libiberty
|
||||||
#t))))
|
libx11
|
||||||
(build-system cmake-build-system)
|
libxcursor
|
||||||
(inputs `(("fontconfig" ,fontconfig)
|
libxfixes
|
||||||
("glu" ,glu)
|
libxi
|
||||||
("mesa" ,mesa)
|
libxinerama
|
||||||
("openssl" ,openssl)
|
libxkbcommon
|
||||||
("sdl2" ,sdl2)
|
libxpresent
|
||||||
("sdl2-ttf" ,sdl2-ttf)
|
libxrandr
|
||||||
("spice-protocol" ,spice-protocol)
|
libxscrnsaver
|
||||||
("wayland" ,wayland)))
|
mesa
|
||||||
(native-inputs (list libconfig nettle pkg-config))
|
openssl
|
||||||
(arguments
|
sdl2
|
||||||
`(#:tests? #f ;; No tests are available.
|
sdl2-ttf
|
||||||
#:make-flags '("CC=gcc")
|
spice-protocol
|
||||||
#:phases (modify-phases %standard-phases
|
wayland
|
||||||
(add-before 'configure 'chdir-to-client
|
wayland-protocols
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
`(,zlib "static")))
|
||||||
(chdir "client")
|
(native-inputs (list libconfig nettle pkg-config))
|
||||||
#t))
|
(arguments
|
||||||
(add-after 'chdir-to-client 'add-missing-include
|
`(#:tests? #f ;; No tests are available.
|
||||||
(lambda _
|
#:make-flags '("CC=gcc")
|
||||||
;; Mimic upstream commit b9797529893, required since the
|
#:phases (modify-phases %standard-phases
|
||||||
;; update to Mesa 19.2.
|
(add-before 'configure 'chdir-to-client
|
||||||
(substitute* "renderers/egl/shader.h"
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(("#include <stdbool\\.h>")
|
(chdir "client")
|
||||||
"#include <stdbool.h>\n#include <stddef.h>"))
|
#t))
|
||||||
#t))
|
(replace 'install
|
||||||
(replace 'install
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(install-file "looking-glass-client"
|
||||||
(install-file "looking-glass-client"
|
(string-append (assoc-ref outputs "out")
|
||||||
(string-append (assoc-ref outputs "out")
|
"/bin"))
|
||||||
"/bin"))
|
#t))
|
||||||
#t)))))
|
(add-after 'install 'wrapper
|
||||||
(home-page "https://looking-glass.hostfission.com")
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(synopsis "KVM Frame Relay (KVMFR) implementation")
|
(wrap-program
|
||||||
(description "Looking Glass allows the use of a KVM (Kernel-based Virtual
|
(string-append (assoc-ref outputs "out")
|
||||||
|
"/bin/looking-glass-client")
|
||||||
|
`("LD_LIBRARY_PATH" ":" prefix
|
||||||
|
,(map (lambda (name)
|
||||||
|
(let ((input (assoc-ref inputs name)))
|
||||||
|
(string-append input "/lib")))
|
||||||
|
'("gmp"
|
||||||
|
"libxi"
|
||||||
|
"nettle"
|
||||||
|
"mesa"
|
||||||
|
"wayland"
|
||||||
|
"fontconfig-minimal"
|
||||||
|
"freetype"
|
||||||
|
"libx11"
|
||||||
|
"libxfixes"
|
||||||
|
"libxscrnsaver"
|
||||||
|
"libxinerama"))))
|
||||||
|
#t)))))
|
||||||
|
(home-page "https://looking-glass.io/")
|
||||||
|
(synopsis "KVM Frame Relay (KVMFR) implementation")
|
||||||
|
(description "Looking Glass allows the use of a KVM (Kernel-based Virtual
|
||||||
Machine) configured for VGA PCI Pass-through without an attached physical
|
Machine) configured for VGA PCI Pass-through without an attached physical
|
||||||
monitor, keyboard or mouse. It displays the VM's rendered contents on your main
|
monitor, keyboard or mouse. It displays the VM's rendered contents on your
|
||||||
monitor/GPU.")
|
main monitor/GPU.")
|
||||||
;; This package requires SSE instructions.
|
;; This package requires SSE instructions.
|
||||||
(supported-systems '("i686-linux" "x86_64-linux"))
|
(supported-systems '("i686-linux" "x86_64-linux"))
|
||||||
(license license:gpl2+))))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public runc
|
(define-public runc
|
||||||
(package
|
(package
|
||||||
|
|
Reference in a new issue