gnu: Add fcitx5-gtk4.
* gnu/packages/fcitx5.scm (fcitx5-gtk4): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>master
parent
ef3cae59a2
commit
287b98031f
|
@ -252,6 +252,50 @@ IM module for GTK+3 applications.
|
||||||
@end table")
|
@end table")
|
||||||
(license license:lgpl2.1+)))
|
(license license:lgpl2.1+)))
|
||||||
|
|
||||||
|
;; XXX: This package is separated from fcitx5-gtk for following reasons.
|
||||||
|
;; 1. GTK4 has a lot more dependencies, some of which maybe unavailable on
|
||||||
|
;; platforms other than x86_64. See <https://issues.guix.gnu.org/53648>.
|
||||||
|
;; 2. GTK4 now propagates pango@1.50, it will conflict with GTK3 and GTK2
|
||||||
|
;; (propagates pango@1.48) if they're all in the inputs of same package.
|
||||||
|
;; See <https://issues.guix.gnu.org/54261>.
|
||||||
|
(define-public fcitx5-gtk4
|
||||||
|
(package
|
||||||
|
(inherit fcitx5-gtk)
|
||||||
|
(name "fcitx5-gtk4")
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:tests? #f ;No test
|
||||||
|
#:configure-flags
|
||||||
|
#~(list (string-append "-DCMAKE_CXX_FLAGS=-I"
|
||||||
|
#$(this-package-input "fcitx5-gtk")
|
||||||
|
"/include/Fcitx5/GClient")
|
||||||
|
"-DENABLE_GTK2_IM_MODULE=OFF"
|
||||||
|
"-DENABLE_GTK3_IM_MODULE=OFF")
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-before 'configure 'fix-gclient
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(define gclient
|
||||||
|
(search-input-file inputs "lib/libFcitx5GClient.so"))
|
||||||
|
;; Force cmake search libFcitx5GClient.so in library search
|
||||||
|
;; path instead of compiling again.
|
||||||
|
(substitute* "gtk4/CMakeLists.txt"
|
||||||
|
(("Fcitx5::GClient")
|
||||||
|
gclient))))
|
||||||
|
(add-before 'build 'enter-gtk4-subdirectory
|
||||||
|
(lambda _
|
||||||
|
(chdir "gtk4")))
|
||||||
|
(add-after 'install 'leave-gtk4-subdirectory
|
||||||
|
(lambda _
|
||||||
|
(chdir ".."))))))
|
||||||
|
(inputs
|
||||||
|
(modify-inputs (package-inputs fcitx5-gtk)
|
||||||
|
(delete "gtk+")
|
||||||
|
(prepend fcitx5-gtk gtk)))
|
||||||
|
(outputs '("out"))
|
||||||
|
(synopsis "GTK4 IM module for Fcitx 5")
|
||||||
|
(description "Fcitx5-gtk4 provides IM module for GTK4 applications.")))
|
||||||
|
|
||||||
(define-public fcitx5-qt
|
(define-public fcitx5-qt
|
||||||
(package
|
(package
|
||||||
(name "fcitx5-qt")
|
(name "fcitx5-qt")
|
||||||
|
|
Reference in New Issue