Subject: [PATCH] gnu: Add libdecor.

From: aurtzy <[email-masked]>
Date: Thu, 18 Apr 2024 22:10:56 -0400

* gnu/packages/xorg.scm (libdecor): New variable.

Change-Id: Ic8d8886a55ae344fafbe16288a1180c89fa36af1
---

Is this a reasonable location for libdecor?  I had trouble deciding between
(gnu packages xorg) and (gnu packages xdisorg), but even then I wasn't sure if
it belonged in either.

 gnu/packages/xorg.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 81d8462761..4fd4c3eece 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -38,6 +38,8 @@
 ;;; Copyright © 2023 Janneke Nieuwenhuizen <[email-masked]>
 ;;; Copyright © 2023, 2024 John Kehayias <[email-masked]>
 ;;; Copyright © 2023, 2024 Kaelyn Takata <[email-masked]>
+;;; Copyright © 2022 Samuel Culpepper <[email-masked]>
+;;; Copyright © 2024 aurtzy <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -74,6 +76,7 @@ (define-module (gnu packages xorg)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
   #:use-module (gnu packages cups)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages emacs)
@@ -6773,3 +6776,35 @@ (define-public setroot
 syntax without its image viewing capabilities.  It supports multiple monitors
 and can restore previously set wallpapers and options.")
     (license license:gpl3+)))
+
+(define-public libdecor
+  (package
+    (name "libdecor")
+    (version "0.2.2")
+    (source
+     (origin (method git-fetch)
+             (uri (git-reference
+                   (url "https://gitlab.freedesktop.org/libdecor/libdecor")
+                   (commit version)))
+             (file-name (git-file-name name version))
+             (sha256
+              (base32
+               "05rxchwzhnkm91kcr30mavizkp25wgjlhb6lcraa456pw7vgb04q"))))
+    (build-system meson-build-system)
+    (native-inputs (list cmake
+                         pkg-config))
+    (inputs (list cairo
+                  dbus
+                  egl-wayland
+                  gtk+
+                  libglvnd
+                  libxkbcommon
+                  pango
+                  wayland
+                  wayland-protocols))
+    (home-page "https://gitlab.freedesktop.org/libdecor/libdecor")
+    (synopsis "Client-side decorations library for Wayland clients")
+    (description "libdecor is a library that can help Wayland clients draw
+window decorations for them.  It aims to provide multiple backends that
+implements the decoration drawing.")
+    (license license:expat)))

base-commit: 49f82fca4130ffcfb16aa0cf89750ab56fb99ad7
-- 
2.41.0