summary refs log tree commit diff
diff options
context:
space:
mode:
authorWamm K. D <jaft.r@outlook.com>2022-12-24 18:54:49 -0600
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-01-22 10:05:30 +0100
commitc49f2ac412de0b5671a5bf9a0461a5a52f7e09cd (patch)
tree7e98e1ac2806f011642215026fadbce9826ed731
parent1267cc97a92408ad4a4fd7859393af88f35397f4 (diff)
downloadguix-c49f2ac412de0b5671a5bf9a0461a5a52f7e09cd.tar.gz
gnu: Add libxapp.
* gnu/packages/cinnamon.scm (libxapp): New variable.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
-rw-r--r--gnu/packages/cinnamon.scm81
1 files changed, 81 insertions, 0 deletions
diff --git a/gnu/packages/cinnamon.scm b/gnu/packages/cinnamon.scm
index fe33e797e4..9093d7c0ca 100644
--- a/gnu/packages/cinnamon.scm
+++ b/gnu/packages/cinnamon.scm
@@ -23,9 +23,12 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix gexp)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (gnu packages)
+  #:use-module (gnu packages admin)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
@@ -37,6 +40,84 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages xorg))
 
+(define-public libxapp
+  (package
+    (name "libxapp")
+    (version "2.4.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/linuxmint/xapp/")
+                    (commit version)))
+              (sha256
+               (base32
+                "0cy9g0zqcbx9zscc9qavqmghfyfb8244cg299llv1ha8n6mpxl3s"))))
+    (build-system meson-build-system)
+    (arguments
+     (list
+      #:modules
+      `((guix build meson-build-system)
+        (guix build utils)
+        ((guix build python-build-system) #:prefix python:))
+      #:imported-modules
+      `(,@%meson-build-system-modules
+        (guix build python-build-system))
+      #:configure-flags
+      #~(list (string-append
+               "-Dpy-overrides-dir="
+               (python:site-packages %build-inputs %outputs) "/gi/overrides"))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'configure 'set-gtk-module-path
+            (lambda* (#:key inputs outputs #:allow-other-keys)
+              (substitute* "libxapp/meson.build"
+                (("gtk3_dep\\.get_pkgconfig_variable[(]'libdir'[)]")
+                 (string-append "'" (assoc-ref outputs "out") "/lib'")))
+
+              (substitute* "scripts/pastebin"
+                (("'nc'")
+                 (string-append "'"
+                                (search-input-file inputs "/bin/nc")
+                                "'")))
+
+              (substitute* "scripts/upload-system-info"
+                (("'inxi'")
+                 (string-append "'"
+                                (search-input-file inputs "/bin/inxi")
+                                "'"))
+                (("'/usr/bin/pastebin'")
+                 (string-append "'"
+                                (assoc-ref outputs "out")
+                                "/bin/pastebin'"))
+                (("'xdg-open'")
+                 (string-append "'"
+                                (search-input-file inputs "/bin/xdg-open")
+                                "'"))))))))
+    (inputs
+     (list dbus
+           glib                         ; for gio
+           gtk+
+           inxi-minimal                 ; used by upload-system-info
+           libdbusmenu
+           libgnomekbd
+           netcat                       ; used by pastebin
+           xdg-utils))                  ; used by upload-system-info
+    (native-inputs
+     (list gettext-minimal
+           `(,glib "bin")               ; for glib-mkenums
+           gobject-introspection
+           pkg-config
+           python
+           python-pygobject
+           vala))
+    (home-page "https://github.com/linuxmint/xapp")
+    (synopsis "Library for traditional GTK applications")
+    (description
+     "The libxapp package contains the components which are common to multiple
+GTK desktop environments (Cinnamon, MATE and Xfce) and required to implement
+cross-DE solutions.")
+    (license license:lgpl3+)))
+
 (define-public cinnamon-desktop
   (package
     (name "cinnamon-desktop")