~ruther/guix-local

593cd7f73f4079beb4ac2e0641891e69c659a36a — Gabriel Santos 1 year, 1 month ago d2d02fa
gnu: Add xiphos.

* gnu/packages/books.scm (xiphos): New variable.
* gnu/packages/patches/xiphos-glib.patch: New file.
* gnu/local.mk (dist_PATCH_DATA): Add it.

Change-Id: I17f3e14c7721887fcb1852e7f07e80fc48d48a79
Signed-off-by: Andreas Enge <andreas@enge.fr>
3 files changed, 102 insertions(+), 1 deletions(-)

M gnu/local.mk
M gnu/packages/books.scm
A gnu/packages/patches/xiphos-glib.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 2460,6 2460,7 @@ dist_patch_DATA =						\
  %D%/packages/patches/xfce4-settings-defaults.patch		\
  %D%/packages/patches/xgboost-use-system-dmlc-core.patch	\
  %D%/packages/patches/xinit-startx-mcookie-path.patch		\
  %D%/packages/patches/xiphos-glib.patch                        \
  %D%/packages/patches/xmonad-dynamic-linking.patch		\
  %D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch		\
  %D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch	\

M gnu/packages/books.scm => gnu/packages/books.scm +58 -1
@@ 31,18 31,29 @@
  #:use-module (gnu packages autotools)
  #:use-module (gnu packages base)
  #:use-module (gnu packages bash)
  #:use-module (gnu packages cpp)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages curl)
  #:use-module (gnu packages fonts)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages freedesktop)
  #:use-module (gnu packages gettext)
  #:use-module (gnu packages glib)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages gnome)
  #:use-module (gnu packages inkscape)
  #:use-module (gnu packages icu4c)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages music)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages python)
  #:use-module (gnu packages python-xyz)
  #:use-module (gnu packages tex)
  #:use-module (gnu packages texlive)
  #:use-module (gnu packages version-control))
  #:use-module (gnu packages version-control)
  #:use-module (gnu packages webkit)
  #:use-module (gnu packages xml))

(define-public book-sparc
  (package


@@ 170,3 181,49 @@ is available in Russian and English.")
     "The SWORD Project is a free Bible software project used to create Bible
software, with support for multiple texts and languages.")
    (license license:gpl2+)))

(define-public xiphos
  (package
    (name "xiphos")
    (version "4.3.2")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/crosswire/xiphos")
             (commit version)))
       (sha256
        (base32 "15p8ahbcd8vjm1ch0wahjfj20agd06va8rvgw1awnyzkcw2xsf8x"))
       (patches (search-patches "xiphos-glib.patch"))
       (file-name (git-file-name name version))))
    (build-system cmake-build-system)
    (native-inputs (list appstream
                         appstream-glib
                         atk
                         biblesync
                         desktop-file-utils ;for 'desktop-file-validate'
                         (list glib "bin")
                         gettext-minimal
                         gsettings-desktop-schemas
                         gtk+
                         libgsf
                         minizip
                         pkg-config
                         sword
                         util-linux ;for 'uuidgen'
                         (list util-linux "lib") ;for 'libuuid'
                         webkitgtk-with-libsoup2
                         yelp-tools
                         zip))
    (inputs (list dbus dbus-glib libxml2 python python-lxml))
    (arguments
     (list
      #:tests? #f)) ;No tests
    (home-page "https://xiphos.org/")
    (synopsis "Open Source Bible Study Software")
    (description
     "Xiphos is a Bible study tool using GTK.  It uses Sword to
display bibles, commentaries, dictionaries, and other texts and images.
Xiphos includes features such as searching, biblesync, bookmarks,
parallel study, and original language study.")
    (license license:gpl2+)))

A gnu/packages/patches/xiphos-glib.patch => gnu/packages/patches/xiphos-glib.patch +43 -0
@@ 0,0 1,43 @@
This patch has already been upstreamed, see: <https://github.com/crosswire/xiphos/pull/1103>.
It should be removed once Xiphos updates.

From 0e9e686c902935c0f00afdf9d0d45f9635995988 Mon Sep 17 00:00:00 2001
From: Jan Tojnar <jtojnar@gmail.com>
Date: Sat, 15 Jan 2022 05:00:37 +0100
Subject: [PATCH] Add dbus-glib dependency to main

It is required through the ipc header and the build will fail without it on Nix:

	In file included from /build/source/src/main/search_sidebar.cc:48:
	/build/source/src/gui/ipc.h:26:10: fatal error: dbus/dbus-glib.h: No such file or directory
	   26 | #include <dbus/dbus-glib.h>
	      |          ^~~~~~~~~~~~~~~~~~
	compilation terminated.
---
 src/main/CMakeLists.txt | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/main/CMakeLists.txt b/src/main/CMakeLists.txt
index 49b86371..bb8e4bb6 100644
--- a/src/main/CMakeLists.txt
+++ b/src/main/CMakeLists.txt
@@ -75,7 +75,18 @@ target_link_libraries(main
   PkgConfig::Soup
   PkgConfig::Sword
   PkgConfig::Biblesync
-  )
+)
+
+IF (DBUS)
+  target_include_directories (main
+    PRIVATE ${CMAKE_CURRENT_BINARY_DIR}
+    PkgConfig::DBus
+    )
+  target_link_libraries(main
+    PRIVATE
+    PkgConfig::DBus
+    )
+ENDIF (DBUS)
 
 if(WK_FOUND)
   target_compile_definitions(main
\ No newline at end of file