We currently support Linux & Mac OS X. On Windows it is tricky to set up an environment that works reliably with compilers for building some dependencies. From our experience it’s much easier to just install Linux and use the Snap.
The easiest way to get Mesmerize is through the Snap Store. You can also install from the GitHub repo.
Command line snap installation:
sudo snap install mesmerize
After installation simply run
mesmerize in the terminal and the application will launch in ~10-30 seconds. Make sure your PYTHONPATH environment variable is empty otherwise it might conflict with the snap:
You can also open an ipython console in the snap environment:
You might get the following warnings when you launch the snap, this is normal. Just be patient and wait a few minutes:
Make sure you have
snapd installed, which is required for running snap apps.
Ubuntu 16.04 and later usually come pre-installed with snapd.
You should be able to install
snapd through apt for most Debian based distros:
sudo apt update sudo apt install snapd
snapd on Fedora:
sudo dnf install snapd
snapd on other distros please see: https://docs.snapcraft.io/installing-snapd
If you have trouble installing Mesmerize via snap you might need to install core18 first:
sudo snap install core18
The snap installation has several limitations, most importantly you will not be able to access arbitrary filesystems. If you need this you will have to install directly from the repo (see From GitHub). If you are able to mount your external filesystem in /media (or wherever your distro places removeable media) then you should be able to access these filesystems if you do the following:
sudo snap connect mesmerize:removable-media
Alternatively you can install the snap in devmode (gives that snap broad access to the system):
sudo snap install mesmerize --devmode
Analysis graphs do not work in the snap version at the moment.
First, make sure you have compilers & python.
For Debian & Ubuntu based distros
Get build tools and other things:
sudo apt-get install build-essential
For other distros look for the equivalent meta-package that contains gcc, glibc, etc.
If you don’t have python3.6:
sudo apt-get install python3.6
For other distros lookup how to install python3.6 through their package manager.
sudo apt-get install qt5-default tcl graphviz git
For other distros these packages probably have the same or similar names.
Create a virtual environment & install Mesmerize
Create a virtual environment:
# Choose a path to house the virtual environment python3.6 -m venv /path/to/venv
Activate the virtual environment:
Clone the repo:
git clone https://github.com/kushalkolar/MESmerize.git
cd & switch to the snap branch:
cd MESmerize git checkout snap
Install some build dependencies:
pip install Cython numpy python-dateutil
Install remaining dependencies:
pip install -r requirements.txt
Build some things:
python setup.py build_ext -i
Add to PYTHONPATH environment variable. You will always need to add the path to MESmerize to the PYTHONPATH environment varible before launching.:
This requires Anaconda and will install Mesmerize in an Anaconda environment. Tested on macOS Catalina 10.15.1
Download Anaconda for Python 3: https://www.anaconda.com/distribution/
First make sure you have xcode:
This might take a while.
Create an environment & install Mesmerize
Create a new environment using python 3.6:
conda create --name mesmerize python=3.6
Enter the environment:
source activate mesmerize
Install cython, numpy and pandas:
conda install cython numpy pandas
Clone the mesmerize repo and enter it:
git clone https://github.com/kushalkolar/MESmerize.git cd MESmerize
Checkout the snap branch:
git checkout snap
Install more dependencies:
pip install -r requirements.txt
CFLAGS='-stdlib=libc++' python setup.py build_ext -i
Export the path to the MESmerize repo directory:
Launch. It may take a few minutes the first time:
You might get a matplotlib error, if so execute the following which appends the default matplotlib backend-option. Note that this will probably affect matplotlib in all your environments:
echo "backend: qt5" >> ~/.matplotlib/matplotlibrc