This commit is contained in:
Daniel Ziltener 2024-03-20 23:36:25 +01:00
parent 8e671b1bd7
commit 80d5df333b
Signed by: zilti
GPG key ID: B38976E82C9DAE42

View file

@ -54,7 +54,7 @@
#:use-module (gnu packages wm)
#:use-module (gnu packages xorg))
(define-public libdrm ;; SENT to Guix
(define-public libdrm-2.4.120 ;; SENT to Guix
(package
(name "libdrm")
(version "2.4.120")
@ -145,7 +145,7 @@ and Matrox.")
(build-system meson-build-system)
(propagated-inputs
;; The following are in the Requires.private field of gl.pc.
(list libdrm
(list libdrm-2.4.120
libvdpau
libx11
libxdamage
@ -162,7 +162,7 @@ and Matrox.")
libxvmc
llvm-for-mesa
wayland
wayland-protocols
wayland-protocols-1.33
`(,zstd "lib")))
(native-inputs
(cons* bison
@ -178,7 +178,7 @@ and Matrox.")
(list cmake-minimal-cross
pkg-config-for-build
wayland
wayland-protocols)
wayland-protocols-1.33)
'())))
(outputs '("out" "bin"))
(arguments
@ -429,7 +429,7 @@ from software emulation to complete hardware acceleration for modern GPUs.")
(assoc-ref outputs "out")
"/include")))))))))
(define-public glu ;; SENT to Guix
(define-public glu-9.0.3 ;; SENT to Guix
(package
(name "glu")
(version "9.0.3")
@ -506,7 +506,7 @@ as ASCII text.")
`(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap
,@(if (target-hurd?)
'()
`(("drm" ,libdrm)))
`(("drm" ,libdrm-2.4.120)))
("ghostscript" ,ghostscript)
("libspectre" ,libspectre)
,@(if (target-hurd?)
@ -596,7 +596,7 @@ corners, shadows, inactive window dimming, etc.")
(description "Header-only TOML config file parser and serializer for C++17.")
(license license:expat)))
(define-public hwdata ;; SENT to Guix
(define-public hwdata-0.380 ;; SENT to Guix
(package
(name "hwdata")
(version "0.380") ;updated monthly
@ -667,7 +667,7 @@ Each database is contained in a specific package output, such as the
(list pkg-config-for-build)
'())))
(inputs
(append (list cairo
(append (list cairo-1.18.0
glib
gtk+
libevdev
@ -686,54 +686,7 @@ Each database is contained in a specific package output, such as the
other applications that need to directly deal with input devices.")
(license license:x11)))
(define-public libdrm-2.4.120 ;; SENT to Guix
(package
(name "libdrm")
(version "2.4.120")
(source (origin
(method url-fetch)
(uri (string-append
"https://dri.freedesktop.org/libdrm/libdrm-"
version ".tar.xz"))
(sha256
(base32
"0yijzgg6rdsa68bz03sw0lcfa2nclv9m3as1cja50wkcyxim7x9v"))))
(build-system meson-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
;; A typo in a previous upstream commit disabled building
;; libdrm_intel by default on supported platforms. This was
;; fixed by the following change in upstream commit
;; 8a933c778a0eb36526bf3fc8a289e25add9ff8b0.
;; TODO: Remove on next update of libdrm.
(add-after 'unpack 'build-intel-by-default
(lambda _
(substitute* "meson.build"
(("system\\(\\)\\.startswith")
"cpu_family().startswith"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "meson" "test" "--timeout-multiplier" "5")))))))
(propagated-inputs
(list libpciaccess))
(native-inputs
(list pkg-config))
(home-page "https://dri.freedesktop.org/wiki/")
(synopsis "Direct rendering userspace library")
(description "The Direct Rendering Infrastructure, also known as the DRI,
is a framework for allowing direct access to graphics hardware under the
X Window System in a safe and efficient manner. It includes changes to the
X server, to several client libraries, and to the kernel (DRM, Direct
Rendering Manager). The most important use for the DRI is to create fast
OpenGL implementations providing hardware acceleration for Mesa.
Several 3D accelerated drivers have been written to the DRI specification,
including drivers for chipsets produced by 3DFX, AMD (formerly ATI), Intel
and Matrox.")
(license license:x11)))
(define-public libliftoff
(define-public libliftoff-0.4.1
(package
(name "libliftoff")
(version "0.4.1")
@ -758,7 +711,7 @@ way. Users create \"virtual planes\" called layers, set KMS properties on them,
and libliftoff will pick hardware planes for these layers if possible.")
(license license:expat)))
(define-public wayland-protocols ;; SENT to Guix
(define-public wayland-protocols-1.33 ;; SENT to Guix
(package
(name "wayland-protocols")
(version "1.33")
@ -789,84 +742,6 @@ protocol either in Wayland core, or some other protocol in wayland-protocols.")
. "https://wayland.freedesktop.org/releases.html")))
(license license:expat)))
(define-public wlroots-0.17.2
(package
(name "wlroots")
(version "0.17.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/wlroots/wlroots")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0y6rrl17as5wb27v66xfgdp0pfwvikqacdlhfc8ib74m9k56mzrr"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
'("-Dauto_features=enabled")
#:phases
(modify-phases
%standard-phases
(add-before 'configure 'hardcode-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "xwayland/server.c"
(("Xwayland") (string-append (assoc-ref inputs
"xorg-server-xwayland")
"/bin/Xwayland")))
#t))
(add-before 'configure 'fix-meson-file
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "backend/drm/meson.build"
(("/usr/share/hwdata/pnp.ids")
(string-append (assoc-ref (or native-inputs inputs) "hwdata")
"/share/hwdata/pnp.ids"))))))))
(propagated-inputs
(list ;; As required by wlroots.pc.
eudev
ffmpeg-4
glslang
libxkbcommon
mesa-24
pixman
libcap
libdisplay-info
libinput-1.25
libliftoff
libpng
libseat
libxkbcommon
mesa
vulkan-loader
wayland
wayland-protocols
xcb-util-errors
xcb-util-renderutil
xcb-util-wm
xorg-server-xwayland))
(inputs
(list libdrm-2.4.120))
(native-inputs
(cons*
`(,hwdata "pnp")
cmake
hwdata
mesa-headers-24
vulkan-headers
pkg-config
wayland
(if (%current-target-system)
(list pkg-config-for-build)
'())))
(home-page "https://gitlab.freedesktop.org/wlroots/wlroots/")
(synopsis "Pluggable, composable, unopinionated modules for building a
Wayland compositor")
(description "wlroots is a set of pluggable, composable, unopinionated
modules for building a Wayland compositor.")
(license license:expat)))
(define-public wlroots-hyprland
(package
(name "wlroots")
@ -890,21 +765,21 @@ modules for building a Wayland compositor.")
eudev
ffmpeg-4
glslang
glu
glu-9.0.3
libxkbcommon
mesa-24
pixman
libcap
libdisplay-info
libdisplay-info-0.1.1
libinput-1.25
libliftoff
libliftoff-0.4.1
libpng
libseat
libxkbcommon
mesa
vulkan-loader
wayland
wayland-protocols
wayland-protocols-1.33
xcb-util-errors
xcb-util-image
xcb-util-renderutil
@ -914,9 +789,9 @@ modules for building a Wayland compositor.")
(list libdrm-2.4.120))
(native-inputs
(cons*
`(,hwdata "pnp")
`(,hwdata-0.380 "pnp")
cmake
hwdata
hwdata-0.380
mesa-headers-24
vulkan-headers
pkg-config
@ -975,7 +850,7 @@ Wayland compositor based on wlroots") (description "Hyprland.")
(description "Disassembler")
(license license:bsd-2)))
(define-public libdisplay-info
(define-public libdisplay-info-0.1.1
(package
(name "libdisplay-info")
(version "0.1.1")
@ -1042,7 +917,7 @@ Wayland compositor based on wlroots") (description "Hyprland.")
pkg-config))
(inputs
(list hyprlang
cairo
cairo-1.18.0
librsvg
libzip))
(arguments
@ -1084,7 +959,7 @@ Wayland compositor based on wlroots") (description "Hyprland.")
qttools
qtwayland
sdbus-c++
wayland-protocols
wayland-protocols-1.33
wayland))
(home-page "https://www.hyprland.org")
(synopsis "xdg-desktop-portal backend for hyprland")
@ -1137,13 +1012,13 @@ Wayland compositor based on wlroots") (description "Hyprland.")
(list cairo-1.18.0
egl-gbm
egl-wayland
glu
glu-9.0.3
glfw
hyprland-protocols
hyprcursor
hyprlang
xdg-desktop-portal-hyprland
libdisplay-info
libdisplay-info-0.1.1
libglvnd
libinput-1.25
libxkbcommon
@ -1151,7 +1026,7 @@ Wayland compositor based on wlroots") (description "Hyprland.")
mesa-24
tomlplusplus
wayland
wayland-protocols
wayland-protocols-1.33
xorg-server-xwayland
pango
pciutils