From 65f87d8c898e48406164574af9b5a737c1148544 Mon Sep 17 00:00:00 2001 From: Alex Kotlar Date: Thu, 7 Sep 2023 11:36:00 -0400 Subject: [PATCH] Improve INSTALL.md; remove apt update from install-apt.sh --- INSTALL.md | 53 ++++++++++++++++++++++++++----------- install/install-apt-deps.sh | 3 +-- 2 files changed, 39 insertions(+), 17 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index b4d08280a..359040fb9 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,10 +1,8 @@ -# Bystro installation - For most users, we recommend not installing the software, and using https://bystro.io, where the software is hosted -The web app provides full functionality for any size experiment (up to 890GB uncompressed/129GB compressed tested), a convenient search interface, and excellent performance +The web app provides full functionality for any size experiment, a convenient search interface, and excellent performance -## Docker +# Installing Bystro using Docker ###### The recommended way to use Bystro on the command line @@ -19,29 +17,54 @@ docker run bystro bystro-annotate.pl #Annotate docker run bystro bystro-build.pl #Build ``` -## Installation on RPM-based distros +# Direct (non-Docker) installation -###### (Fedora, Redhat, Centos, openSUSE, Mandriva) +There are 2 components to Bystro: + 1. The Bystro annotator: a Perl program accessed through the command line (via bin/bystro-*) + 2. The Bystro Python package: where the rest of Bystro's functionality lives (statistics, proteomics, etc). -1. `git clone https://github.com/akotlar/bystro.git && cd bystro && source ./install-rpm.sh` +## Installing the Bystro annotator (Perl/cli) + +##### (Fedora, Redhat, Centos, openSUSE, Mandriva) -## Installation on MacOS +1. `git clone https://github.com/akotlar/bystro.git && cd bystro && source ./install-rpm.sh` -###### (tested on HighSierra, interactive) +##### MacOS (tested on HighSierra, interactive) 1. `git clone https://github.com/akotlar/bystro.git && cd bystro && source ./install-mac.sh` -## Installation on Debian systems +##### Ubuntu +1. Ensure that packages are up to date (`sudo apt update`), or that you are satisified with the state of package versions. +2. `git clone https://github.com/akotlar/bystro.git && cd bystro && source ./install-apt.sh` + - Please note that this installation script requires root priveleges, in order to install system dependencies + +## Installing the Bystro Python libraries and cli tools + +We recommend using Miniconda to manage Bystro Python dependencies: https://docs.conda.io/projects/miniconda/en/latest/ -###### (Ubuntu) +Once Bystro annotator installation is complete, and assuming Conda/Miniconda has been installed, run : -1. `git clone https://github.com/akotlar/bystro.git && cd bystro && source ./install-apt.sh` +```sh +# Install Rust +curl https://sh.rustup.rs -sSf | sh -s -- -y +echo -e "\n### Bystro: Done installing Rust! Now sourcing .cargo/env for use in the current shell ###\n" +source "$HOME/.cargo/env" +# Create or activate Bystro conda environment and install all dependencies +# This assumes you are in the bystro folder +source .initialize_conda_env.sh; +``` + +to install the Python package dependencies. Then, run: +``` +# Build the Python package for local use +make build +``` -## Example of installation on RPM-based Amazon AMI (any 'yum'-capable Amazon AMI) +to intall the Bystro Python library. -Run the script found @ https://github.com/akotlar/bystro-aws +Follow the instructions below to install the Bystro annotator: -## Configuring Bystro for annotation +## Configuring the Bystro annotator Once Bystro is installed, it needs to be configured. The easiest step is choosing the species/assemblies to annotate. diff --git a/install/install-apt-deps.sh b/install/install-apt-deps.sh index 5296a56c2..70b526921 100755 --- a/install/install-apt-deps.sh +++ b/install/install-apt-deps.sh @@ -2,7 +2,6 @@ echo -e "\n\nInstalling Ubuntu/Debian (apt-get) dependencies\n"; -sudo apt update; # Installs gcc, and more; may be too much sudo apt install -y build-essential; @@ -31,4 +30,4 @@ sudo apt install -y nodejs; sudo apt install -y npm; sudo npm install -g pm2; -sudo apt install -y awscli; \ No newline at end of file +sudo apt install -y awscli;