diff options
Diffstat (limited to 'gnu/packages/xorg.scm')
-rw-r--r-- | gnu/packages/xorg.scm | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 0b5f4c9c37..26eabbc302 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -53,6 +53,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system perl) @@ -5524,6 +5525,83 @@ draggable titlebars and borders.") (package (inherit xorg-server)))) +(define-public eglexternalplatform + (package + (name "eglexternalplatform") + (version "1.1") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/NVIDIA/eglexternalplatform") + (commit version))) + (file-name + (git-file-name name version)) + (sha256 + (base32 "0lr5s2xa1zn220ghmbsiwgmx77l156wk54c7hybia0xpr9yr2nhb")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-pkgconfig + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "eglexternalplatform.pc" + (("/usr") + (assoc-ref outputs "out"))))) + (add-after 'install 'revise + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/include/EGL")) + (rename-file + (string-append out "/interface") + (string-append out "/include/EGL")) + (mkdir-p (string-append out "/share/pkgconfig")) + (rename-file + (string-append out "/eglexternalplatform.pc") + (string-append out "/share/pkgconfig/eglexternalplatform.pc")) + (for-each delete-file-recursively + (list + (string-append out "/samples") + (string-append out "/COPYING") + (string-append out "/README.md"))))))))) + (synopsis "EGL External Platform interface") + (description "EGLExternalPlatform is an specification of the EGL External +Platform interface for writing EGL platforms and their interactions with modern +window systems on top of existing low-level EGL platform implementations. This +keeps window system implementation specifics out of EGL drivers by using +application-facing EGL functions.") + (home-page "https://github.com/NVIDIA/eglexternalplatform") + (license license:expat))) + +(define-public egl-wayland + (package + (name "egl-wayland") + (version "1.1.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/NVIDIA/egl-wayland") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0xcx1132zwyp4qps074m72ngjlfmysi1jc2d0lp1ml1r9bllkam6")))) + (build-system meson-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("mesa" ,mesa) + ("wayland" ,wayland))) + (propagated-inputs + `(("eglexternalplatform" ,eglexternalplatform))) + (synopsis "EGLStream-based Wayland external platform") + (description "EGL-Wayland is an implementation of a EGL External Platform +library to add client-side Wayland support to EGL on top of EGLDevice and +EGLStream families of extensions.") + (home-page "https://github.com/NVIDIA/egl-wayland") + (license license:expat))) + (define-public xorg-server-xwayland (package/inherit xorg-server (name "xorg-server-xwayland") |