|
@@ -6,19 +6,18 @@
|
|
|
|
|
|
# If run from macOS, load defaults from webui-macos-env.sh
|
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
|
- if [[ -f webui-macos-env.sh ]]
|
|
|
+ if [[ -f "$(dirname $0)/webui-macos-env.sh" ]]
|
|
|
then
|
|
|
- source ./webui-macos-env.sh
|
|
|
+ source "$(dirname $0)/webui-macos-env.sh"
|
|
|
fi
|
|
|
fi
|
|
|
|
|
|
# Read variables from webui-user.sh
|
|
|
# shellcheck source=/dev/null
|
|
|
-if [[ -f webui-user.sh ]]
|
|
|
+if [[ -f "$(dirname $0)/webui-user.sh" ]]
|
|
|
then
|
|
|
- source ./webui-user.sh
|
|
|
+ source "$(dirname $0)/webui-user.sh"
|
|
|
fi
|
|
|
-
|
|
|
# Set defaults
|
|
|
# Install directory without trailing slash
|
|
|
if [[ -z "${install_dir}" ]]
|
|
@@ -47,12 +46,12 @@ fi
|
|
|
# python3 venv without trailing slash (defaults to ${install_dir}/${clone_dir}/venv)
|
|
|
if [[ -z "${venv_dir}" ]]
|
|
|
then
|
|
|
- venv_dir="venv"
|
|
|
+ venv_dir="${install_dir}/${clone_dir}/venv"
|
|
|
fi
|
|
|
|
|
|
if [[ -z "${LAUNCH_SCRIPT}" ]]
|
|
|
then
|
|
|
- LAUNCH_SCRIPT="launch.py"
|
|
|
+ LAUNCH_SCRIPT="${install_dir}/${clone_dir}/launch.py"
|
|
|
fi
|
|
|
|
|
|
# this script cannot be run as root by default
|
|
@@ -140,22 +139,23 @@ then
|
|
|
exit 1
|
|
|
fi
|
|
|
|
|
|
-cd "${install_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/, aborting...\e[0m" "${install_dir}"; exit 1; }
|
|
|
-if [[ -d "${clone_dir}" ]]
|
|
|
+if [[ ! -d "${install_dir}/${clone_dir}" ]]
|
|
|
then
|
|
|
- cd "${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
|
|
|
-else
|
|
|
printf "\n%s\n" "${delimiter}"
|
|
|
printf "Clone stable-diffusion-webui"
|
|
|
printf "\n%s\n" "${delimiter}"
|
|
|
- "${GIT}" clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git "${clone_dir}"
|
|
|
- cd "${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
|
|
|
+ mkdir -p "${install_dir}"
|
|
|
+ "${GIT}" clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git "${install_dir}/${clone_dir}"
|
|
|
fi
|
|
|
|
|
|
printf "\n%s\n" "${delimiter}"
|
|
|
printf "Create and activate python venv"
|
|
|
printf "\n%s\n" "${delimiter}"
|
|
|
-cd "${install_dir}"/"${clone_dir}"/ || { printf "\e[1m\e[31mERROR: Can't cd to %s/%s/, aborting...\e[0m" "${install_dir}" "${clone_dir}"; exit 1; }
|
|
|
+# Make venv_dir absolute
|
|
|
+if [[ "${venv_dir}" != /* ]]
|
|
|
+then
|
|
|
+ venv_dir="${install_dir}/${clone_dir}/${venv_dir}"
|
|
|
+fi
|
|
|
if [[ ! -d "${venv_dir}" ]]
|
|
|
then
|
|
|
"${python_cmd}" -m venv "${venv_dir}"
|