diff --git a/pkgs/games/mnemosyne/default.nix b/pkgs/games/mnemosyne/default.nix new file mode 100644 index 000000000000..3598cca04618 --- /dev/null +++ b/pkgs/games/mnemosyne/default.nix @@ -0,0 +1,51 @@ +{stdenv, fetchurl, pythonPackages}: +let + version = "2.2.1"; + inherit (pythonPackages) pyqt4 matplotlib cherrypy sqlite3; +in pythonPackages.buildPythonPackage rec { + name = "mnemosyne-${version}"; + src = fetchurl { + url = "http://sourceforge.net/projects/mnemosyne-proj/files/mnemosyne/${name}/Mnemosyne-${version}.tar.gz"; + sha256 = "7f5dd06a879b9ab059592355412182ee286e78e124aa25d588cacf9e4ab7c423"; + }; + pythonPath = [ + pyqt4 + matplotlib + cherrypy + sqlite3 + ]; + preConfigure = '' + substituteInPlace setup.py --replace /usr $out + substituteInPlace setup.py --replace sys.exec_prefix \"$out\" + ''; + installCommand = "python setup.py install --prefix=$out"; + meta = { + homepage = "http://mnemosyne-proj.org/"; + description = "Spaced-repetition software."; + longDescription = '' + The Mnemosyne Project has two aspects: + + * It's a free flash-card tool which optimizes your learning process. + * It's a research project into the nature of long-term memory. + + We strive to provide a clear, uncluttered piece of software, easy to use + and to understand for newbies, but still infinitely customisable through + plugins and scripts for power users. + + ## Efficient learning + + Mnemosyne uses a sophisticated algorithm to schedule the best time for + a card to come up for review. Difficult cards that you tend to forget + quickly will be scheduled more often, while Mnemosyne won't waste your + time on things you remember well. + + ## Memory research + + If you want, anonymous statistics on your learning process can be + uploaded to a central server for analysis. This data will be valuable to + study the behaviour of our memory over a very long time period. The + results will be used to improve the scheduling algorithms behind the + software even further. + ''; + }; +}