summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/ibus.scm44
-rw-r--r--gnu/packages/patches/ibus-table-paths.patch38
3 files changed, 83 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index c603c15d6c..77707127a7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -899,6 +899,7 @@ dist_patch_DATA = \
%D%/packages/patches/akonadi-timestamps.patch \
%D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \
%D%/packages/patches/ibus-anthy-fix-tests.patch \
+ %D%/packages/patches/ibus-table-paths.patch \
%D%/packages/patches/anki-mpv-args.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm
index 1182b6ba69..4d99ef39f6 100644
--- a/gnu/packages/ibus.scm
+++ b/gnu/packages/ibus.scm
@@ -906,6 +906,50 @@ hanja dictionary and small hangul character classification.")
"ibus-hangul is a Korean input method engine for IBus.")
(license gpl2+)))
+(define-public ibus-table
+ (package
+ (name "ibus-table")
+ (version "1.17.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/mike-fabian/ibus-table/releases/download/"
+ version "/ibus-table-" version ".tar.gz"))
+ (sha256
+ (base32 "063ba4fwk04lh0naj8z9r9x15ikckp94pd3f8xn40z3lnwsjx2sj"))
+ (patches (search-patches "ibus-table-paths.patch"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-paths
+ (lambda _
+ (substitute* "engine/tabcreatedb.py"
+ (("/usr/share/ibus-table")
+ (string-append #$output "/share/ibus-table")))
+ (substitute* "engine/ibus_table_location.py"
+ (("/usr/share/ibus-table")
+ (string-append #$output "/share/ibus-table"))
+ (("/usr/libexec")
+ (string-append #$output "/libexec")))))
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))))))) ; tests write to $HOME
+ (native-inputs (list (list glib "bin") pkg-config))
+ (inputs (list glib gtk+ ibus python python-pygobject))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "IBUS_TABLE_LOCATION")
+ (files '("share/ibus-table"))
+ (separator #f))))
+ (home-page "https://mike-fabian.github.io/ibus-table")
+ (synopsis "Table based input framework for IBus")
+ (description
+ "@code{ibus-table} is a framework for table based input methods using
+IBus.")
+ (license lgpl2.1+)))
+
(define-public ibus-speech-to-text
(package
(name "ibus-speech-to-text")
diff --git a/gnu/packages/patches/ibus-table-paths.patch b/gnu/packages/patches/ibus-table-paths.patch
new file mode 100644
index 0000000000..bc0c5e78e1
--- /dev/null
+++ b/gnu/packages/patches/ibus-table-paths.patch
@@ -0,0 +1,38 @@
+diff --git a/engine/ibus-engine-table.in b/engine/ibus-engine-table.in
+index e79d62a6cad4..675007204abd 100644
+--- a/engine/ibus-engine-table.in
++++ b/engine/ibus-engine-table.in
+@@ -24,8 +24,6 @@ prefix=@prefix@
+ exec_prefix=@prefix@
+ datarootdir=@datarootdir@
+ datadir=@datadir@
+-export IBUS_TABLE_LOCATION=@datarootdir@/ibus-table
+-export IBUS_TABLE_LIB_LOCATION=@libexecdir@
+
+ # Set this variable to something > 0 to get more debug output.
+ # (Debug output may show up in the log file and/or in the lookup table):
+diff --git a/engine/ibus-table-createdb.in b/engine/ibus-table-createdb.in
+index 91eb28b7cbe5..187dddf2c952 100644
+--- a/engine/ibus-table-createdb.in
++++ b/engine/ibus-table-createdb.in
+@@ -24,6 +24,4 @@ exec_prefix=@exec_prefix@
+ bindir=@bindir@
+ datarootdir=@datarootdir@
+ datadir=@datadir@
+-export IBUS_TABLE_DATA_DIR=@datarootdir@
+-export IBUS_TABLE_BIN_PATH=@bindir@
+ exec @PYTHON@ @datarootdir@/ibus-table/engine/tabcreatedb.py $@
+diff --git a/setup/ibus-setup-table.in b/setup/ibus-setup-table.in
+index 7f7405c37296..ae6f96921c56 100644
+--- a/setup/ibus-setup-table.in
++++ b/setup/ibus-setup-table.in
+@@ -22,9 +22,6 @@
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ datarootdir=@datarootdir@
+-export IBUS_PREFIX=@prefix@
+-export IBUS_DATAROOTDIR=@datarootdir@
+-export IBUS_LOCALEDIR=@localedir@
+ cd @prefix@/share/ibus-table/setup/
+ exec @PYTHON@ main.py $@
+