gnu: Add gspell.

* gnu/packages/patches/gspell-dash-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gspell): New variable.

Co-authored-by: humanitiesNerd <catonano@gmail.com>
This commit is contained in:
Ludovic Courtès 2017-05-17 16:16:15 +02:00
parent 6d35b1c99c
commit 411ba51189
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 71 additions and 0 deletions

View file

@ -646,6 +646,7 @@ dist_patch_DATA = \
%D%/packages/patches/graphite2-non-linear-classes-even-number.patch \ %D%/packages/patches/graphite2-non-linear-classes-even-number.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/gsl-test-i686.patch \
%D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-default-utf8.patch \
%D%/packages/patches/guile-linux-syscalls.patch \ %D%/packages/patches/guile-linux-syscalls.patch \

View file

@ -51,6 +51,7 @@ (define-module (gnu packages gnome)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages avahi) #:use-module (gnu packages avahi)
#:use-module (gnu packages base) #:use-module (gnu packages base)
@ -6136,3 +6137,56 @@ (define-public orca
via speech and refreshable braille. Orca works with applications and toolkits via speech and refreshable braille. Orca works with applications and toolkits
that support the Assistive Technology Service Provider Interface (AT-SPI).") that support the Assistive Technology Service Provider Interface (AT-SPI).")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public gspell
(package
(name "gspell")
(version "1.3.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"1n4kd5i11l79h8bpvx3cz79ww0b4z89y99h4czvyg80qlarn585w"))
(patches (search-patches "gspell-dash-test.patch"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0")
;; Allow Enchant and its Aspell backend to find the en_US
;; dictionary.
(setenv "ASPELL_DICT_DIR"
(string-append (assoc-ref inputs "aspell-dict-en")
"/lib/aspell"))
#t)))))
(inputs
`(("enchant" ,enchant)
("iso-codes" ,iso-codes)
("gtk+" ,gtk+)
("glib" ,glib)))
(native-inputs
`(("glib" ,glib "bin")
("pkg-config" ,pkg-config)
("xmllint" ,libxml2)
;; For tests.
("xorg-server" ,xorg-server)
("aspell-dict-en" ,aspell-dict-en)))
(home-page "https://wiki.gnome.org/Projects/gspell")
(synopsis "GNOME's alternative spell checker")
(description
"gspell provides a flexible API to add spell-checking to a GTK+
application. It provides a GObject API, spell-checking to text entries and
text views, and buttons to choose the language.")
(license license:gpl2+)))

View file

@ -0,0 +1,16 @@
Somehow, Aspell 0.60.6.1 and aspell-dict-en-2016.11.20-0 don't consider
this a valid spelling. Skip it.
--- gspell-1.3.2/testsuite/test-checker.c 2017-05-17 16:02:40.832415940 +0200
+++ gspell-1.3.2/testsuite/test-checker.c 2017-05-17 16:02:50.768351895 +0200
@@ -101,9 +101,6 @@ test_dashes (void)
checker = gspell_checker_new (lang);
- correctly_spelled = gspell_checker_check_word (checker, "spell-checking", -1, &error);
- g_assert_no_error (error);
- g_assert (correctly_spelled);
correctly_spelled = gspell_checker_check_word (checker, "nrst-auie", -1, &error);
g_assert_no_error (error);