This page contains a list of dependencies needed when you want to run
every single bit of OpenTeacher. In practise, only a subset is required
since most of the dependencies below are only used when developing.
Also, OpenTeacher nicely disables parts of itself when dependencies are
missing. In other words, running it with e.g. only Python 3 and PyQt5
works just fine.
Dependencies for using OpenTeacher
- espeak
- pyratemp (currently included)
- python3
- python3-chardet
- python3-enchant
- python3-pyqt5
- python3-pyqt5.qtopengl
- python3-pyqt5.qtmultimedia
- python3-pyqt5.qtquick
- python3-pyqt5.qtwebkit (or python3-pyqt5.qtwebengine)
- pyttsx (currently included)
- tesseract-ocr or cuneiform
also (file format support)
- python3-latexcodec (currently included)
- python3-pil
- libreoffice-writer
- libreoffice-calc
also (command line interface)
also (gtk ui)
- python3-gi (gobject-introspection)
also (test server, which currently does not work):
- python3-django
- django-rest-framework
Dependencies for developing OpenTeacher
- couchdb
- cython3
- gettext
- python3-babel
- python3-docutils
- python3-flask
- python3-launchpadlib
- python3-polib
- python3-pygments
- python3-pygraphviz
- python3-twisted
- python3-feedparser
- python3-cssselect
- python3-mccabe
- python3-requests
- Flask-ReCaptcha
- pydle
- jshint
(deb build only & optional:)
- python3-all-dev
- python3-stdeb
- build-essential
(when building windows/mac packages only:)
Alternative runtimes
This list of dependencies can give problems on alternative Python
runtimes. (We're currently targetting CPython 3)
Incompatible dependencies: PyPy
unsure (but they probably work as they probably don't use C extensions):
- python3-launchpadlib
- python3-polib
Incompatible dependencies: CPython 2.x
This would require some major code changes to support again, probably not worth
it.
- pydle (the IRC bot originally used only twisted)