mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
0439b51a26
* partially working simple installer * works on linux * fix linux requirements files * read root environment variable in right place * fix cat invokeai.init in test workflows * fix classical cp error in test-invoke-pip.yml * respect --root argument now * untested bat installers added * windows install.bat now working fix logic to find frontend files * rename simple_install to "installer" 1. simple_install => 'installer' 2. source and binary install directories are removed * enable update scripts to update requirements - Also pin requirements to known working commits. - This may be a breaking change; exercise with caution - No functional testing performed yet! * update docs and installation requirements NOTE: This may be a breaking commit! Due to the way the installer works, I have to push to a public branch in order to do full end-to-end testing. - Updated installation docs, removing binary and source installers and substituting the "simple" unified installer. - Pin requirements for the "http:" downloads to known working commits. - Removed as much as possible the invoke-ai forks of others' repos. * fix directory path for installer * correct requirement/environment errors * exclude zip files in .gitignore * possible fix for dockerbuild * ready for torture testing - final Windows bat file tweaks - copy environments-and-requirements to the runtime directory so that the `update.sh` script can run. This is not ideal, since we lose control over the requirements. Better for the update script to pull the proper updated requirements script from the repository. * allow update.sh/update.bat to install arbitrary InvokeAI versions - Can pass the zip file path to any InvokeAI release, branch, commit or tag, and the installer will try to install it. - Updated documentation - Added Linux Python install hints. * use binary installer's :err_exit function * user diffusers 0.10.0 * added logic for CPPFLAGS on mac * improve windows install documentation - added information on a couple of gotchas I experienced during windows installation, including DLL loading errors experienced when Visual Studio C++ Redistributable was not present. * tagged to pull from 2.2.4-rc1 - also fix error of shell window closing immediately if suitable python not found Co-authored-by: mauwii <Mauwii@outlook.de>
53 lines
1.6 KiB
Bash
53 lines
1.6 KiB
Bash
#!/bin/bash
|
|
|
|
set -eu
|
|
|
|
if [ $# -ge 1 ] && [ "${1:0:4}" != "http" ]; then
|
|
echo "Usage: update.sh <release URL>.zip"
|
|
echo "Updates InvokeAI to use the indicated version of the code base."
|
|
echo "Find the zip file for the release you want, and pass it as the argument."
|
|
echo "For example update.sh https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v2.2.3.zip"
|
|
echo ""
|
|
echo "If no argument provided then will install the most recent development version, equivalent to"
|
|
echo "update.sh https://github.com/invoke-ai/InvokeAI/archive/main.zip"
|
|
exit -1
|
|
fi
|
|
|
|
INVOKE_AI_SRC=${1:-https://github.com/invoke-ai/InvokeAI/archive/main.zip}
|
|
|
|
# ensure we're in the correct folder in case user's CWD is somewhere else
|
|
scriptdir=$(dirname "$0")
|
|
cd "$scriptdir"
|
|
|
|
function _err_exit {
|
|
if test "$1" -ne 0
|
|
then
|
|
echo "Something went wrong while installing InvokeAI and/or its requirements."
|
|
echo "Update cannot continue. Please report this error to https://github.com/invoke-ai/InvokeAI/issues"
|
|
echo -e "Error code $1; Error caught was '$2'"
|
|
read -p "Press any key to exit..."
|
|
exit
|
|
fi
|
|
}
|
|
|
|
echo This script will update InvokeAI and all its dependencies from $INVOKE_AI_SRC.
|
|
echo If you do not want to do this, press control-C now!
|
|
read -p "Press any key to continue, or CTRL-C to exit..."
|
|
|
|
. .venv/bin/activate
|
|
|
|
pip install -r requirements.txt
|
|
_err_exit $? "The pip program failed to install InvokeAI's requirements."
|
|
|
|
pip install $INVOKE_AI_SRC
|
|
_err_exit $? "The pip program failed to install InvokeAI."
|
|
|
|
python .venv/bin/configure_invoke.py
|
|
_err_exit $? "The configure script failed to run successfully."
|
|
|
|
|
|
|
|
|
|
|
|
|