MiraldiLab / maxATAC

Transcription Factor Binding Prediction from ATAC-seq and scATAC-seq with Deep Neural Networks
Apache License 2.0
25 stars 8 forks source link

Build AppImage for Linux #82

Closed michael-kotliar closed 2 years ago

michael-kotliar commented 2 years ago

You can build AppImage on any OS where Docker is installed. The script supports multiple parameters to set versions for the packages to be included.

cd ./maxATAC/packaging/portable/linux
./pack_linux_docker.sh

It may ask you for your GitHub user/pass if this repository is still private. The resulted maxATAC-x86_64.AppImage will be saved in ./maxATAC/packaging/portable/linux/private To run maxATAC-x86_64.AppImage copy it to any location on Ubuntu/Linux OS and use it in the terminal as if it's just maxatac

tacazares commented 2 years ago

@michael-kotliar How should we distribute the image?

michael-kotliar commented 2 years ago

On GitHub when you create a new release you can attach any file to it. For example, here I attached several assets in addition to the source code https://github.com/Barski-lab/cwl-airflow/releases/tag/1.2.11

Also, there is AppImage hub, which I haven't used yet, or we can upload it directly to Zenodo (it should be about 600Mb file)

tacazares commented 2 years ago

I ran a test on BMI cluster with the App and had some errors. After loading a job I tried this command:

bash-4.2$ /data/miraldiNB/maxATAC/maxATAC-x86_64.AppImage
dlopen(): error loading libfuse.so.2

AppImages require FUSE to run.
You might still be able to extract the contents of this AppImage
if you run it with the --appimage-extract option.
See https://github.com/AppImage/AppImageKit/wiki/FUSE
for more information

I used the suggested extract flag and the run still failed.

bash-4.2$ /data/miraldiNB/maxATAC/maxATAC-x86_64.AppImage --appimage-extract-and-run
Traceback (most recent call last):
  File "/tmp/appimage_extracted_607b72eeeaf68608d6221b5d83a46fa6/AppRun", line 8, in <module>
    from maxatac.utilities.parser import parse_arguments, print_args
  File "/users/caz3so/.local/lib/python3.8/site-packages/maxatac/utilities/parser.py", line 16, in <module>
    from maxatac.analyses.predict import run_prediction
  File "/users/caz3so/.local/lib/python3.8/site-packages/maxatac/analyses/predict.py", line 14, in <module>
    from maxatac.utilities.prediction_tools import write_predictions_to_bigwig, \
  File "/users/caz3so/.local/lib/python3.8/site-packages/maxatac/utilities/prediction_tools.py", line 5, in <module>
    import pybedtools
  File "/users/caz3so/.local/lib/python3.8/site-packages/pybedtools/__init__.py", line 8, in <module>
    from .cbedtools import (
ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /users/caz3so/.local/lib/python3.8/site-packages/pybedtools/cbedtools.cpython-38-x86_64-linux-gnu.so)