summary refs log tree commit diff
path: root/gnu/packages/education.scm
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2016-12-31 15:48:22 +0100
committerHartmut Goebel <h.goebel@crazy-compilers.com>2017-01-14 20:13:06 +0100
commitb84257c0ffaa26b635f6a617d28da4b7edf26442 (patch)
tree5ce2d96fe34df2f68e5991847f5c4d46e47b63cf /gnu/packages/education.scm
parented824a36c453c31118bb54e4d4349e5dc6907b83 (diff)
downloadguix-b84257c0ffaa26b635f6a617d28da4b7edf26442.tar.gz
gnu: Add tipp10 touch typing tutor.
* gnu/packages/education.scm (touch10): New variable.
* gnu/packages/patches/tipp10-fix-compiling.patch,
  gnu/packages/patches/tipp10-remove-license-code.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
Diffstat (limited to 'gnu/packages/education.scm')
-rw-r--r--gnu/packages/education.scm58
1 files changed, 58 insertions, 0 deletions
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 3a883079fe..43e73a0e0d 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -138,3 +139,60 @@ of categories with some of the activities available in that category.
 @end enumerate
 ")
     (license license:gpl3+)))
+
+(define-public tipp10
+  (package
+    (name "tipp10")
+    (version "2.1.0")
+    (source (origin
+              (method url-fetch)
+              ;; guix download is not able to handle the download links on the
+              ;; home-page, which use '<meta http-equiv="refresh" …>'
+              (uri (string-append "mirror://debian/pool/main/"
+                                  "t/tipp10/tipp10_2.1.0.orig.tar.gz"))
+              (sha256
+               (base32
+                "0d387b404j88gsv6kv0rb7wxr23v5g5vl6s5l7602x8pxf7slbbx"))
+              (patches (search-patches "tipp10-fix-compiling.patch"
+                                       "tipp10-remove-license-code.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; packages has no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'disable-new-version-check
+          (lambda _
+            ;; Make new version check to default to false.
+            ;; TODO: Remove the checkbox from the dialog and the check itself
+            (substitute* '("widget/settingspages.cpp" "widget/mainwindow.cpp")
+              (("settings.value(\"check_new_version\", true)")
+               "settings.value(\"check_new_version\", false)"))))
+         (replace 'configure
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let ((out (assoc-ref outputs "out")))
+              ;; Make program honor $PREFIX
+              (substitute* "tipp10.pro"
+                (("\\.path = /usr/") (string-append ".path = " out "/")))
+              (substitute* "def/defines.h"
+                (("\"/usr/") (string-append "\"" out "/")))
+              ;; Recreate Makefile
+              (zero? (system* "qmake"))))))))
+    (inputs
+     `(("qt4" ,qt-4)
+       ("sqlite" ,sqlite)))
+    (home-page "https://www.tipp10.com/")
+    (synopsis "Touch typing tutor")
+    (description "Tipp10 is a touch typing tutor for Windows, Mac OS and
+Linux.  The ingenious thing about the software is its intelligence feature:
+Characters that are mistyped are repeated more frequently.  Beginners will
+find their way around right away so they can start practicing without a hitch.
+
+Useful support functions and an extensive progress tracker, topical lessons
+and the ability to create your own practice lessons make learning to type
+easy.
+
+Note: To change the language settings choose Datei (File) →
+Grundeinstellungen (Generell Settings) → Sprache (Language) and change from
+Deutsch to English. The you have restart the program to have the change take
+effect.")
+    (license license:gpl2)))