#!/usr/bin/env bash if [ ! -d "modem" ]; then echo "Error: Run this script from the main FreeDATA directory." exit 1 fi # Common variables VENVDIR="$(pwd)/.venv" # Choose an appropriate python interpreter CHOSEN=/bin/python3 for i in python3.8 python3.9 python3.10 python3.7 do if [ -x /bin/$i ]; then CHOSEN="/bin/$i" break fi done # Verify it's there. if [ ! -x ${CHOSEN} ]; then echo "Error: ${CHOSEN} is not executable or does not exist." echo "Note: FreeDATA requires Python 3 (higher than version 3.6)." exit 1 fi # Clear the existing virtual environment. if [ -e "${VENVDIR}" ]; then ${CHOSEN} -m venv "${VENVDIR}" --clear fi # Create the virtual environment ${CHOSEN} -m venv "${VENVDIR}" # Activate the virtual environment, if needed if [ -z "${VIRTUAL_ENV}" ] || [ "${VIRTUAL_ENV}" != "${VENVDIR}" ]; then source "${VENVDIR}/activate" fi # Cease using ${CHOSEN} as the interpreter we want now is in our path. # Install packages python3 -m pip install -U pip wheel python3 -m pip install -r requirements.txt echo "" echo "Be sure to run '. $VENVDIR/activate' before starting the daemon."