-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathinstall
executable file
·70 lines (54 loc) · 2.05 KB
/
install
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/bash
function set_script_dir() {
local ORIG_DIR="$(pwd)" || return 1
local REL_SCRIPT_DIR="$(dirname ${BASH_SOURCE[0]})" || return 1
cd "${REL_SCRIPT_DIR}" || return 1
SCRIPT_DIR="$(pwd)" || return 1
cd "${ORIG_DIR}" || return 1
}
function install_conda() {
conda create --prefix "${CONDA_ENV_PREFIX}" || return 1
conda activate "${CONDA_ENV_PREFIX}" || return 1
conda install -c conda-forge -c bioconda --file \
"${SCRIPT_DIR}/conda_requirements.txt" || return 1
conda deactivate || return 1
echo "conda_wrapper: '${SCRIPT_DIR}/conda_wrapper'" \
>> "${SCRIPT_DIR}/snakemake_config.yaml" || return 1
}
function write_espresso_path() {
local ORIG_DIR="$(pwd)" || return 1
cd "${SCRIPT_DIR}/.." || return 1
local ESPRESSO_BASE_PATH="$(pwd)" || return 1
cd "${ORIG_DIR}" || return 1
local ESPRESSO_PATH="${ESPRESSO_BASE_PATH}/src"
echo "espresso_path: '${ESPRESSO_PATH}'" \
>> "${SCRIPT_DIR}/snakemake_config.yaml" || return 1
local VISUALIZATION_PATH="${ESPRESSO_BASE_PATH}/visualization"
echo "visualization_path: '${VISUALIZATION_PATH}'" \
>> "${SCRIPT_DIR}/snakemake_config.yaml" || return 1
}
function install_parasail() {
local ORIG_DIR="$(pwd)" || return 1
cd "${SCRIPT_DIR}" || return 1
conda activate "${CONDA_ENV_PREFIX}" || return 1
local ESPRESSO_PARASAIL_DIR="${SCRIPT_DIR}/../src/Parasail"
"${ESPRESSO_PARASAIL_DIR}/build" || return 1
local PARASAIL_BUILD_SO_PATH="${ESPRESSO_PARASAIL_DIR}/libparasail.so"
local PARASAIL_SCRIPTS_SO_PATH="${SCRIPT_DIR}/scripts/libparasail.so"
cp "${PARASAIL_BUILD_SO_PATH}" "${PARASAIL_SCRIPTS_SO_PATH}" || return 1
echo "libparasail_so_path: '${PARASAIL_SCRIPTS_SO_PATH}'" \
>> "${SCRIPT_DIR}/snakemake_config.yaml" || return 1
conda deactivate || return 1
cd "${ORIG_DIR}" || return 1
}
function install() {
install_conda || return 1
write_espresso_path || return 1
install_parasail || return 1
}
function main() {
set_script_dir || return 1
source "${SCRIPT_DIR}/set_env_vars.sh" || return 1
install || return 1
}
main "$@"