Skip to content

Building Tellurium Spyder

Kiri Choi edited this page Jul 17, 2020 · 24 revisions

Binary installer for Tellurium Spyder is only available for Windows. For all other OSs, it is encouraged to install Tellurium Notebook or install through pip on Anaconda distros.

Windows version of Tellurium Spyder utilizes WinPython. If you are starting to configure Tellurium Spyder or wish to update WinPython, check Setting Up. If you are simply updating few packages, check Maintenance.

Setting Up

WinPython comes with either full Qt5 version or bare-bone Zero version for various Python distributions. Zero version is preferred because it is smaller and cleaner. We currently support Python 2.7 and 3.6 64-bit. Install corresponding WinPython installations. Copy settings folder to somewhere else and start installing packages listed under Required Packages using pip. Once this is done, follow the instruction below for both Python 2.7 and 3.6 versions of WinPython.

Manual Customizations

After adding specified packages, the following steps must be taken in either Windows or Mac version of Tellurium to ensure compatibility.

Spyder manual customization:

  • Contents of spyder_mod should be placed accordingly. Splash image from spyder/images must be placed in site-packages/spyder/images. These modifications to the Spyder source allow us to put customized splash images, default IPython console imports, and default code in the editor. Make sure .pth files are placed under site-packages.
  • For import plugins, check out the following page.
  • For opensbml plugins, check out the following page.
  • For rate law plugins, check out the following page.

Required Packages

Following lists the bare minimum number of packages required for Tellurium Spyder.

  • antimony
  • biopython
  • bioservices
  • bokeh
  • cobra
  • control
  • ipywidgets
  • jupyter
  • jupyterlab
  • libroadrunner
  • lmfit
  • matplotlib
  • matplotlib2tikz
  • netplotlib
  • numpy
  • pandas
  • phrasedml
  • plotly
  • pySBOL
  • rrplugins
  • sbml2matlab
  • scikit-fuzzy
  • scikit-image
  • scikit-learn
  • scikit-optimize
  • scipy
  • seaborn
  • simplesbml
  • spyder
  • spyder-opensbml
  • spyder-ratelaw
  • spyder-teimport
  • statsmodels
  • sympy
  • tecombine
  • tellurium
  • tenuml
  • tesbml
  • tesedml

Quick and Dirty Setup

Pretty much what is inside the Tellurium installation folder can be reused for releases. Simply copy the contents except the uninstaller executable to obtain a carbon copy of what was used to build the installer.

Building Binary Installers

Once packages are installed and customized, build binary installers using Inno Setup with ISSI. The .iss script is located here. The script looks for the following folders and files:

  • /settings: Spyder settings folder
  • /tellurium-examples: Folder containing tellurium example files (https://github.com/sys-bio/tellurium/tree/master/examples)
  • /TW-<Python Version>-win64-<Tellurium Version>: Folder containing WinPython
  • favicon.ico: Installer icon
  • installer_small_updated.bmp: Image used in installer
  • Tellurium_splash_installer_updated.bmp: Image used in installer

Maintenance

In many cases, updating WinPython version is not necessary. If you already set up WinPython, simply update packages you wish to update using pip, re-build the installer and release.

Uploading to SourceForge

Check this page to upload installers to SourceForge website.