gnu: Add ktouch.

* gnu/packages/education.scm (ktouch): New variable.
master
Efraim Flashner 2019-09-10 12:48:22 +03:00
parent dece34332b
commit d2c0a7a22f
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
1 changed files with 72 additions and 0 deletions

View File

@ -36,6 +36,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages javascript)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@ -547,3 +548,74 @@ difficult timetables, it may take a longer time, a matter of hours.")
"Klavaro is a simple tutor to teach correct typing, almost independently of
language and very flexible regarding to new or unknown keyboard layouts.")
(license license:gpl3+)))
(define-public ktouch
(package
(name "ktouch")
(version "19.08.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/applications/"
version "/src/ktouch-" version ".tar.xz"))
(sha256
(base32
"19rdk94pls75hdvx11hnfk3qpm6l28p9q45q5f04sknxagrfaznr"))))
(build-system cmake-build-system)
(arguments
`(#:modules ((guix build cmake-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%cmake-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'configure 'patch-makefiles
(lambda* (#:key inputs #:allow-other-keys)
(let ((qtdec (assoc-ref inputs "qtdeclarative")))
(substitute* '("src/CMakeFiles/ktouch_autogen.dir/build.make"
"src/CMakeFiles/ktouch.dir/build.make")
(("/gnu/store/.*qmlcachegen")
(string-append qtdec "/bin/qmlcachegen"))))
#t))
(add-after 'install 'wrap-executable
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-qt-program out "ktouch"))
#t)))))
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("kdoctools" ,kdoctools)
("pkg-config" ,pkg-config)))
(inputs
`(("kcmutils" ,kcmutils)
("kcompletion" ,kcompletion)
("kconfig" ,kconfig)
("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
("kdeclarative" ,kdeclarative)
("ki18n" ,ki18n)
("kiconthemes" ,kiconthemes)
("kitemviews" ,kitemviews)
("kqtquickcharts" ,kqtquickcharts)
("ktextwidgets" ,ktextwidgets)
("kwidgetsaddons" ,kwidgetsaddons)
("kwindowsystem" ,kwindowsystem)
("kxmlgui" ,kxmlgui)
("libxcb" ,libxcb)
("libxkbfile" ,libxkbfile)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
("qtquickcontrols2" ,qtquickcontrols2)
("qtx11extras" ,qtx11extras)
("qtxmlpatterns" ,qtxmlpatterns)))
(home-page "https://edu.kde.org/ktouch/")
(synopsis "Touch typing tutor")
(description
"KTouch is an aid for learning how to type with speed and accuracy. It
provides a sample text to type and indicates which fingers should be used for
each key. A collection of lessons are included for a wide range of different
languages and keyboard layouts, and typing statistics are used to dynamically
adjust the level of difficulty.")
(license license:gpl2)))