Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A stepwise protocol for running Forna locally on Linux (suit for c5a911f on Dec 2, 2015) #52

Open
fzc1997 opened this issue Oct 1, 2023 · 0 comments

Comments

@fzc1997
Copy link

fzc1997 commented Oct 1, 2023

I have successfully run Forna locally on Linux, but this took some time primarily due to compatibility issues between Forna and its dependencies, such as Forgi.

In the README, detailed version information about Forna's dependencies is not provided. After some experimentation, I found a workable solution. Here is the stepwise protocol:

  1. Create a Conda environment with the necessary packages:
conda create -qyc bioconda viennarna forgi python=2 -n forna
  1. Install additional dependencies:
conda install -qyc conda-forge flask flask-bootstrap werkzeug==0.16.0 -n forna
  1. Navigate to the site-packages directory:
cd ~/conda/envs/forna/lib/python2.7/site-packages
mv forgi forgi_backed 
  1. Download and unzip Forgi version 0.3:
wget -O forgi-0.3.zip https://codeload.github.com/ViennaRNA/forgi/zip/refs/tags/v0.3
unzip forgi-0.3.zip
mv forgi-0.3 forgi-0.3.dist-info
mv forgi-0.3.dist-info/forgi .
  1. Activate the Forna environment:
conda activate forna
  1. Download and set up Forna:
cd ~/software
wget -O forna-master.zip https://codeload.github.com/ViennaRNA/forna/zip/refs/heads/master
unzip forna-master.zip
cd forna-master
  1. Edit the 'forna_server.py' file by adding the following line before 'import forna_db as fdb':
vim forna_server.py
# Add: sys.path.append("~/software/forna-master");
# Save and quit
  1. Run the Forna server:
python forna_server.py -s -d
  1. Access Forna by visiting 127.0.0.1:8008 in your web browser.

Here is my final conda environment.yml file. Please note that the actual version of Forgi is 0.3.

name: forna
channels:
  - bioconda
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=2_gnu
  - alsa-lib=1.2.10=hd590300_0
  - appdirs=1.4.4=pyh9f0ad1d_0
  - beautifulsoup4=4.6.0=py27_0
  - biopython=1.70=np112py27_1
  - blas=1.0=mkl
  - bzip2=1.0.8=h7f98852_4
  - ca-certificates=2023.7.22=hbcca054_0
  - cairo=1.12.18=6
  - certifi=2019.11.28=py27h8c360ce_1
  - click=7.1.2=pyh9f0ad1d_0
  - cycler=0.10.0=py27_0
  - dbus=1.13.6=h5008d03_3
  - decorator=4.4.2=py_0
  - dominate=2.3.1=py27_0
  - expat=2.5.0=hcb278e6_1
  - flask=1.1.2=pyh9f0ad1d_0
  - flask-bootstrap=3.3.7.1=py_0
  - fontconfig=2.11.1=6
  - forgi=2.0.3=pyh864c0ab_1
  - freetype=2.5.5=2
  - functools32=3.2.3.2=py_3
  - future=0.18.2=py27h8c360ce_1
  - gettext=0.21.1=h27087fc_0
  - glib=2.78.0=hfc55251_0
  - glib-tools=2.78.0=hfc55251_0
  - gst-plugins-base=1.22.6=h8e1006c_1
  - gstreamer=1.22.6=h98fc4e7_1
  - icu=54.1=0
  - itsdangerous=1.1.0=py_0
  - jinja2=2.11.3=pyh44b312d_0
  - jpeg=8d=2
  - libexpat=2.5.0=hcb278e6_1
  - libffi=3.4.2=h7f98852_5
  - libgcc=7.2.0=h69d50b8_2
  - libgcc-ng=13.2.0=h807b86a_2
  - libgfortran=3.0.0=1
  - libglib=2.78.0=hebfc3b9_0
  - libgomp=13.2.0=h807b86a_2
  - libiconv=1.17=h166bdaf_0
  - libnsl=2.0.0=hd590300_1
  - libogg=1.3.4=h7f98852_1
  - libopus=1.3.1=h7f98852_1
  - libpng=1.6.39=h753d276_0
  - libsqlite=3.43.0=h2797004_0
  - libstdcxx-ng=13.2.0=h7e041cc_2
  - libvorbis=1.3.7=h9c3ff4c_0
  - libxcb=1.15=h0b41bf4_0
  - libxml2=2.9.4=0
  - libzlib=1.2.13=hd590300_5
  - logging_exceptions=0.1.8=py_0
  - markupsafe=1.1.1=py27hdf8410d_1
  - matplotlib=2.0.2=np112py27_0
  - mkl=2017.0.3=0
  - mmtf-python=1.0.2=py27_0
  - msgpack-python=0.4.8=py27_0
  - ncurses=6.4=hcb278e6_0
  - networkx=2.2=py_1
  - nodejs=6.13.1=0
  - numpy=1.12.1=py27_0
  - openssl=1.0.2u=h516909a_0
  - pandas=0.24.2=py27hf484d3e_0
  - pcre2=10.40=hc3806b6_0
  - perl=5.32.1=4_hd590300_perl5
  - pip=20.0.2=py27_1
  - pixman=0.32.6=0
  - pthread-stubs=0.4=h36c2ea0_1001
  - pycairo=1.10.0=py27_0
  - pyparsing=2.4.7=pyh9f0ad1d_0
  - pyqt=5.6.0=py27h13b7fb3_1008
  - python=2.7.18=h42bf7aa_3
  - python-dateutil=2.8.1=py_0
  - python_abi=2.7=1_cp27mu
  - pytz=2017.3=py27_3
  - qt=5.6.2=0
  - readline=8.2=h8228510_1
  - reportlab=3.2.0=py27_0
  - scipy=0.19.1=np112py27_0
  - setuptools=36.4.0=py27_1
  - sip=4.18=py27_0
  - six=1.16.0=pyh6c4a22f_0
  - sqlite=3.43.0=h2c6b66d_0
  - subprocess32=3.5.4=py27h516909a_0
  - tk=8.6.13=h2797004_0
  - viennarna=2.5.1=py27pl5321h8f2a353_1
  - visitor=0.1.3=pyh9f0ad1d_1
  - werkzeug=0.16.0=py_0
  - wheel=0.36.2=pyhd3deb0d_0
  - xorg-kbproto=1.0.7=h7f98852_1002
  - xorg-libx11=1.8.6=h8ee46fc_0
  - xorg-libxau=1.0.11=hd590300_0
  - xorg-libxdmcp=1.1.3=h7f98852_0
  - xorg-libxext=1.3.4=h0b41bf4_2
  - xorg-libxrender=0.9.11=hd590300_0
  - xorg-renderproto=0.11.1=h7f98852_1002
  - xorg-xextproto=7.3.0=h0b41bf4_1003
  - xorg-xproto=7.0.31=h7f98852_1007
  - zlib=1.2.13=hd590300_5
prefix: ~/conda/envs/forna
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant