Subject: [PATCH 2/2] gnu: Add qalculate-gtk

From: R Veera Kumar <[email-masked]>
Date: Mon, 30 Mar 2020 10:57:58 +0530

Qalculate-gtk is the GTK frontend for libqalculate.
It is a multi-purpose GUI desktop calculator.
It provides basic and advanced functionality.

Signed-off-by: R Veera Kumar <[email-masked]>
---
 gnu/packages/maths.scm | 55 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 1fa1d493fb..4716129f98 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -62,6 +62,7 @@
   #:use-module (guix utils)
   #:use-module ((guix build utils) #:select (alist-replace))
   #:use-module (guix build-system cmake)
+  #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
   #:use-module (guix build-system ruby)
@@ -5376,3 +5377,57 @@ calculations (including integrals and equations), arbitrary precision,
 uncertainity propagation, interval arithmetic, plotting and a user-friendly
 cli.")
       (license license:gpl2+))))
+
+(define-public qalculate-gtk
+  (let ((commit "87f78ab3d7ed0dedf56edc38242d559ac07b1330")
+        (revision "1"))
+    (package
+      (name "qalculate-gtk")
+      (version (git-version "3.8.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Qalculate/qalculate-gtk/")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0nsg6dzg5r7rzqr671nvrf1c50rjwpz7bxv5f20i4s7agizgv840"))))
+      (build-system glib-or-gtk-build-system)
+      (native-inputs
+       `(("pkg-config" ,pkg-config)
+         ("intltool" ,intltool)
+         ("automake" ,automake)
+         ("autoconf" ,autoconf)
+         ("libtool" ,libtool)
+         ("file" ,file)
+         ("m4" ,m4)))
+      (inputs
+       `(("gmp" ,gmp)
+         ("mpfr" ,mpfr)
+         ("libqalculate" ,libqalculate)
+         ("libxml2" ,libxml2)
+         ("glib" ,glib)
+         ("gtk+" ,gtk+)))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (delete 'bootstrap) ;; fails in autogen.sh
+           (add-before 'configure 'autogen
+             (lambda _
+               (setenv "NOCONFIGURE" "TRUE")
+               (invoke "./autogen.sh")))
+           (add-before 'check 'update-po-files ;; to pass po check
+             (lambda _
+               (with-output-to-file "po/POTFILES.skip"
+                 (lambda _ (format #t "data/shortcuts.ui~%"))))))))
+      (home-page "https://qalculate.github.io/")
+      (synopsis "Multi-purpose graphical desktop calculator")
+      (description
+       "Qalculate-gtk is the GTK frontend for libqalculate.  It is a
+multi-purpose GUI desktop calculator.  It provides basic and advanced
+functionality.  Features include customizable functions, unit calculations,
+and conversions, physical constants, symbolic calculations (including
+integrals and equations), arbitrary precision, uncertainity propagation,
+interval arithmetic, plotting and a user-friendly cli.")
+      (license license:gpl2+))))
-- 
2.26.0