all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
@ 2024-11-06  7:30 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
                   ` (12 more replies)
  0 siblings, 13 replies; 16+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-06  7:30 UTC (permalink / raw)
  To: 74223
  Cc: Hilton Chain, hutzdog, John Kehayias, Lucy Coleclough,
	Ryan Schanzenbacher

Hello Guix,

This series (finally!) adds Hyprland and all its dependencies.  Since these
packages are moving from my channel, two other packages, hyprpicker and
grimblast are also added here.

Thanks

Hilton Chain (8):
  gnu: Add udis86.
  gnu: Add hyprwayland-scanner.
  gnu: Add hyprland-protocols.
  gnu: Add hyprlang.
  gnu: Add hyprcursor.
  gnu: Add hyprland.
  gnu: Add hyprpicker.
  gnu: Add grimblast.

John Kehayias (2):
  gnu: Add hyprutils.
  gnu: Add aquamarine.

Ryan Schanzenbacher (1):
  gnu: Add xdg-desktop-portal-hyprland.

 gnu/packages/cpp.scm         |  47 ++++++++++++
 gnu/packages/engineering.scm |  28 +++++++
 gnu/packages/freedesktop.scm |  97 ++++++++++++++++++++++++
 gnu/packages/wm.scm          | 139 +++++++++++++++++++++++++++++++++++
 gnu/packages/xdisorg.scm     | 107 +++++++++++++++++++++++++++
 5 files changed, 418 insertions(+)


base-commit: f5ca62fcadf7a1a61cb13dc89edcfd3e9884e9e0
--
2.46.0




^ permalink raw reply	[flat|nested] 16+ messages in thread

* [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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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; 16+ 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] 16+ 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
  0 siblings, 0 replies; 16+ 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] 16+ messages in thread

* [bug#74223] [PATCH 00/11] gnu: Add hyprland.
  2024-11-06 20:24 ` Noé Lopez via Guix-patches via
@ 2024-11-08  9:16   ` Hilton Chain via Guix-patches via
  0 siblings, 0 replies; 16+ messages in thread
From: Hilton Chain via Guix-patches via @ 2024-11-08  9:16 UTC (permalink / raw)
  To: Noé Lopez; +Cc: 74223

Hi Noé,

On Thu, 07 Nov 2024 04:24:35 +0800,
Noé Lopez wrote:
>
> 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?


Thanks




^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-11-08  9:52 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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 ` [bug#74223] [PATCH 03/11] gnu: Add hyprwayland-scanner 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
2024-11-06  7:36 ` [bug#74223] [PATCH 05/11] gnu: Add hyprlang 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
2024-11-06  7:36 ` [bug#74223] [PATCH 07/11] gnu: Add aquamarine 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
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 ` [bug#74223] [PATCH 10/11] gnu: Add hyprpicker 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
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-06 20:24 ` Noé Lopez via Guix-patches via
2024-11-08  9:16   ` Hilton Chain via Guix-patches via

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.