diff mbox series

[bug#44400,v4] : gnu: Add phosh.

Message ID zt0WQEBDCQ9SETrWHHx7f1ugXwdr0RKlAJanF6KxqWMSKZjjgYAKVAo3gXpnfT5aEEFavuDEwT4zM9iYggY0nSb6AK43IAjVeoHDk7MhijM=@protonmail.com
State New
Headers show
Series [bug#44400,v4] : gnu: Add phosh. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

phodina Aug. 14, 2022, 8 p.m. UTC
Hi Jonathan and Efraim,

I had time to look into these patches. I added all the neccessary packages for squeekboard and updated the system packages.

However, there is still issue with the build as squeekboard fails to build on missing function implementation. [1]

Efraim, could you please help with the features error? I checked other Guix rust packages but didn't get any hint.

[1] https://gitlab.gnome.org/World/Phosh/squeekboard/-/issues/349

----
Petr
diff mbox series

Patch

From 14d3472eee34b880825447e1a7c9d7f216287880 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Mon, 27 Dec 2021 20:23:25 +0100
Subject: [PATCH v4 37/38] gnu: Add squeekboard.

* gnu/packages/gnome.scm (squeekboard): New variable.

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 7f7bf28bfb..5b2f26ad12 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -570,6 +570,71 @@  (define-public seed
     (home-page "https://wiki.gnome.org/Projects/Seed")
     (license license:lgpl2.0+)))
 
+(define-public squeekboard
+  (package
+    (name "squeekboard")
+    (version "1.19.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.gnome.org/World/Phosh/squeekboard")
+                    (commit (string-append "v" version))))
+              (sha256
+               (base32
+                "01fxcg7c7cr2xbywn1yhppqx9q8gy5yafl7gnfd3bmnl9z5smq8m"))))
+    (build-system cargo-build-system)
+    (arguments
+     (list #:modules '((ice-9 match)
+                       (ice-9 rdelim)
+                       (guix build cargo-build-system)
+                       (guix build utils))
+           #:cargo-inputs `(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+                            ("rust-bitflags" ,rust-bitflags-1.2)
+                            ("rust-gtk-sys" ,rust-gtk-sys-0.14)
+                            ("rust-gtk" ,rust-gtk-0.14)
+                            ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.14)
+                            ("rust-cairo-rs" ,rust-cairo-rs-0.14)
+                            ("rust-gdk" ,rust-gdk-0.14)
+                            ("rust-gio-sys" ,rust-gio-sys-0.14)
+                            ("rust-gio" ,rust-gio-0.14)
+                            ("rust-clap" ,rust-clap-3)
+                            ("rust-maplit" ,rust-maplit-1)
+                            ("rust-serde" ,rust-serde-1)
+                            ("rust-serde-yaml" ,rust-serde-yaml-0.8)
+                            ("rust-xkbcommon" ,rust-xkbcommon-0.4)
+                            ("rust-zbus" ,rust-zbus-1))
+           #:features `(list "glib_v0_14")
+           #:phases #~(modify-phases %standard-phases
+                        (add-after 'unpack 'create-cargo-toml
+                          (lambda* _
+                            (let* ((cargo-in (call-with-input-file "Cargo.toml.in"
+                                               read-string))
+                                   (cargo-dep (call-with-input-file "Cargo.deps.newer"
+                                                read-string)))
+                              (rename-file "data/style-Adwaita:dark.css"
+                                           "data/style-Adwaita.dark.css")
+                              (with-output-to-file "Cargo.toml"
+                                (lambda ()
+                                  (display (string-append cargo-in cargo-dep))))
+                              (substitute* "Cargo.toml"
+                                (("@path@/")
+                                 ""))
+                              (chmod "Cargo.toml" 365)))))))
+    (native-inputs (list python wayland-protocols pkg-config))
+    (inputs (list atk
+                  gtk+
+                  libxml2
+                  libxkbcommon
+                  feedbackd
+                  glib
+                  dbus
+                  wayland))
+    (home-page "https://gitlab.gnome.org/World/Phosh/squeekboard")
+    (synopsis "On-screen-keyboard input method for Wayland")
+    (description "This package provides an on-screen-keyboard input
+	method for Wayland.")
+    (license license:gpl3+)))
+
 (define-public libdmapsharing
   (package
     (name "libdmapsharing")
-- 
2.36.1