* [bug#74223] [PATCH 01/11] gnu: Add udis86.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 02/11] gnu: Add hyprutils Hilton Chain via Guix-patches via
` (11 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/engineering.scm (udis86): New variable.
Change-Id: I95d6e1dc6dbd07812377633a3290eea9b8102456
---
gnu/packages/engineering.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 6f449f0c39..0b3431e69c 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -4248,6 +4248,34 @@ (define-public cura-binary-data
compiled translations. Prebuilt Firmware files are removed.")
(license license:agpl3)))
+(define-public udis86
+ (let ((commit "5336633af70f3917760a6d441ff02d93477b0c86")
+ (revision "0"))
+ (package
+ (name "udis86")
+ (version (git-version "1.7.2" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/canihavesomecoffee/udis86")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0y5z1169wff578jylpafsww4px4y6gickhcs885a9c660d8xs9qy"))))
+ (build-system gnu-build-system)
+ (native-inputs (list autoconf automake libtool python-minimal-wrapper))
+ ;; Fork of https://github.com/vmt/udis86
+ (home-page "https://github.com/canihavesomecoffee/udis86")
+ (synopsis "Disassembler library for x86 and x86-64")
+ (description
+ "Udis86 is a disassembler for the x86 and x86-64 class of instruction
+set architectures. It consists of a C library called @code{libudis86} which
+provides a clean and simple interface to decode and inspect a stream of raw
+binary data as disassembled instructions in a structured manner, and a command
+line tool called @command{udcli} that incorporates the library.")
+ (license license:bsd-2))))
+
(define-public uranium
(package
(name "uranium")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 02/11] gnu: Add hyprutils.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 01/11] gnu: Add udis86 Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 03/11] gnu: Add hyprwayland-scanner Hilton Chain via Guix-patches via
` (10 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: John Kehayias, Hilton Chain
From: John Kehayias <john.kehayias@protonmail.com>
* gnu/packages/wm.scm (hyprutils): New variable.
Modified-by: Hilton Chain <hako@ultrarare.space>
Change-Id: Ife120a7c2d66b7189a3116f8dbcb53be8dafd58e
---
gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index f8e8557ef1..ddc9d7c136 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -113,6 +113,7 @@ (define-module (gnu packages cpp)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
+ #:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
;; Using autoload to avoid a cycle.
@@ -663,6 +664,29 @@ (define-public google-highway
library for SIMD (Single Instruction, Multiple Data) with runtime dispatch.")
(license license:asl2.0)))
+(define-public hyprutils
+ (package
+ (name "hyprutils")
+ (version "0.2.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprutils")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "01dh24rf62gb6xm32f7mfv6wx0dxprr1q9y73hvv7xanrjyia2zn"))))
+ (build-system cmake-build-system)
+ (native-inputs (list gcc-13 pkg-config))
+ (inputs (list pixman))
+ (home-page "https://github.com/hyprwm/hyprutils")
+ (synopsis "C++ library for utilities used across Hyprland ecosystem")
+ (description
+ "This package provides a C++ library for utilities used across Hyprland
+ecosystem.")
+ (license license:bsd-3)))
+
(define-public xsimd-benchmark
(package
(inherit xsimd)
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 03/11] gnu: Add hyprwayland-scanner.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 01/11] gnu: Add udis86 Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 02/11] gnu: Add hyprutils Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 04/11] gnu: Add hyprland-protocols Hilton Chain via Guix-patches via
` (9 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprwayland-scanner): New variable.
Change-Id: I492006356e3abc68609d6c73738a0dfd3b15681c
---
gnu/packages/freedesktop.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index bd34615e68..57d3322139 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -95,6 +95,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages file)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gawk)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl)
@@ -1339,6 +1340,30 @@ (define-public python-pyxdg
Python.")
(license license:lgpl2.0)))
+(define-public hyprwayland-scanner
+ (package
+ (name "hyprwayland-scanner")
+ (version "0.4.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprwayland-scanner")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0r7ay4zjkfyr0xd73wz99qhnqjq7nma98gm51wm9lmai4igw90qw"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ;No tests.
+ (inputs (list pugixml))
+ (native-inputs (list gcc-13 pkg-config))
+ (home-page "https://github.com/hyprwm/hyprwayland-scanner")
+ (synopsis "Hyprland implementation of @code{wayland-scanner}")
+ (description
+ "This package provides a Hyprland implementation of @code{wayland-scanner},
+in and for C++.")
+ (license license:bsd-3)))
+
(define-public wayland
(package
(name "wayland")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 04/11] gnu: Add hyprland-protocols.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (2 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 03/11] gnu: Add hyprwayland-scanner Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 05/11] gnu: Add hyprlang Hilton Chain via Guix-patches via
` (8 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprland-protocols): New variable.
Change-Id: If986f2b5f8c0070807484e60431bb4c47f901edc
---
gnu/packages/freedesktop.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 57d3322139..7969603613 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -1340,6 +1340,26 @@ (define-public python-pyxdg
Python.")
(license license:lgpl2.0)))
+(define-public hyprland-protocols
+ (package
+ (name "hyprland-protocols")
+ (version "0.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprland-protocols")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0x86w7z3415qvixfhk9a8v5fnbnxdydzx366qz0mpmfg5h86qyha"))))
+ (build-system meson-build-system)
+ (home-page "https://github.com/hyprwm/hyprland-protocols")
+ (synopsis "Wayland protocol extensions for Hyprland")
+ (description
+ "This package provides Wayland protocol extensions for Hyprland.")
+ (license license:bsd-3)))
+
(define-public hyprwayland-scanner
(package
(name "hyprwayland-scanner")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 05/11] gnu: Add hyprlang.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (3 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 04/11] gnu: Add hyprland-protocols Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 06/11] gnu: Add hyprcursor Hilton Chain via Guix-patches via
` (7 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprlang): New variable.
Change-Id: Ie585412bd26bff2c5949ed3aef15c37f6958dc0b
---
gnu/packages/cpp.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index ddc9d7c136..5d01c8afb6 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -664,6 +664,29 @@ (define-public google-highway
library for SIMD (Single Instruction, Multiple Data) with runtime dispatch.")
(license license:asl2.0)))
+(define-public hyprlang
+ (package
+ (name "hyprlang")
+ (version "0.5.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprlang")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0yvfrz3hdyxzhngzhr0bgc5279ra5fv01hbfi6pdj84pz0lpaw02"))))
+ (build-system cmake-build-system)
+ (native-inputs (list gcc-13 pkg-config))
+ (inputs (list hyprutils))
+ (home-page "https://wiki.hyprland.org/Hypr-Ecosystem/hyprlang/")
+ (synopsis "Official implementation library for hypr config language")
+ (description
+ "This package provides the official implementation for hypr configuration
+language used in Hyprland.")
+ (license license:lgpl3)))
+
(define-public hyprutils
(package
(name "hyprutils")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 06/11] gnu: Add hyprcursor.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (4 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 05/11] gnu: Add hyprlang Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 07/11] gnu: Add aquamarine Hilton Chain via Guix-patches via
` (6 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprcursor): New variable.
Change-Id: I3e753cbaf75244adca65f0478cabd10c89af4286
---
gnu/packages/xdisorg.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index a75e9cd6ba..033b86231e 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -115,6 +115,7 @@ (define-module (gnu packages xdisorg)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gl)
#:use-module (gnu packages gl)
@@ -3638,6 +3639,29 @@ (define-public hsetroot
This package is the fork of hsetroot by Hyriand.")
(license license:gpl2+)))
+(define-public hyprcursor
+ (package
+ (name "hyprcursor")
+ (version "0.1.10")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprcursor")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rdn03ln7pqcwp8h4nmi7nc489q8y25dd3v4paq8ykvwzhvs3a1n"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ;TODO: No themes currently packaged.
+ (native-inputs (list gcc-13 pkg-config))
+ (inputs (list cairo hyprlang (librsvg-for-system) libzip tomlplusplus))
+ (home-page "https://standards.hyprland.org/hyprcursor/")
+ (synopsis "Cursor theme format")
+ (description
+ "This package provides Hyprland cursor format, library and utilities.")
+ (license license:bsd-3)))
+
(define-public jumpapp
(package
(name "jumpapp")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 07/11] gnu: Add aquamarine.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (5 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 06/11] gnu: Add hyprcursor Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 08/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (5 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: John Kehayias, Hilton Chain
From: John Kehayias <john.kehayias@protonmail.com>
* gnu/packages/wm.scm (aquamarine): New variable.
Modified-by: Hilton Chain <hako@ultrarare.space>
Change-Id: Ibf62dd86d8dd336a4552d767dc0c235db5e57106
---
gnu/packages/xdisorg.scm | 43 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 033b86231e..34ddad9123 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -105,6 +105,7 @@ (define-module (gnu packages xdisorg)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
@@ -138,6 +139,7 @@ (define-module (gnu packages xdisorg)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
@@ -232,6 +234,47 @@ (define-public xvkbd
command line, without displaying a keyboard at all.")
(license license:gpl2+)))
+(define-public aquamarine
+ (package
+ (name "aquamarine")
+ (version "0.4.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/aquamarine")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0x1zz1ywchs0awkjkvdgskgqnp6pz5lqwmgr8g0zc0i7inhyg1p3"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:cmake cmake-3.30
+ ;; TODO: Figure out what's expected in the test environment.
+ #:tests? #f))
+ (native-inputs
+ (list gcc-13 hyprwayland-scanner pkg-config))
+ (inputs
+ (list eudev
+ hwdata
+ hyprutils
+ libdisplay-info
+ libglvnd
+ libinput-minimal
+ libseat
+ mesa
+ pixman
+ wayland
+ wayland-protocols))
+ (home-page "https://github.com/hyprwm/aquamarine")
+ (synopsis "Linux rendering backend library")
+ (description
+ "Aquamarine is a C++-only Linux rendering backend library. It provides
+basic abstractions for an application to render on a Wayland session (in a
+window) or a native DRM session. It is agnostic of the rendering API (Vulkan
+/ OpenGL).")
+ (license license:bsd-3)))
+
(define-public arandr
(package
(name "arandr")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 08/11] gnu: Add hyprland.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (6 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 07/11] gnu: Add aquamarine Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 09/11] gnu: Add xdg-desktop-portal-hyprland Hilton Chain via Guix-patches via
` (4 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprland): New variable.
Change-Id: Idffb9309f61f30c5523e69bb6313162cff87b275
---
gnu/packages/wm.scm | 79 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 79 insertions(+)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 836d4b6c04..01a6677e9a 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -118,17 +118,21 @@ (define-module (gnu packages wm)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages cpp)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
+ #:use-module (gnu packages engineering)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gawk)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
@@ -314,6 +318,81 @@ (define-public herbstluftwm
(home-page "https://herbstluftwm.org")
(license license:bsd-2)))
+(define-public hyprland
+ (package
+ (name "hyprland")
+ (version "0.44.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/hyprwm/Hyprland"
+ "/releases/download/v" version
+ "/source-v" version ".tar.gz"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove bundled sources and hyprpm utility.
+ (substitute* "CMakeLists.txt"
+ (("^add_subdirectory\\(hyprpm\\).*") ""))
+ (for-each delete-file-recursively
+ '("hyprpm"
+ "subprojects"))))
+ (sha256
+ (base32
+ "0qzwdlj0bwj267285l3gjklhafn3bln90z985yws4j5cbp7bj0d9"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:cmake cmake-3.30
+ #:tests? #f ;No tests.
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/xwayland/Server.cpp"
+ (("Xwayland( \\{\\})" _ suffix)
+ (string-append
+ (search-input-file inputs "bin/Xwayland")
+ suffix)))
+ (substitute* (find-files "src" "\\.cpp$")
+ (("/usr/local(/bin/Hyprland)" _ path)
+ (string-append #$output path))
+ (("/usr") #$output)
+ (("\\<(addr2line|cat|lspci|nm)\\>" cmd)
+ (search-input-file
+ inputs (string-append "bin/" cmd)))))))))
+ (native-inputs
+ (list gcc-14
+ hyprwayland-scanner
+ (module-ref (resolve-interface
+ '(gnu packages commencement))
+ 'ld-wrapper)
+ pkg-config))
+ (inputs
+ (list aquamarine
+ binutils
+ cairo
+ hyprcursor
+ hyprland-protocols
+ hyprlang
+ hyprutils
+ libinput-minimal
+ libxcursor
+ libxkbcommon
+ mesa
+ pango
+ pciutils
+ udis86
+ wayland
+ wayland-protocols
+ xcb-util-errors
+ xcb-util-wm
+ xorg-server-xwayland))
+ (home-page "https://hyprland.org/")
+ (synopsis "Dynamic tiling Wayland compositor")
+ (description
+ "Hyprland is a dynamic tiling Wayland compositor that doesn't sacrifice on
+its looks.")
+ (license license:bsd-3)))
+
(define-public i3status
(package
(name "i3status")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 09/11] gnu: Add xdg-desktop-portal-hyprland.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (7 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 08/11] gnu: Add hyprland Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 10/11] gnu: Add hyprpicker Hilton Chain via Guix-patches via
` (3 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain, Ryan Schanzenbacher
From: Ryan Schanzenbacher <ryan@rschanz.org>
* gnu/packages/freedesktop.scm (xdg-desktop-portal-hyprland): New variable.
Co-authored-by: Hilton Chain <hako@ultrarare.space>
Change-Id: If8c413319b089ed5d8d75aa0503f886a81697278
---
gnu/packages/freedesktop.scm | 52 ++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 7969603613..43ebecabbb 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -83,6 +83,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages cups)
@@ -141,6 +142,7 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages w3m)
#:use-module (gnu packages web)
+ #:use-module (gnu packages wm)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
@@ -3193,6 +3195,56 @@ (define-public xdg-desktop-portal-gtk
interfaces.")
(license license:lgpl2.1+)))
+(define-public xdg-desktop-portal-hyprland
+ (package
+ (name "xdg-desktop-portal-hyprland")
+ (version "1.3.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/xdg-desktop-portal-hyprland")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "17ba9jkccyp8gv79ds70khgm5wm6x8zs5m9nkilq4n2j7fsa8cfl"))))
+ (build-system qt-build-system)
+ (arguments
+ (list #:tests? #f ;No tests
+ #:qtbase qtbase
+ #: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)
+ (search-input-file inputs (string-append "bin/" cmd))))
+ (substitute* "src/shared/ScreencopyShared.cpp"
+ (("\\<(hyprland-share-picker)\\>" _ cmd)
+ (string-append #$output "/bin/" cmd))))))))
+ (native-inputs
+ (list gcc-13 hyprwayland-scanner pkg-config))
+ (inputs
+ (list bash-minimal
+ grim
+ hyprland
+ hyprland-protocols
+ hyprlang
+ hyprutils
+ mesa
+ pipewire
+ qtwayland
+ sdbus-c++
+ slurp
+ wayland
+ wayland-protocols))
+ (home-page "https://github.com/hyprwm/xdg-desktop-portal-hyprland")
+ (synopsis "Hyprland implementation of @code{xdg-desktop-portal} backend")
+ (description
+ "This package provides an @code{xdg-desktop-portal} backend for Hyprland.")
+ (license license:bsd-3)))
+
(define-public xdg-desktop-portal-kde
(package
(name "xdg-desktop-portal-kde")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 10/11] gnu: Add hyprpicker.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (8 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 09/11] gnu: Add xdg-desktop-portal-hyprland Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 7:36 ` [bug#74223] [PATCH 11/11] gnu: Add grimblast Hilton Chain via Guix-patches via
` (2 subsequent siblings)
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (hyprpicker): New variable.
Change-Id: I09cfc8b465ca0ac5d4dcbae34f680e80c74fd56f
---
gnu/packages/xdisorg.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 34ddad9123..9a9a416def 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -3705,6 +3705,46 @@ (define-public hyprcursor
"This package provides Hyprland cursor format, library and utilities.")
(license license:bsd-3)))
+(define-public hyprpicker
+ (package
+ (name "hyprpicker")
+ (version "0.4.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/hyprpicker")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11r06c62dqj81r27qhf36f3smnjyk3vz8naa655m8khv4qqvmvc2"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:tests? #f ;No tests.
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/clipboard/Clipboard.cpp"
+ (("wl-copy" cmd)
+ (search-input-file
+ inputs (string-append "bin/" cmd)))))))))
+ (native-inputs (list gcc-13 hyprwayland-scanner pkg-config))
+ (inputs
+ (list cairo
+ hyprutils
+ libjpeg-turbo
+ libxkbcommon
+ pango
+ wayland
+ wayland-protocols
+ wl-clipboard))
+ (home-page "https://github.com/hyprwm/hyprpicker")
+ (synopsis "Wayland color picker compatible with @code{wlroots}")
+ (description
+ "This package provides a @code{wlroots}-compatible Wayland color picker.")
+ (license license:bsd-3)))
+
(define-public jumpapp
(package
(name "jumpapp")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 11/11] gnu: Add grimblast.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (9 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 10/11] gnu: Add hyprpicker Hilton Chain via Guix-patches via
@ 2024-11-06 7:36 ` Hilton Chain via Guix-patches via
2024-11-06 18:07 ` [bug#74223] [PATCH 00/11] gnu: Add hyprland Noé Lopez via Guix-patches via
2024-11-06 20:24 ` Noé Lopez via Guix-patches via
12 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06 7:36 UTC (permalink / raw)
To: 74223; +Cc: Hilton Chain
* gnu/packages/wm.scm (grimblast): New variable.
Change-Id: I38d8e0ff92e8724cec64d37d036ff307c96a2cc0
---
gnu/packages/wm.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 60 insertions(+)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 01a6677e9a..bbecbf47e2 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -3766,6 +3766,66 @@ (define-public avizo
used for multimedia keys.")
(license license:gpl3+)))
+(define-public grimblast
+ (let ((commit "9d67858b437d4a1299be496d371b66fc0d3e01f6")
+ (revision "1"))
+ (package
+ (name "grimblast")
+ (version (git-version "0.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hyprwm/contrib")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1v0v5j7ingx80b5zpyz8ilfhz0kh9dcssnx6iwwl45zzgp915cpv"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;No tests.
+ #:make-flags
+ #~(list (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "grimblast")))
+ (add-after 'chdir 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "grimblast"
+ (((string-append "\\<(" (string-join
+ '("date"
+ "grim"
+ "slurp"
+ "hyprctl"
+ "hyprpicker"
+ "wl-copy"
+ "jq"
+ "notify-send")
+ "|")
+ ")\\>")
+ cmd)
+ (search-input-file
+ inputs (string-append "bin/" cmd)))))))))
+ (native-inputs (list scdoc))
+ (inputs
+ (list coreutils-minimal
+ grim
+ jq
+ libnotify
+ slurp
+ hyprland
+ hyprpicker
+ wl-clipboard))
+ (home-page "https://github.com/hyprwm/contrib")
+ (synopsis "Screenshot utility for Hyprland")
+ (description
+ "This package provides a Hyprland version of @code{grimshot} for
+screenshoting.")
+ (license license:expat))))
+
(define-public grimshot
(package
(name "grimshot")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (10 preceding siblings ...)
2024-11-06 7:36 ` [bug#74223] [PATCH 11/11] gnu: Add grimblast Hilton Chain via Guix-patches via
@ 2024-11-06 18:07 ` Noé Lopez via Guix-patches via
2024-11-08 8:55 ` Hilton Chain via Guix-patches via
2024-11-06 20:24 ` Noé Lopez via Guix-patches via
12 siblings, 1 reply; 18+ messages in thread
From: Noé Lopez via Guix-patches via @ 2024-11-06 18:07 UTC (permalink / raw)
To: Hilton Chain; +Cc: hako, 74223
Hi,
Thanks for this patch, hyprland works great as far as I tested it :)
grimblast and hyprpicker didn’t work for me, and then gnome crashed
losing my mail progress. Maybe I’m not supposed to run two wayland
sessions at once 🤔
Anyways, here are a few suggestions, I don’t have commit access so
don’t take them too seriously :P
>+ (native-inputs (list autoconf automake libtool python-minimal-wrapper))
>+ ;; Fork of https://github.com/vmt/udis86
>+ (home-page "https://github.com/canihavesomecoffee/udis86")
Comments should end with a dot.
>+ (inputs (list pixman))
>+ (home-page "https://github.com/hyprwm/hyprutils")
>+ (synopsis "C++ library for utilities used across Hyprland ecosystem")
>+ (description
>+ "This package provides a C++ library for utilities used across Hyprland
>+ecosystem.")
A « the » is missing before « Hyprland ».
Good evening,
Noé
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
2024-11-06 18:07 ` [bug#74223] [PATCH 00/11] gnu: Add hyprland Noé Lopez via Guix-patches via
@ 2024-11-08 8:55 ` Hilton Chain via Guix-patches via
2024-11-23 13:51 ` Noé Lopez via Guix-patches via
0 siblings, 1 reply; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-08 8:55 UTC (permalink / raw)
To: Noé Lopez; +Cc: 74223
Hi Noé,
On Thu, 07 Nov 2024 02:07:00 +0800,
Noé Lopez wrote:
>
> Hi,
>
> Thanks for this patch, hyprland works great as far as I tested it :)
>
> grimblast and hyprpicker didn’t work for me, and then gnome crashed
> losing my mail progress. Maybe I’m not supposed to run two wayland
> sessions at once 🤔
hyprpicker is for wlroots-based compositors, and grimblast depends on Hyprland
at runtime, I guess you were running them on GNOME?
> Anyways, here are a few suggestions, I don’t have commit access so
> don’t take them too seriously :P
Don't worry! Any review counts and helps :)
>
> >+ (native-inputs (list autoconf automake libtool python-minimal-wrapper))
> >+ ;; Fork of https://github.com/vmt/udis86
> >+ (home-page "https://github.com/canihavesomecoffee/udis86")
>
> Comments should end with a dot.
Ahh, forgot about this URL :(
> >+ (inputs (list pixman))
> >+ (home-page "https://github.com/hyprwm/hyprutils")
> >+ (synopsis "C++ library for utilities used across Hyprland ecosystem")
> >+ (description
> >+ "This package provides a C++ library for utilities used across Hyprland
> >+ecosystem.")
>
> A « the » is missing before « Hyprland ».
I stripped it by intention, does it break the sentence?
Thanks
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
2024-11-08 8:55 ` Hilton Chain via Guix-patches via
@ 2024-11-23 13:51 ` Noé Lopez via Guix-patches via
2024-11-30 16:53 ` Hilton Chain via Guix-patches via
0 siblings, 1 reply; 18+ messages in thread
From: Noé Lopez via Guix-patches via @ 2024-11-23 13:51 UTC (permalink / raw)
To: Hilton Chain; +Cc: 74223
Hilton Chain <hako@ultrarare.space> writes:
> Hi Noé,
>
> On Thu, 07 Nov 2024 02:07:00 +0800,
> Noé Lopez wrote:
>>
>> Hi,
>>
>> Thanks for this patch, hyprland works great as far as I tested it :)
>>
>> grimblast and hyprpicker didn’t work for me, and then gnome crashed
>> losing my mail progress. Maybe I’m not supposed to run two wayland
>> sessions at once 🤔
>
> hyprpicker is for wlroots-based compositors, and grimblast depends on Hyprland
> at runtime, I guess you were running them on GNOME?
>
They were not working in a guix shell in kitty in hyprland in a tty.
>> My cursor is completely broken now in GNOME, even after reconfiguring my
>> system :/ Is this an expected issue ?
>
>Cursor issue sounds to be related to hyprcursor. But how does it interfere with
>GNOME? Have you fixed it now?
>
I found the culprit, a theme unsupported by gnome was selected as cursor
theme in dconf, I suppose hyprland set it to an hyprcursor theme?
Here’s a mention of that in the wiki:
https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/#important-notes
Also, this applied to me:
>My cursor is a hyprland icon?
>
>This means you have no hyprcursor theme installed, and hyprland failed to find an XCursor theme as well. Install a cursor theme.
Is it possible that providing an hyprcursor theme with hyprland would
avoid this issue?
Good evening,
Noé
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
2024-11-23 13:51 ` Noé Lopez via Guix-patches via
@ 2024-11-30 16:53 ` Hilton Chain via Guix-patches via
0 siblings, 0 replies; 18+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-30 16:53 UTC (permalink / raw)
To: Noé Lopez; +Cc: 74223
On Sat, 23 Nov 2024 21:51:07 +0800,
Noé Lopez wrote:
>
> Hilton Chain <hako@ultrarare.space> writes:
>
> > On Thu, 07 Nov 2024 02:07:00 +0800,
> > Noé Lopez wrote:
> >>
> >> grimblast and hyprpicker didn’t work for me, and then gnome crashed losing
> >> my mail progress. Maybe I’m not supposed to run two wayland sessions at
> >> once 🤔
> >
> > hyprpicker is for wlroots-based compositors, and grimblast depends on
> > Hyprland at runtime, I guess you were running them on GNOME?
>
> They were not working in a guix shell in kitty in hyprland in a tty.
Just tried Hyprland and they worked fine for me. Not sure if this is a setup
issue, since I'm using sway and its environment is similar to what Hyprland
expects.
> >> My cursor is completely broken now in GNOME, even after reconfiguring my
> >> system :/ Is this an expected issue ?
> >
> >Cursor issue sounds to be related to hyprcursor. But how does it interfere
> >with GNOME? Have you fixed it now?
>
> I found the culprit, a theme unsupported by gnome was selected as cursor theme
> in dconf, I suppose hyprland set it to an hyprcursor theme?
>
> Here’s a mention of that in the wiki:
> https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/#important-notes
>
> Also, this applied to me:
> >My cursor is a hyprland icon?
> >
> >This means you have no hyprcursor theme installed, and hyprland failed to
> >find an XCursor theme as well. Install a cursor theme.
>
> Is it possible that providing an hyprcursor theme with hyprland would avoid
> this issue?
Since there's no official theme, I don't think propagating one is suitable. And
Hyprland falls back to the "default" theme, which is the standard way[1].
XCursor themes are looked up in $XCURSOR_PATH, in Guix it's "icons" directory
under $XDG_DATA_DIRS, plus "$HOME/.icons". In my case I added a "default" theme
in "$HOME/.icons".
---
[1]: https://wiki.archlinux.org/title/Cursor_themes#The_default_cursor_theme
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
2024-11-06 7:30 [bug#74223] [PATCH 00/11] gnu: Add hyprland Hilton Chain via Guix-patches via
` (11 preceding siblings ...)
2024-11-06 18:07 ` [bug#74223] [PATCH 00/11] gnu: Add hyprland Noé Lopez via Guix-patches via
@ 2024-11-06 20:24 ` Noé Lopez via Guix-patches via
2024-11-08 9:16 ` Hilton Chain via Guix-patches via
12 siblings, 1 reply; 18+ messages in thread
From: Noé Lopez via Guix-patches via @ 2024-11-06 20:24 UTC (permalink / raw)
To: Hilton Chain; +Cc: 74223
My cursor is completely broken now in GNOME, even after reconfiguring my
system :/ Is this an expected issue ?
Good evening,
Noé
^ permalink raw reply [flat|nested] 18+ messages in thread