diff --git a/create_node_env.sh b/create_node_env.sh new file mode 100755 index 00000000..0df2c890 --- /dev/null +++ b/create_node_env.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env sh + +if [ ! -d "gui" ]; then + echo "Error: Run this script from the main FreeDATA directory." + exit 1 +fi + +# Move into gui directory +cd gui + +# Common variables +OLDPATH=${PATH} +PATH=/usr/bin:/bin:/usr/local/bin +NPM=`which npm` +PATH=${OLDPATH} +VENVDIR="`pwd`/node_modules" +PATH_ADDITIONS="`pwd`/node_modules/bin:`pwd`/node_modules/.bin" + + +# Verify NPM exists. +if [ -z "${NPM}" -o ! -x "${NPM}" ]; then + echo "Error: ${NPM} isn't executable or doesn't exist." + exit 1 +fi + +${NPM} install n +${NPM} i + +PATH=${PATH_ADDITIONS}:${PATH} + +n stable + +echo "" +echo "Be sure to add '$PATH_ADDITIONS' to your path." diff --git a/create_python_env.sh b/create_python_env.sh new file mode 100755 index 00000000..dca3732c --- /dev/null +++ b/create_python_env.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env sh + +if [ ! -d "tnc" ]; 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." + 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}" -o "${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."