refactor hypr
This commit is contained in:
parent
148091a09f
commit
92bd36b305
3 changed files with 247 additions and 371 deletions
|
@ -30,6 +30,7 @@
|
|||
#:use-module (gnu packages cmake)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages commencement)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix gexp)
|
||||
|
@ -42,61 +43,11 @@
|
|||
#:use-module (sakura packages)
|
||||
#:use-module (guix utils))
|
||||
|
||||
|
||||
;; Newer packages needed for Hyprland
|
||||
;;
|
||||
;; - libinput
|
||||
;; - wayland
|
||||
;; - hwdata
|
||||
;; - udis86
|
||||
;; - xorg headers
|
||||
;; - mesa libglvnd
|
||||
;; - sdbus-cpp
|
||||
|
||||
|
||||
(define-public libinput-minimal-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit libinput-minimal)
|
||||
(name "libinput-minimal")
|
||||
(version "1.26.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.freedesktop.org/libinput/libinput.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"094k23i10jjmgdzhv5lj7xpc3fgkwi9afcihf0l2fjj71ym8l9fy"))))
|
||||
(native-inputs
|
||||
(modify-inputs (package-native-inputs libinput)
|
||||
(append python-minimal-wrapper python-pytest))))))
|
||||
|
||||
|
||||
(define-public wayland-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit wayland)
|
||||
(name "wayland")
|
||||
(version "1.23.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gitlab.freedesktop.org/" name
|
||||
"/" name "/-/releases/" version "/downloads/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vg5h6d94hglh7724q6wx9dpg4y0afvxksankp1hwbcy76lb4kw6")))))))
|
||||
|
||||
|
||||
(define-public hwdata-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit hwdata)
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments hwdata)
|
||||
((#:phases _) #~%standard-phases)))
|
||||
(outputs '("out")))))
|
||||
|
||||
|
||||
(define-public udis86-for-hyprland
|
||||
(let ((revision "186")
|
||||
(commit "5336633af70f3917760a6d441ff02d93477b0c86"))
|
||||
|
@ -122,37 +73,6 @@ set architectures. It consists of a C library called @code{libudis86} and a
|
|||
command line tool called @code{udcli} that incorporates the library.")
|
||||
(license license:bsd-2)))))
|
||||
|
||||
|
||||
(define-public xorg-server-xwayland-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit xorg-server-xwayland)
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments xorg-server-xwayland)
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
(add-after 'install 'install-headers
|
||||
(lambda _
|
||||
(let ((fmw (string-append #$output "/include")))
|
||||
(mkdir-p fmw)
|
||||
(copy-recursively "include" fmw))
|
||||
))
|
||||
)))))))
|
||||
|
||||
|
||||
(define-public mesa-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit mesa)
|
||||
(inputs
|
||||
(modify-inputs
|
||||
(package-inputs mesa)
|
||||
(prepend libglvnd)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments mesa)
|
||||
((#:configure-flags flags ''())
|
||||
#~(append (list "-Dglvnd=true")
|
||||
#$flags)))))))
|
||||
|
||||
|
||||
(define-public sdbus-c++-for-hyprland
|
||||
(hidden-package (package
|
||||
(inherit sdbus-c++)
|
||||
|
@ -174,10 +94,8 @@ command line tool called @code{udcli} that incorporates the library.")
|
|||
(delete 'check)))))
|
||||
)))
|
||||
|
||||
|
||||
;; Hyprland Packages
|
||||
|
||||
|
||||
(define-public hyprland-protocols
|
||||
(package
|
||||
(name "hyprland-protocols")
|
||||
|
@ -202,45 +120,6 @@ functionality. Since @code{wlr-protocols} is closed for new submissions, and
|
|||
protocols used by Hyprland to bridge the aforementioned gap.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
|
||||
;; Common Packages needed by
|
||||
;; multiple hyprland packages
|
||||
|
||||
(define hyprwayland-common
|
||||
(list ; libs
|
||||
cairo
|
||||
pango
|
||||
; mesa
|
||||
mesa-for-hyprland
|
||||
libglvnd
|
||||
; wayland
|
||||
wayland-for-hyprland
|
||||
wayland-protocols-next
|
||||
hyprland-protocols))
|
||||
|
||||
;; Common Packages needed by
|
||||
;; aquamarine and any package
|
||||
;; that uses it
|
||||
|
||||
(define aquamarine-common
|
||||
(append hyprwayland-common
|
||||
(list ; lib
|
||||
libseat
|
||||
pixman
|
||||
libinput-minimal-for-hyprland
|
||||
; x11
|
||||
libdisplay-info
|
||||
libxcb
|
||||
libxinerama
|
||||
libxcursor
|
||||
libxkbcommon
|
||||
xcb-util
|
||||
xcb-util-errors
|
||||
xcb-util-keysyms
|
||||
xcb-util-wm)))
|
||||
|
||||
|
||||
(define-public hyprlang
|
||||
(package
|
||||
(name "hyprlang")
|
||||
|
@ -255,8 +134,7 @@ protocols used by Hyprland to bridge the aforementioned gap.")
|
|||
(base32
|
||||
"0yvfrz3hdyxzhngzhr0bgc5279ra5fv01hbfi6pdj84pz0lpaw02"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list gcc-13
|
||||
pkg-config))
|
||||
(native-inputs (list gcc-13 pkg-config))
|
||||
(inputs (list hyprutils))
|
||||
(home-page "https://hyprland.org/hyprlang/")
|
||||
(synopsis "Official implementation library for hypr config language")
|
||||
|
@ -265,7 +143,6 @@ protocols used by Hyprland to bridge the aforementioned gap.")
|
|||
language used in @code{hyprland}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
|
||||
(define-public hyprcursor
|
||||
(package
|
||||
(name "hyprcursor")
|
||||
|
@ -281,15 +158,14 @@ language used in @code{hyprland}.")
|
|||
"1rdn03ln7pqcwp8h4nmi7nc489q8y25dd3v4paq8ykvwzhvs3a1n"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments (list #:tests? #f))
|
||||
(inputs (list cairo hyprlang librsvg libzip tomlplusplus))
|
||||
(native-inputs (list gcc-13 pkg-config))
|
||||
(inputs (list cairo hyprlang (librsvg-for-system) libzip tomlplusplus))
|
||||
(home-page "https://hyprland.org/")
|
||||
(synopsis "Hyprland cursor format, library and utilities")
|
||||
(description
|
||||
"This package provides Hyprland cursor format, library and utilities.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public hyprwayland-scanner
|
||||
(package
|
||||
(name "hyprwayland-scanner")
|
||||
|
@ -314,7 +190,6 @@ language used in @code{hyprland}.")
|
|||
for c++.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public hyprutils
|
||||
(package
|
||||
(name "hyprutils")
|
||||
|
@ -337,7 +212,6 @@ for c++.")
|
|||
"this package provides hyprutils")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public aquamarine
|
||||
(package
|
||||
(name "aquamarine")
|
||||
|
@ -347,28 +221,35 @@ for c++.")
|
|||
(uri (git-reference
|
||||
(url "https://github.com/hyprwm/aquamarine")
|
||||
(commit (string-append "v" version))))
|
||||
(patches (sakura-patches "aquamarine-fix-cmake.patch"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x1zz1ywchs0awkjkvdgskgqnp6pz5lqwmgr8g0zc0i7inhyg1p3"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f))
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
pkg-config
|
||||
mesa-headers
|
||||
hyprwayland-scanner
|
||||
hwdata-for-hyprland))
|
||||
hyprwayland-scanner))
|
||||
(inputs
|
||||
(append aquamarine-common (list hyprutils)))
|
||||
(list eudev
|
||||
hwdata
|
||||
hyprutils
|
||||
libdisplay-info
|
||||
libglvnd
|
||||
libinput-minimal
|
||||
libseat
|
||||
mesa
|
||||
pixman
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://hyprland.org")
|
||||
(synopsis "Aquamarine is a very light linux rendering backend library ")
|
||||
(description "") ;; TODO: this
|
||||
(synopsis "Aquamarine is a very light linux rendering backend library.")
|
||||
(description "Aquamarine is a very light linux rendering backend library.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public hyprland
|
||||
(package
|
||||
(name "hyprland")
|
||||
|
@ -379,10 +260,11 @@ for c++.")
|
|||
(uri (git-reference
|
||||
(url "https://github.com/hyprwm/Hyprland")
|
||||
(commit (string-append "v" version))))
|
||||
(patches (sakura-patches "hyprland-fix-cmake.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("^add_subdirectory\\(hyprpm\\).*") ""))
|
||||
(for-each delete-file-recursively
|
||||
'("hyprpm"
|
||||
"subprojects"))))
|
||||
|
@ -391,65 +273,49 @@ for c++.")
|
|||
(base32 "11vw1h9al4jvqprwbrmxvcpxwhvsjj398wbz4flqbnmxa8idvdq1"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f
|
||||
#:cmake cmake-3.30
|
||||
#:build-type "release"
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-path
|
||||
(add-after 'unpack 'patch-source
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* (find-files "src" "\\.cpp$")
|
||||
(("/usr/local(/bin/Hyprland)" _ path)
|
||||
(string-append #$output path))
|
||||
(("/usr") #$output)
|
||||
(("(execAndGet\\(\")\\<(cat|fc-list|lspci)\\>"
|
||||
_ pre cmd)
|
||||
(string-append
|
||||
pre (search-input-file
|
||||
inputs (string-append "bin/" cmd))))
|
||||
(("\\<cc\\>") (search-input-file inputs "bin/gcc"))
|
||||
;; NOTE: Add binutils to inputs will override ld-wrapper.
|
||||
(("(execAndGet\\(\\(\")\\<nm\\>" _ pre)
|
||||
(string-append pre #$binutils "/bin/nm"))
|
||||
(("\\<(addr2line|objcopy)\\>" _ cmd)
|
||||
(string-append #$binutils "/bin/" cmd)))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("libudis86") "udis86"))
|
||||
))
|
||||
(add-after 'fix-path 'fix-protocols
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((protocols (string-append
|
||||
(getcwd)
|
||||
"/subprojects/hyprland-protocols/protocols")))
|
||||
(mkdir-p protocols)
|
||||
(copy-recursively
|
||||
(search-input-directory inputs "share/hyprland-protocols/protocols")
|
||||
protocols))))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(mesa (assoc-ref inputs "mesa")))
|
||||
(wrap-program (string-append out "/bin/Hyprland")
|
||||
`("__EGL_VENDOR_LIBRARY_DIRS" prefix ,(list (string-append mesa "/share/glvnd/egl_vendor.d")))))))
|
||||
(substitute* "src/xwayland/Server.cpp"
|
||||
(("Xwayland( \\{\\})" _ suffix)
|
||||
(string-append
|
||||
(search-input-file inputs "bin/Xwayland")
|
||||
suffix)))))
|
||||
)))
|
||||
(native-inputs
|
||||
(list gcc-14
|
||||
jq
|
||||
pkg-config
|
||||
hyprwayland-scanner
|
||||
hwdata-for-hyprland))
|
||||
ld-wrapper
|
||||
pkg-config))
|
||||
(inputs
|
||||
(append aquamarine-common
|
||||
(list ; libs
|
||||
pciutils
|
||||
libliftoff
|
||||
udis86-for-hyprland
|
||||
xorg-server-xwayland-for-hyprland
|
||||
; hypr
|
||||
aquamarine
|
||||
(list aquamarine
|
||||
binutils
|
||||
cairo
|
||||
hyprcursor
|
||||
hyprland-protocols
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
hyprutils
|
||||
libinput-minimal
|
||||
libxcursor
|
||||
libxkbcommon
|
||||
mesa
|
||||
pango
|
||||
pciutils
|
||||
udis86-for-hyprland
|
||||
wayland
|
||||
wayland-protocols
|
||||
xcb-util-errors
|
||||
xcb-util-wm
|
||||
xorg-server-xwayland))
|
||||
(home-page "https://hyprland.org")
|
||||
(synopsis "Dynamic tiling Wayland compositor based on wlroots")
|
||||
(description
|
||||
|
@ -459,7 +325,6 @@ ef cts, has a very flexible IPC model allowing for a lot of customization, and
|
|||
mo .")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public hyprpaper
|
||||
(package
|
||||
(name "hyprpaper")
|
||||
|
@ -473,55 +338,70 @@ mo .")
|
|||
"1rwi2cs8hwbyk67q57cvi5ybfs881xhzq8zdb8qlcr0jwk3sk1hh"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f))
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-source
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("PkgConfig REQUIRED")
|
||||
(string-append "PkgConfig REQUIRED)\n"
|
||||
"find_package(OpenGL REQUIRED COMPONENTS \"GLES2\""))
|
||||
((" OpenGL")
|
||||
"OpenGL::GL")
|
||||
((" GLESv2")
|
||||
"OpenGL::GLES2")))))))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
hyprwayland-scanner
|
||||
ld-wrapper
|
||||
pkg-config))
|
||||
(inputs
|
||||
(append hyprwayland-common
|
||||
(list ; libs
|
||||
(list binutils
|
||||
cairo
|
||||
hyprutils
|
||||
hyprlang
|
||||
libjpeg-turbo
|
||||
libwebp
|
||||
; hypr
|
||||
hyprwayland-scanner
|
||||
hyprutils
|
||||
hyprlang)))
|
||||
mesa
|
||||
pango
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://github.com/hyprwm/hyprpaper")
|
||||
(license license:bsd-3)
|
||||
(synopsis "Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.")
|
||||
(description "Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.")))
|
||||
|
||||
(description "Hyprpaper is a blazing fast wayland wallpaper utility with IPC controls.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public hypridle
|
||||
(package
|
||||
(name "hypridle")
|
||||
(version "0.1.4")
|
||||
(version "0.1.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/hyprwm/hypridle"
|
||||
"/archive/refs/tags/v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l406qgdrzxxl2fbpwdr8nw6223175iq8dlh9zr2vav5pqbqk1sa"))))
|
||||
"0jwak5544mcbcg0hix307y94qmmmjyrc6z0av3k7jp7c0r3lnk8p"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f))
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
pkg-config))
|
||||
(inputs
|
||||
(append hyprwayland-common
|
||||
(list ; libs
|
||||
(list hyprlang
|
||||
hyprutils
|
||||
sdbus-c++-for-hyprland
|
||||
; hypr
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://github.com/hyprwm/hypridle")
|
||||
(license license:bsd-3)
|
||||
(synopsis "Hyprland's idle daemon ")
|
||||
(description "Hyprland's idle daemon ")))
|
||||
|
||||
|
||||
(define-public hyprlock
|
||||
(package
|
||||
(name "hyprlock")
|
||||
|
@ -535,38 +415,71 @@ mo .")
|
|||
"16dg3lvrdyvw7vwl8bhnqsihnjjijq0qra1x9qdd4ni0vsch32jg"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(mesa (assoc-ref inputs "mesa")))
|
||||
(wrap-program (string-append out "/bin/hyprlock")
|
||||
`("__EGL_VENDOR_LIBRARY_DIRS" prefix ,(list (string-append mesa "/share/glvnd/egl_vendor.d"))))))))))
|
||||
(add-after 'unpack 'patch-source
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
((" opengl") "")
|
||||
(("OpenGL REQUIRED")
|
||||
"OpenGL REQUIRED COMPONENTS GLES2 EGL")))))))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
pkg-config
|
||||
mesa-headers
|
||||
wayland))
|
||||
ld-wrapper
|
||||
pkg-config))
|
||||
(inputs
|
||||
(append aquamarine-common
|
||||
(list ; lib
|
||||
(list cairo
|
||||
hyprutils
|
||||
hyprlang
|
||||
libjpeg-turbo
|
||||
libwebp
|
||||
libdrm
|
||||
libxkbcommon
|
||||
linux-pam
|
||||
mesa
|
||||
pango
|
||||
sdbus-c++-for-hyprland
|
||||
; hypr
|
||||
aquamarine
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://github.com/hyprwm/hyprlock")
|
||||
(license license:bsd-3)
|
||||
(synopsis "Screen locker for Hyprland")
|
||||
(description "Screen locker for hyprland.")))
|
||||
|
||||
(define-public hyprpicker
|
||||
(package
|
||||
(name "hyprpicker")
|
||||
(version "0.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/hyprwm/hyprpicker"
|
||||
"/archive/refs/tags/v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12ikv9zd3hv8rmxjyljw8p9lmqlq9vn7a21p54xn7za5jqgqhkg1"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:cmake ,cmake-3.30
|
||||
#:tests? #f
|
||||
#:configure-flags (list (string-append "-DCMAKE_INSTALL_MANDIR="
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/man"))))
|
||||
(native-inputs (list gcc-13
|
||||
hyprwayland-scanner
|
||||
pkg-config))
|
||||
(inputs (list cairo
|
||||
hyprutils
|
||||
libjpeg-turbo
|
||||
libxkbcommon
|
||||
mesa
|
||||
pango
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://hyprland.org/")
|
||||
(synopsis "Wlroots-compatible Wayland color picker that does not suck")
|
||||
(description "A wlroots-compatible Wayland color picker that does not suck.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public xdg-desktop-portal-hyprland
|
||||
(package
|
||||
|
@ -583,35 +496,37 @@ mo .")
|
|||
"0aixrjyky2mzclnwypybpg01ihfbmwzfv09zbjis49q1clrszq2p"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;No tests
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* (find-files "." "\\.cp?*$")
|
||||
(("/bin/sh") "sh")
|
||||
(("\\<(sh|grim|hyprctl|slurp)\\>" _ cmd)
|
||||
(("\\<(sh|grim|hyprctl|hyprpicker|slurp)\\>" _ cmd)
|
||||
(search-input-file inputs (string-append "/bin/" cmd)))
|
||||
(("\\<(hyprland-share-picker)\\>" _ cmd)
|
||||
(string-append #$output "/bin/" cmd))))))))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
pkg-config
|
||||
hyprwayland-scanner))
|
||||
hyprwayland-scanner
|
||||
pkg-config))
|
||||
(inputs
|
||||
(append hyprwayland-common
|
||||
(list ; libs
|
||||
bash-minimal
|
||||
(list bash-minimal
|
||||
grim
|
||||
sdbus-c++-for-hyprland
|
||||
slurp
|
||||
qtbase
|
||||
pipewire
|
||||
qtwayland
|
||||
; hypr
|
||||
hyprland
|
||||
hyprland-protocols
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
hyprpicker
|
||||
hyprutils
|
||||
pipewire
|
||||
slurp
|
||||
sdbus-c++-for-hyprland
|
||||
qtbase
|
||||
qtwayland
|
||||
wayland
|
||||
wayland-protocols))
|
||||
(home-page "https://github.com/hyprwm/xdg-desktop-portal-hyprland")
|
||||
(synopsis "XDG Desktop Portal backend for Hyprland")
|
||||
(description
|
||||
|
@ -621,7 +536,6 @@ mo .")
|
|||
extra portals specific to Hyprland, mostly for window sharing.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-hy3
|
||||
(package
|
||||
(name "hyprland-plugin-hy3")
|
||||
|
@ -636,28 +550,31 @@ extra portals specific to Hyprland, mostly for window sharing.")
|
|||
"03gxjkn43j85ff8d0hx9nhv5bfwv7vw7m8kacpmajmfnx43mldg9"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:configure-flags #~(list "DCMAKE_BUILD_TYPE=Release")))
|
||||
(native-inputs
|
||||
(list gcc-13
|
||||
pkg-config
|
||||
hyprwayland-scanner))
|
||||
(list pkg-config
|
||||
gcc-13))
|
||||
(inputs
|
||||
(append aquamarine-common
|
||||
(list ; lib
|
||||
gcc-13
|
||||
libdrm
|
||||
; hypr
|
||||
aquamarine
|
||||
(list aquamarine
|
||||
cairo
|
||||
hyprland
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
hyprutils
|
||||
libinput-minimal
|
||||
libxkbcommon
|
||||
libdrm
|
||||
mesa
|
||||
pango
|
||||
pixman
|
||||
hyprland
|
||||
wayland))
|
||||
(license license:gpl3)
|
||||
(home-page "https://github.com/outfoxxed/hy3")
|
||||
(synopsis "i3 / sway like layout for hyprland.")
|
||||
(description "Hyprland plugin for an i3 / sway like manual tiling layout")))
|
||||
|
||||
|
||||
(define-syntax hyprland-plugin-impl
|
||||
(syntax-rules ()
|
||||
((_ plugin)
|
||||
|
@ -676,56 +593,51 @@ extra portals specific to Hyprland, mostly for window sharing.")
|
|||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f
|
||||
#:cmake cmake-3.30
|
||||
(list #:cmake cmake-3.30
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _ (chdir (string-append "../source/" plugin "/")))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
gcc-13
|
||||
hyprwayland-scanner))
|
||||
gcc-13))
|
||||
(inputs
|
||||
(append aquamarine-common
|
||||
(list ; libs
|
||||
gcc-13
|
||||
libdrm
|
||||
; hypr
|
||||
aquamarine
|
||||
(list aquamarine
|
||||
hyprland
|
||||
hyprlang
|
||||
hyprutils)))
|
||||
hyprutils
|
||||
libdrm
|
||||
libinput
|
||||
libxkbcommon
|
||||
mesa
|
||||
pango
|
||||
pixman
|
||||
wayland
|
||||
xcb-util-wm))
|
||||
(license license:bsd-3)
|
||||
(home-page "https://github.com/hyprwm/hyprland-plugins")
|
||||
(synopsis (string-append "official " plugin " plugin for hyprland"))
|
||||
(description (string-append "official " plugin " plugin for hyprland"))))))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-borders-plus-plus
|
||||
(hyprland-plugin-impl "borders-plus-plus"))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-csgo-vulkan-fix
|
||||
(hyprland-plugin-impl "csgo-vulkan-fix"))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-hyprbars
|
||||
(hyprland-plugin-impl "hyprbars"))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-hyprexpo
|
||||
(hyprland-plugin-impl "hyprexpo"))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-hyprtrails
|
||||
(hyprland-plugin-impl "hyprtrails"))
|
||||
|
||||
|
||||
(define-public hyprland-plugin-hyprwinwrap
|
||||
(hyprland-plugin-impl "hyprwinwrap"))
|
||||
|
||||
|
||||
(define-public hyprland-plugins
|
||||
(package
|
||||
(name "hyprland-plugins")
|
||||
|
@ -744,12 +656,11 @@ extra portals specific to Hyprland, mostly for window sharing.")
|
|||
hyprland-plugin-hyprtrails
|
||||
hyprland-plugin-hyprwinwrap))))
|
||||
|
||||
|
||||
(define-syntax hyprland-contrib-impl
|
||||
(syntax-rules ()
|
||||
((_ contrib)
|
||||
(package
|
||||
(name (string-append "hyprland-conrib-" contrib))
|
||||
(name (string-append "hyprland-contrib-" contrib))
|
||||
(version "0.1")
|
||||
(source
|
||||
(origin
|
||||
|
@ -776,30 +687,53 @@ extra portals specific to Hyprland, mostly for window sharing.")
|
|||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "make" "install" (string-append "PREFIX=" (assoc-ref outputs "out")))))
|
||||
(add-after 'install 'wrap-programs
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((binpath (lambda (name)
|
||||
(string-append (assoc-ref inputs name)
|
||||
"/bin"))))
|
||||
(for-each
|
||||
(lambda (binary)
|
||||
(wrap-program binary
|
||||
`("PATH" ":" prefix
|
||||
(,(binpath "grim")
|
||||
,(binpath "jq")
|
||||
,(binpath "hyprland")
|
||||
,(binpath "hyprpicker")
|
||||
,(binpath "libnotify")
|
||||
,(binpath "sed")
|
||||
,(binpath "slurp")
|
||||
,(binpath "wl-clipboard")))))
|
||||
(find-files (string-append (assoc-ref outputs "out")
|
||||
"/bin"))))))
|
||||
)))
|
||||
(native-inputs (list scdoc))
|
||||
(inputs
|
||||
(list grim
|
||||
jq
|
||||
hyprland
|
||||
hyprpicker
|
||||
libnotify
|
||||
sed
|
||||
slurp
|
||||
wl-clipboard))
|
||||
(license license:expat)
|
||||
(home-page "https://github.com/hyprwm/contrib")
|
||||
(synopsis (string-append "official " contrib " script for hyprland"))
|
||||
(description (string-append "official " contrib " script for hyprland"))))))
|
||||
|
||||
|
||||
(define-public hyprland-contrib-grimblast
|
||||
(hyprland-contrib-impl "grimblast"))
|
||||
|
||||
|
||||
(define-public hyprland-contrib-hyprprop
|
||||
(hyprland-contrib-impl "hyprprop"))
|
||||
|
||||
|
||||
(define-public hyprland-contrib-scratchpad
|
||||
(hyprland-contrib-impl "scratchpad"))
|
||||
|
||||
|
||||
(define-public hyprland-contrib-shellevents
|
||||
(hyprland-contrib-impl "shellevents"))
|
||||
|
||||
|
||||
(define-public hyprland-contrib
|
||||
(package
|
||||
(name "hyprland-contrib")
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
From 7b6f11ed0708d8775f42107e19d9099835e2498e Mon Sep 17 00:00:00 2001
|
||||
From: Freya Murphy <freya@freyacat.org>
|
||||
Date: Mon, 5 Aug 2024 17:52:48 -0400
|
||||
Subject: [PATCH] fix cmake
|
||||
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index bb7a4d6..7f7e7ff 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -19,7 +19,7 @@ set(INCLUDE ${CMAKE_INSTALL_FULL_INCLUDEDIR})
|
||||
set(LIBDIR ${CMAKE_INSTALL_FULL_LIBDIR})
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
-find_package(OpenGL REQUIRED COMPONENTS "GLES2")
|
||||
+find_package(OpenGL REQUIRED)
|
||||
find_package(hyprwayland-scanner 0.4.0 REQUIRED)
|
||||
pkg_check_modules(
|
||||
deps
|
||||
--
|
||||
2.45.1
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
From 33fac66982422104cc1c2664f9a841fc96295c13 Mon Sep 17 00:00:00 2001
|
||||
From: Freya Murphy <freya@freyacat.org>
|
||||
Date: Mon, 5 Aug 2024 20:35:50 -0400
|
||||
Subject: [PATCH] fix cmake
|
||||
|
||||
---
|
||||
CMakeLists.txt | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index fa58b63d..51ea6cfa 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -85,7 +84,7 @@ if(LEGACY_RENDERER)
|
||||
else()
|
||||
set(GLES_VERSION "GLES3")
|
||||
endif()
|
||||
-find_package(OpenGL REQUIRED COMPONENTS ${GLES_VERSION})
|
||||
+find_package(OpenGL REQUIRED)
|
||||
|
||||
pkg_check_modules(
|
||||
deps
|
||||
@@ -314,7 +313,6 @@ protocolwayland()
|
||||
|
||||
# tools
|
||||
add_subdirectory(hyprctl)
|
||||
-add_subdirectory(hyprpm)
|
||||
|
||||
# binary and symlink
|
||||
install(TARGETS Hyprland)
|
||||
--
|
||||
2.45.1
|
||||
|
Loading…
Reference in a new issue