mirror of
https://github.com/easydiffusion/easydiffusion.git
synced 2024-11-22 16:23:28 +01:00
Merge main
This commit is contained in:
commit
e99d54d1f6
@ -13,12 +13,11 @@ If you would like to contribute to this project, there is a discord for dicussio
|
|||||||
This is in-flux, but one way to get a development environment running for editing the UI of this project is:
|
This is in-flux, but one way to get a development environment running for editing the UI of this project is:
|
||||||
(swap `.sh` or `.bat` in instructions depending on your environment, and be sure to adjust any paths to match where you're working)
|
(swap `.sh` or `.bat` in instructions depending on your environment, and be sure to adjust any paths to match where you're working)
|
||||||
|
|
||||||
1) `git clone` the repository, e.g. to `/projects/stable-diffusion-ui-repo`
|
1) Install the project to a new location using the [usual installation process](https://github.com/cmdr2/stable-diffusion-ui#installation), e.g. to `/projects/stable-diffusion-ui-archive`
|
||||||
2) Download the pre-built end user archive from the link on github, and extract it, e.g. to `/projects/stable-diffusion-ui-archive`
|
2) Start the newly installed project, and check that you can view and generate images on `localhost:9000`
|
||||||
3) `cd /projects/stable-diffusion-ui-archive` and run the script to set up and start the project, e.g. `start.sh`
|
3) Next, please clone the project repository using `git clone` (e.g. to `/projects/stable-diffusion-ui-repo`)
|
||||||
4) Check you can view and generate images on `localhost:9000`
|
4) Close the server (started in step 2), and edit `/projects/stable-diffusion-ui-archive/scripts/on_env_start.sh` (or `on_env_start.bat`)
|
||||||
5) Close the server, and edit `/projects/stable-diffusion-ui-archive/scripts/on_env_start.sh`
|
5) Comment out the lines near the bottom that copies the `files/ui` folder, e.g:
|
||||||
6) Comment out the lines near the bottom that copies the `files/ui` folder, e.g:
|
|
||||||
|
|
||||||
for `.sh`
|
for `.sh`
|
||||||
```
|
```
|
||||||
@ -33,13 +32,13 @@ REM @xcopy sd-ui-files\ui ui /s /i /Y
|
|||||||
REM @copy sd-ui-files\scripts\on_sd_start.bat scripts\ /Y
|
REM @copy sd-ui-files\scripts\on_sd_start.bat scripts\ /Y
|
||||||
REM @copy "sd-ui-files\scripts\Start Stable Diffusion UI.cmd" . /Y
|
REM @copy "sd-ui-files\scripts\Start Stable Diffusion UI.cmd" . /Y
|
||||||
```
|
```
|
||||||
7) Comment out the line at the top of `/projects/stable-diffusion-ui-archive/scripts/on_sd_start.sh` that copies `on_env_start`. For e.g. `@copy sd-ui-files\scripts\on_env_start.bat scripts\ /Y`
|
6) Next, comment out the line at the top of `/projects/stable-diffusion-ui-archive/scripts/on_sd_start.sh` (or `on_sd_start.bat`) that copies `on_env_start`. For e.g. `@rem @copy sd-ui-files\scripts\on_env_start.bat scripts\ /Y`
|
||||||
8) Delete the current `ui` folder at `/projects/stable-diffusion-ui-archive/ui`
|
8) Delete the current `ui` folder at `/projects/stable-diffusion-ui-archive/ui`
|
||||||
9) Now make a symlink between the repository clone (where you will be making changes) and this archive (where you will be running stable diffusion):
|
9) Now make a symlink between the repository clone (where you will be making changes) and this archive (where you will be running stable diffusion):
|
||||||
`ln -s /projects/stable-diffusion-ui-repo/ui /projects/stable-diffusion-ui-archive/ui`
|
`ln -s /projects/stable-diffusion-ui-repo/ui /projects/stable-diffusion-ui-archive/ui`
|
||||||
or for Windows
|
or for Windows
|
||||||
`mklink /D \projects\stable-diffusion-ui-archive\ui \projects\stable-diffusion-ui-repo\ui` (link name first, source repo dir second)
|
`mklink /J \projects\stable-diffusion-ui-archive\ui \projects\stable-diffusion-ui-repo\ui` (link name first, source repo dir second)
|
||||||
9) Run the archive again `start.sh` and ensure you can still use the UI.
|
9) Run the project again (like in step 2) and ensure you can still use the UI.
|
||||||
10) Congrats, now any changes you make in your repo `ui` folder are linked to this running archive of the app and can be previewed in the browser.
|
10) Congrats, now any changes you make in your repo `ui` folder are linked to this running archive of the app and can be previewed in the browser.
|
||||||
|
|
||||||
Check the `ui/frontend/build/README.md` for instructions on running and building the React code.
|
Check the `ui/frontend/build/README.md` for instructions on running and building the React code.
|
||||||
@ -47,9 +46,5 @@ Check the `ui/frontend/build/README.md` for instructions on running and building
|
|||||||
## Development environment for Installer changes
|
## Development environment for Installer changes
|
||||||
Build the Windows installer using Windows, and the Linux installer using Linux. Don't mix the two, and don't use WSL. An Ubuntu VM is fine for building the Linux installer on a Windows host.
|
Build the Windows installer using Windows, and the Linux installer using Linux. Don't mix the two, and don't use WSL. An Ubuntu VM is fine for building the Linux installer on a Windows host.
|
||||||
|
|
||||||
1. Install Miniconda 3 or Anaconda.
|
1. Run `build.bat` or `./build.sh` depending on whether you're in Windows or Linux.
|
||||||
2. Install `conda install -c conda-forge -y conda-pack`
|
2. Make a new GitHub release and upload the Windows and Linux installer builds created inside the `dist` folder.
|
||||||
3. Open the Anaconda Prompt. Do not use WSL if you're building for Windows.
|
|
||||||
4. Run `build.bat` or `./build.sh` depending on whether you're in Windows or Linux.
|
|
||||||
5. Compress the `stable-diffusion-ui` folder created inside the `dist` folder. Make a `zip` for Windows, and `tar.xz` for Linux (smaller files, and Linux users already have tar).
|
|
||||||
6. Make a new GitHub release and upload the Windows and Linux installer builds.
|
|
||||||
|
@ -66,7 +66,7 @@ Useful for judging (and stopping) an image quickly, without waiting for it to fi
|
|||||||
# System Requirements
|
# System Requirements
|
||||||
1. Windows 10/11, or Linux. Experimental support for Mac is coming soon.
|
1. Windows 10/11, or Linux. Experimental support for Mac is coming soon.
|
||||||
2. An NVIDIA graphics card, preferably with 4GB or more of VRAM. If you don't have a compatible graphics card, it'll automatically run in the slower "CPU Mode".
|
2. An NVIDIA graphics card, preferably with 4GB or more of VRAM. If you don't have a compatible graphics card, it'll automatically run in the slower "CPU Mode".
|
||||||
3. Minimum 8 GB of RAM.
|
3. Minimum 8 GB of RAM and 25GB of disk space.
|
||||||
|
|
||||||
You don't need to install or struggle with Python, Anaconda, Docker etc. The installer will take care of whatever is needed.
|
You don't need to install or struggle with Python, Anaconda, Docker etc. The installer will take care of whatever is needed.
|
||||||
|
|
||||||
|
1
build.sh
1
build.sh
@ -28,6 +28,7 @@ mkdir -p dist/linux-mac/stable-diffusion-ui/scripts
|
|||||||
|
|
||||||
cp scripts/on_env_start.sh dist/linux-mac/stable-diffusion-ui/scripts/
|
cp scripts/on_env_start.sh dist/linux-mac/stable-diffusion-ui/scripts/
|
||||||
cp scripts/bootstrap.sh dist/linux-mac/stable-diffusion-ui/scripts/
|
cp scripts/bootstrap.sh dist/linux-mac/stable-diffusion-ui/scripts/
|
||||||
|
cp scripts/functions.sh dist/linux-mac/stable-diffusion-ui/scripts/
|
||||||
cp scripts/start.sh dist/linux-mac/stable-diffusion-ui/
|
cp scripts/start.sh dist/linux-mac/stable-diffusion-ui/
|
||||||
cp LICENSE dist/linux-mac/stable-diffusion-ui/
|
cp LICENSE dist/linux-mac/stable-diffusion-ui/
|
||||||
cp "CreativeML Open RAIL-M License" dist/linux-mac/stable-diffusion-ui/
|
cp "CreativeML Open RAIL-M License" dist/linux-mac/stable-diffusion-ui/
|
||||||
|
@ -8,6 +8,8 @@ set PATH=C:\Windows\System32;%PATH%
|
|||||||
if exist "installer" set PATH=%cd%\installer;%cd%\installer\Library\bin;%cd%\installer\Scripts;%cd%\installer\Library\usr\bin;%PATH%
|
if exist "installer" set PATH=%cd%\installer;%cd%\installer\Library\bin;%cd%\installer\Scripts;%cd%\installer\Library\usr\bin;%PATH%
|
||||||
if exist "installer_files\env" set PATH=%cd%\installer_files\env;%cd%\installer_files\env\Library\bin;%cd%\installer_files\env\Scripts;%cd%\installer_files\Library\usr\bin;%PATH%
|
if exist "installer_files\env" set PATH=%cd%\installer_files\env;%cd%\installer_files\env\Library\bin;%cd%\installer_files\env\Scripts;%cd%\installer_files\Library\usr\bin;%PATH%
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%\installer;%cd%\installer_files\env
|
||||||
|
|
||||||
@rem activate the installer env
|
@rem activate the installer env
|
||||||
call conda activate
|
call conda activate
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
cd /d %~dp0
|
||||||
set PATH=C:\Windows\System32;%PATH%
|
set PATH=C:\Windows\System32;%PATH%
|
||||||
|
|
||||||
@rem set legacy installer's PATH, if it exists
|
@rem set legacy installer's PATH, if it exists
|
||||||
@ -11,6 +12,8 @@ call scripts\bootstrap.bat
|
|||||||
@rem set new installer's PATH, if it downloaded any packages
|
@rem set new installer's PATH, if it downloaded any packages
|
||||||
if exist "installer_files\env" set PATH=%cd%\installer_files\env;%cd%\installer_files\env\Library\bin;%cd%\installer_files\env\Scripts;%cd%\installer_files\Library\usr\bin;%PATH%
|
if exist "installer_files\env" set PATH=%cd%\installer_files\env;%cd%\installer_files\env\Library\bin;%cd%\installer_files\env\Scripts;%cd%\installer_files\Library\usr\bin;%PATH%
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%\installer;%cd%\installer_files\env
|
||||||
|
|
||||||
@rem Test the bootstrap
|
@rem Test the bootstrap
|
||||||
call where git
|
call where git
|
||||||
call git --version
|
call git --version
|
||||||
|
@ -13,6 +13,11 @@ set LEGACY_INSTALL_ENV_DIR=%cd%\installer
|
|||||||
set MICROMAMBA_DOWNLOAD_URL=https://github.com/cmdr2/stable-diffusion-ui/releases/download/v1.1/micromamba.exe
|
set MICROMAMBA_DOWNLOAD_URL=https://github.com/cmdr2/stable-diffusion-ui/releases/download/v1.1/micromamba.exe
|
||||||
set umamba_exists=F
|
set umamba_exists=F
|
||||||
|
|
||||||
|
set OLD_APPDATA=%APPDATA%
|
||||||
|
set OLD_USERPROFILE=%USERPROFILE%
|
||||||
|
set APPDATA=%cd%\installer_files\appdata
|
||||||
|
set USERPROFILE=%cd%\profile
|
||||||
|
|
||||||
@rem figure out whether git and conda needs to be installed
|
@rem figure out whether git and conda needs to be installed
|
||||||
if exist "%INSTALL_ENV_DIR%" set PATH=%INSTALL_ENV_DIR%;%INSTALL_ENV_DIR%\Library\bin;%INSTALL_ENV_DIR%\Scripts;%INSTALL_ENV_DIR%\Library\usr\bin;%PATH%
|
if exist "%INSTALL_ENV_DIR%" set PATH=%INSTALL_ENV_DIR%;%INSTALL_ENV_DIR%\Library\bin;%INSTALL_ENV_DIR%\Scripts;%INSTALL_ENV_DIR%\Library\usr\bin;%PATH%
|
||||||
|
|
||||||
@ -35,7 +40,16 @@ if "%PACKAGES_TO_INSTALL%" NEQ "" (
|
|||||||
echo "Downloading micromamba from %MICROMAMBA_DOWNLOAD_URL% to %MAMBA_ROOT_PREFIX%\micromamba.exe"
|
echo "Downloading micromamba from %MICROMAMBA_DOWNLOAD_URL% to %MAMBA_ROOT_PREFIX%\micromamba.exe"
|
||||||
|
|
||||||
mkdir "%MAMBA_ROOT_PREFIX%"
|
mkdir "%MAMBA_ROOT_PREFIX%"
|
||||||
call curl -L "%MICROMAMBA_DOWNLOAD_URL%" > "%MAMBA_ROOT_PREFIX%\micromamba.exe"
|
call curl -Lk "%MICROMAMBA_DOWNLOAD_URL%" > "%MAMBA_ROOT_PREFIX%\micromamba.exe"
|
||||||
|
|
||||||
|
@REM if "%ERRORLEVEL%" NEQ "0" (
|
||||||
|
@REM echo "There was a problem downloading micromamba. Cannot continue."
|
||||||
|
@REM pause
|
||||||
|
@REM exit /b
|
||||||
|
@REM )
|
||||||
|
|
||||||
|
mkdir "%APPDATA%"
|
||||||
|
mkdir "%USERPROFILE%"
|
||||||
|
|
||||||
@rem test the mamba binary
|
@rem test the mamba binary
|
||||||
echo Micromamba version:
|
echo Micromamba version:
|
||||||
@ -57,3 +71,7 @@ if "%PACKAGES_TO_INSTALL%" NEQ "" (
|
|||||||
exit /b
|
exit /b
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@rem revert to the old APPDATA. only needed it for bypassing a bug in micromamba (with special characters)
|
||||||
|
set APPDATA=%OLD_APPDATA%
|
||||||
|
set USERPROFILE=%OLD_USERPROFILE%
|
||||||
|
@ -6,6 +6,9 @@
|
|||||||
|
|
||||||
# This enables a user to install this project without manually installing conda and git.
|
# This enables a user to install this project without manually installing conda and git.
|
||||||
|
|
||||||
|
source ./scripts/functions.sh
|
||||||
|
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
OS_NAME=$(uname -s)
|
OS_NAME=$(uname -s)
|
||||||
case "${OS_NAME}" in
|
case "${OS_NAME}" in
|
||||||
@ -29,6 +32,7 @@ export MAMBA_ROOT_PREFIX="$(pwd)/installer_files/mamba"
|
|||||||
INSTALL_ENV_DIR="$(pwd)/installer_files/env"
|
INSTALL_ENV_DIR="$(pwd)/installer_files/env"
|
||||||
LEGACY_INSTALL_ENV_DIR="$(pwd)/installer"
|
LEGACY_INSTALL_ENV_DIR="$(pwd)/installer"
|
||||||
MICROMAMBA_DOWNLOAD_URL="https://micro.mamba.pm/api/micromamba/${OS_NAME}-${OS_ARCH}/latest"
|
MICROMAMBA_DOWNLOAD_URL="https://micro.mamba.pm/api/micromamba/${OS_NAME}-${OS_ARCH}/latest"
|
||||||
|
umamba_exists="F"
|
||||||
|
|
||||||
# figure out whether git and conda needs to be installed
|
# figure out whether git and conda needs to be installed
|
||||||
if [ -e "$INSTALL_ENV_DIR" ]; then export PATH="$INSTALL_ENV_DIR/bin:$PATH"; fi
|
if [ -e "$INSTALL_ENV_DIR" ]; then export PATH="$INSTALL_ENV_DIR/bin:$PATH"; fi
|
||||||
@ -38,15 +42,25 @@ PACKAGES_TO_INSTALL=""
|
|||||||
if [ ! -e "$LEGACY_INSTALL_ENV_DIR/etc/profile.d/conda.sh" ] && [ ! -e "$INSTALL_ENV_DIR/etc/profile.d/conda.sh" ]; then PACKAGES_TO_INSTALL="$PACKAGES_TO_INSTALL conda"; fi
|
if [ ! -e "$LEGACY_INSTALL_ENV_DIR/etc/profile.d/conda.sh" ] && [ ! -e "$INSTALL_ENV_DIR/etc/profile.d/conda.sh" ]; then PACKAGES_TO_INSTALL="$PACKAGES_TO_INSTALL conda"; fi
|
||||||
if ! hash "git" &>/dev/null; then PACKAGES_TO_INSTALL="$PACKAGES_TO_INSTALL git"; fi
|
if ! hash "git" &>/dev/null; then PACKAGES_TO_INSTALL="$PACKAGES_TO_INSTALL git"; fi
|
||||||
|
|
||||||
|
if "$MAMBA_ROOT_PREFIX/micromamba" --version &>/dev/null; then umamba_exists="T"; fi
|
||||||
|
|
||||||
# (if necessary) install git and conda into a contained environment
|
# (if necessary) install git and conda into a contained environment
|
||||||
if [ "$PACKAGES_TO_INSTALL" != "" ]; then
|
if [ "$PACKAGES_TO_INSTALL" != "" ]; then
|
||||||
# download micromamba
|
# download micromamba
|
||||||
if [ ! -e "$MAMBA_ROOT_PREFIX/micromamba" ]; then
|
if [ "$umamba_exists" == "F" ]; then
|
||||||
echo "Downloading micromamba from $MICROMAMBA_DOWNLOAD_URL to $MAMBA_ROOT_PREFIX/micromamba"
|
echo "Downloading micromamba from $MICROMAMBA_DOWNLOAD_URL to $MAMBA_ROOT_PREFIX/micromamba"
|
||||||
|
|
||||||
mkdir -p "$MAMBA_ROOT_PREFIX"
|
mkdir -p "$MAMBA_ROOT_PREFIX"
|
||||||
curl -L "$MICROMAMBA_DOWNLOAD_URL" | tar -xvj bin/micromamba -O > "$MAMBA_ROOT_PREFIX/micromamba"
|
curl -L "$MICROMAMBA_DOWNLOAD_URL" | tar -xvj bin/micromamba -O > "$MAMBA_ROOT_PREFIX/micromamba"
|
||||||
|
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo
|
||||||
|
echo "EE micromamba download failed"
|
||||||
|
echo "EE If the lines above contain 'bzip2: Cannot exec', your system doesn't have bzip2 installed"
|
||||||
|
echo "EE If there are network errors, please check your internet setup"
|
||||||
|
fail "micromamba download failed"
|
||||||
|
fi
|
||||||
|
|
||||||
chmod u+x "$MAMBA_ROOT_PREFIX/micromamba"
|
chmod u+x "$MAMBA_ROOT_PREFIX/micromamba"
|
||||||
|
|
||||||
# test the mamba binary
|
# test the mamba binary
|
||||||
@ -56,15 +70,17 @@ if [ "$PACKAGES_TO_INSTALL" != "" ]; then
|
|||||||
|
|
||||||
# create the installer env
|
# create the installer env
|
||||||
if [ ! -e "$INSTALL_ENV_DIR" ]; then
|
if [ ! -e "$INSTALL_ENV_DIR" ]; then
|
||||||
"$MAMBA_ROOT_PREFIX/micromamba" create -y --prefix "$INSTALL_ENV_DIR"
|
"$MAMBA_ROOT_PREFIX/micromamba" create -y --prefix "$INSTALL_ENV_DIR" || fail "unable to create the install environment"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -e "$INSTALL_ENV_DIR" ]; then
|
||||||
|
fail "There was a problem while installing$PACKAGES_TO_INSTALL using micromamba. Cannot continue."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Packages to install:$PACKAGES_TO_INSTALL"
|
echo "Packages to install:$PACKAGES_TO_INSTALL"
|
||||||
|
|
||||||
"$MAMBA_ROOT_PREFIX/micromamba" install -y --prefix "$INSTALL_ENV_DIR" -c conda-forge $PACKAGES_TO_INSTALL
|
"$MAMBA_ROOT_PREFIX/micromamba" install -y --prefix "$INSTALL_ENV_DIR" -c conda-forge $PACKAGES_TO_INSTALL
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
if [ ! -e "$INSTALL_ENV_DIR" ]; then
|
fail "Installation of the packages '$PACKAGES_TO_INSTALL' failed."
|
||||||
echo "There was a problem while installing$PACKAGES_TO_INSTALL using micromamba. Cannot continue."
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||||
|
|
||||||
if [ "$0" == "bash" ]; then
|
if [ "$0" == "bash" ]; then
|
||||||
echo "Opening Stable Diffusion UI - Developer Console.."
|
echo "Opening Stable Diffusion UI - Developer Console.."
|
||||||
echo ""
|
echo ""
|
||||||
@ -35,5 +37,6 @@ if [ "$0" == "bash" ]; then
|
|||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
else
|
else
|
||||||
bash --init-file developer_console.sh
|
file_name=$(basename "${BASH_SOURCE[0]}")
|
||||||
|
bash --init-file "$file_name"
|
||||||
fi
|
fi
|
||||||
|
32
scripts/functions.sh
Normal file
32
scripts/functions.sh
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#
|
||||||
|
# utility functions for all scripts
|
||||||
|
#
|
||||||
|
|
||||||
|
fail() {
|
||||||
|
echo
|
||||||
|
echo "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
|
||||||
|
echo
|
||||||
|
if [ "$1" != "" ]; then
|
||||||
|
echo ERROR: $1
|
||||||
|
else
|
||||||
|
echo An error occurred.
|
||||||
|
fi
|
||||||
|
cat <<EOF
|
||||||
|
|
||||||
|
Error downloading Stable Diffusion UI. Sorry about that, please try to:
|
||||||
|
1. Run this installer again.
|
||||||
|
2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting
|
||||||
|
3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB
|
||||||
|
4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues
|
||||||
|
|
||||||
|
Thanks!
|
||||||
|
|
||||||
|
|
||||||
|
EOF
|
||||||
|
read -p "Press any key to continue"
|
||||||
|
exit 1
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
source ./scripts/functions.sh
|
||||||
|
|
||||||
printf "\n\nStable Diffusion UI\n\n"
|
printf "\n\nStable Diffusion UI\n\n"
|
||||||
|
|
||||||
if [ -f "scripts/config.sh" ]; then
|
if [ -f "scripts/config.sh" ]; then
|
||||||
@ -27,9 +29,7 @@ else
|
|||||||
if git clone -b "$update_branch" https://github.com/cmdr2/stable-diffusion-ui.git sd-ui-files ; then
|
if git clone -b "$update_branch" https://github.com/cmdr2/stable-diffusion-ui.git sd-ui-files ; then
|
||||||
echo sd_ui_git_cloned >> scripts/install_status.txt
|
echo sd_ui_git_cloned >> scripts/install_status.txt
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading Stable Diffusion UI. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "git clone failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -71,6 +71,8 @@ if exist "Open Developer Console.cmd" del "Open Developer Console.cmd"
|
|||||||
set TMP=%cd%\tmp
|
set TMP=%cd%\tmp
|
||||||
set TEMP=%cd%\tmp
|
set TEMP=%cd%\tmp
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%;%cd%\env\lib\site-packages
|
||||||
|
|
||||||
@call conda env create --prefix env -f environment.yaml || (
|
@call conda env create --prefix env -f environment.yaml || (
|
||||||
@echo. & echo "Error installing the packages necessary for Stable Diffusion. Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
@echo. & echo "Error installing the packages necessary for Stable Diffusion. Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
||||||
pause
|
pause
|
||||||
@ -108,6 +110,8 @@ set PATH=C:\Windows\System32;%PATH%
|
|||||||
set TMP=%cd%\tmp
|
set TMP=%cd%\tmp
|
||||||
set TEMP=%cd%\tmp
|
set TEMP=%cd%\tmp
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%;%cd%\env\lib\site-packages
|
||||||
|
|
||||||
@call pip install -e git+https://github.com/TencentARC/GFPGAN#egg=GFPGAN || (
|
@call pip install -e git+https://github.com/TencentARC/GFPGAN#egg=GFPGAN || (
|
||||||
@echo. & echo "Error installing the packages necessary for GFPGAN (Face Correction). Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
@echo. & echo "Error installing the packages necessary for GFPGAN (Face Correction). Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
||||||
pause
|
pause
|
||||||
@ -141,6 +145,8 @@ set PATH=C:\Windows\System32;%PATH%
|
|||||||
set TMP=%cd%\tmp
|
set TMP=%cd%\tmp
|
||||||
set TEMP=%cd%\tmp
|
set TEMP=%cd%\tmp
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%;%cd%\env\lib\site-packages
|
||||||
|
|
||||||
@call pip install -e git+https://github.com/xinntao/Real-ESRGAN#egg=realesrgan || (
|
@call pip install -e git+https://github.com/xinntao/Real-ESRGAN#egg=realesrgan || (
|
||||||
@echo. & echo "Error installing the packages necessary for ESRGAN (Resolution Upscaling). Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
@echo. & echo "Error installing the packages necessary for ESRGAN (Resolution Upscaling). Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!" & echo.
|
||||||
pause
|
pause
|
||||||
@ -168,6 +174,8 @@ set PATH=C:\Windows\System32;%PATH%
|
|||||||
set TMP=%cd%\tmp
|
set TMP=%cd%\tmp
|
||||||
set TEMP=%cd%\tmp
|
set TEMP=%cd%\tmp
|
||||||
|
|
||||||
|
set PYTHONPATH=%cd%;%cd%\env\lib\site-packages
|
||||||
|
|
||||||
@call conda install -c conda-forge -y --prefix env uvicorn fastapi || (
|
@call conda install -c conda-forge -y --prefix env uvicorn fastapi || (
|
||||||
echo "Error installing the packages necessary for Stable Diffusion UI. Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!"
|
echo "Error installing the packages necessary for Stable Diffusion UI. Sorry about that, please try to:" & echo " 1. Run this installer again." & echo " 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting" & echo " 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB" & echo " 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues" & echo "Thanks!"
|
||||||
pause
|
pause
|
||||||
@ -375,6 +383,9 @@ call python --version
|
|||||||
@set SD_UI_PATH=%cd%\ui
|
@set SD_UI_PATH=%cd%\ui
|
||||||
@cd stable-diffusion
|
@cd stable-diffusion
|
||||||
|
|
||||||
@uvicorn server:app --app-dir "%SD_UI_PATH%" --port 9000 --host 0.0.0.0
|
@if NOT DEFINED SD_UI_BIND_PORT set SD_UI_BIND_PORT=9000
|
||||||
|
@if NOT DEFINED SD_UI_BIND_IP set SD_UI_BIND_IP=0.0.0.0
|
||||||
|
@uvicorn server:app --app-dir "%SD_UI_PATH%" --port %SD_UI_BIND_PORT% --host %SD_UI_BIND_IP%
|
||||||
|
|
||||||
|
|
||||||
@pause
|
@pause
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
source ./scripts/functions.sh
|
||||||
|
|
||||||
cp sd-ui-files/scripts/on_env_start.sh scripts/
|
cp sd-ui-files/scripts/on_env_start.sh scripts/
|
||||||
cp sd-ui-files/scripts/bootstrap.sh scripts/
|
cp sd-ui-files/scripts/bootstrap.sh scripts/
|
||||||
|
|
||||||
@ -7,7 +9,7 @@ cp sd-ui-files/scripts/bootstrap.sh scripts/
|
|||||||
CONDA_BASEPATH=$(conda info --base)
|
CONDA_BASEPATH=$(conda info --base)
|
||||||
source "$CONDA_BASEPATH/etc/profile.d/conda.sh" # avoids the 'shell not initialized' error
|
source "$CONDA_BASEPATH/etc/profile.d/conda.sh" # avoids the 'shell not initialized' error
|
||||||
|
|
||||||
conda activate
|
conda activate || fail "Failed to activate conda"
|
||||||
|
|
||||||
# remove the old version of the dev console script, if it's still present
|
# remove the old version of the dev console script, if it's still present
|
||||||
if [ -e "open_dev_console.sh" ]; then
|
if [ -e "open_dev_console.sh" ]; then
|
||||||
@ -28,8 +30,8 @@ if [ -e "scripts/install_status.txt" ] && [ `grep -c sd_git_cloned scripts/insta
|
|||||||
git pull
|
git pull
|
||||||
git -c advice.detachedHead=false checkout f6cfebffa752ee11a7b07497b8529d5971de916c
|
git -c advice.detachedHead=false checkout f6cfebffa752ee11a7b07497b8529d5971de916c
|
||||||
|
|
||||||
git apply ../ui/sd_internal/ddim_callback.patch
|
git apply ../ui/sd_internal/ddim_callback.patch || fail "ddim patch failed"
|
||||||
git apply ../ui/sd_internal/env_yaml.patch
|
git apply ../ui/sd_internal/env_yaml.patch || fail "yaml patch failed"
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
else
|
else
|
||||||
@ -38,16 +40,14 @@ else
|
|||||||
if git clone https://github.com/basujindal/stable-diffusion.git ; then
|
if git clone https://github.com/basujindal/stable-diffusion.git ; then
|
||||||
echo sd_git_cloned >> scripts/install_status.txt
|
echo sd_git_cloned >> scripts/install_status.txt
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "git clone of basujindal/stable-diffusion.git failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
git -c advice.detachedHead=false checkout f6cfebffa752ee11a7b07497b8529d5971de916c
|
git -c advice.detachedHead=false checkout f6cfebffa752ee11a7b07497b8529d5971de916c
|
||||||
|
|
||||||
git apply ../ui/sd_internal/ddim_callback.patch
|
git apply ../ui/sd_internal/ddim_callback.patch || fail "ddim patch failed"
|
||||||
git apply ../ui/sd_internal/env_yaml.patch
|
git apply ../ui/sd_internal/env_yaml.patch || fail "yaml patch failed"
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
fi
|
fi
|
||||||
@ -57,37 +57,32 @@ cd stable-diffusion
|
|||||||
if [ `grep -c conda_sd_env_created ../scripts/install_status.txt` -gt "0" ]; then
|
if [ `grep -c conda_sd_env_created ../scripts/install_status.txt` -gt "0" ]; then
|
||||||
echo "Packages necessary for Stable Diffusion were already installed"
|
echo "Packages necessary for Stable Diffusion were already installed"
|
||||||
|
|
||||||
conda activate ./env
|
conda activate ./env || fail "conda activate failed"
|
||||||
else
|
else
|
||||||
printf "\n\nDownloading packages necessary for Stable Diffusion..\n"
|
printf "\n\nDownloading packages necessary for Stable Diffusion..\n"
|
||||||
printf "\n\n***** This will take some time (depending on the speed of the Internet connection) and may appear to be stuck, but please be patient ***** ..\n\n"
|
printf "\n\n***** This will take some time (depending on the speed of the Internet connection) and may appear to be stuck, but please be patient ***** ..\n\n"
|
||||||
|
|
||||||
# prevent conda from using packages from the user's home directory, to avoid conflicts
|
# prevent conda from using packages from the user's home directory, to avoid conflicts
|
||||||
export PYTHONNOUSERSITE=1
|
export PYTHONNOUSERSITE=1
|
||||||
|
export PYTHONPATH="$(pwd):$(pwd)/env/lib/site-packages"
|
||||||
|
|
||||||
if conda env create --prefix env --force -f environment.yaml ; then
|
if conda env create --prefix env --force -f environment.yaml ; then
|
||||||
echo "Installed. Testing.."
|
echo "Installed. Testing.."
|
||||||
else
|
else
|
||||||
printf "\n\nError installing the packages necessary for Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "'conda env create' failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
conda activate ./env
|
conda activate ./env || fail "conda activate failed"
|
||||||
|
|
||||||
if conda install -c conda-forge --prefix ./env -y antlr4-python3-runtime=4.8 ; then
|
if conda install -c conda-forge --prefix ./env -y antlr4-python3-runtime=4.8 ; then
|
||||||
echo "Installed. Testing.."
|
echo "Installed. Testing.."
|
||||||
else
|
else
|
||||||
printf "\n\nError installing antlr4-python3-runtime for Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error installing antlr4-python3-runtime"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
out_test=`python -c "import torch; import ldm; import transformers; import numpy; import antlr4; print(42)"`
|
out_test=`python -c "import torch; import ldm; import transformers; import numpy; import antlr4; print(42)"`
|
||||||
if [ "$out_test" != "42" ]; then
|
if [ "$out_test" != "42" ]; then
|
||||||
printf "\n\nDependency test failed! Error installing the packages necessary for Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Dependency test failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo conda_sd_env_created >> ../scripts/install_status.txt
|
echo conda_sd_env_created >> ../scripts/install_status.txt
|
||||||
@ -99,20 +94,20 @@ else
|
|||||||
printf "\n\nDownloading packages necessary for GFPGAN (Face Correction)..\n"
|
printf "\n\nDownloading packages necessary for GFPGAN (Face Correction)..\n"
|
||||||
|
|
||||||
export PYTHONNOUSERSITE=1
|
export PYTHONNOUSERSITE=1
|
||||||
|
export PYTHONPATH="$(pwd):$(pwd)/env/lib/site-packages"
|
||||||
|
|
||||||
if pip install -e git+https://github.com/TencentARC/GFPGAN#egg=GFPGAN ; then
|
if pip install -e git+https://github.com/TencentARC/GFPGAN#egg=GFPGAN ; then
|
||||||
echo "Installed. Testing.."
|
echo "Installed. Testing.."
|
||||||
else
|
else
|
||||||
printf "\n\nError installing the packages necessary for GFPGAN (Face Correction). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error installing the packages necessary for GFPGAN (Face Correction)."
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
out_test=`python -c "from gfpgan import GFPGANer; print(42)"`
|
out_test=`python -c "from gfpgan import GFPGANer; print(42)"`
|
||||||
if [ "$out_test" != "42" ]; then
|
if [ "$out_test" != "42" ]; then
|
||||||
printf "\n\nDependency test failed! Error installing the packages necessary for GFPGAN (Face Correction). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
echo "EE The dependency check has failed. This usually means that some system libraries are missing."
|
||||||
read -p "Press any key to continue"
|
echo "EE On Debian/Ubuntu systems, this are often these packages: libsm6 libxext6 libxrender-dev"
|
||||||
exit
|
echo "EE Other Linux distributions might have different package names for these libraries."
|
||||||
|
fail "GFPGAN dependency test failed"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo conda_sd_gfpgan_deps_installed >> ../scripts/install_status.txt
|
echo conda_sd_gfpgan_deps_installed >> ../scripts/install_status.txt
|
||||||
@ -124,20 +119,17 @@ else
|
|||||||
printf "\n\nDownloading packages necessary for ESRGAN (Resolution Upscaling)..\n"
|
printf "\n\nDownloading packages necessary for ESRGAN (Resolution Upscaling)..\n"
|
||||||
|
|
||||||
export PYTHONNOUSERSITE=1
|
export PYTHONNOUSERSITE=1
|
||||||
|
export PYTHONPATH="$(pwd):$(pwd)/env/lib/site-packages"
|
||||||
|
|
||||||
if pip install -e git+https://github.com/xinntao/Real-ESRGAN#egg=realesrgan ; then
|
if pip install -e git+https://github.com/xinntao/Real-ESRGAN#egg=realesrgan ; then
|
||||||
echo "Installed. Testing.."
|
echo "Installed. Testing.."
|
||||||
else
|
else
|
||||||
printf "\n\nError installing the packages necessary for ESRGAN (Resolution Upscaling). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error installing the packages necessary for ESRGAN"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
out_test=`python -c "from basicsr.archs.rrdbnet_arch import RRDBNet; from realesrgan import RealESRGANer; print(42)"`
|
out_test=`python -c "from basicsr.archs.rrdbnet_arch import RRDBNet; from realesrgan import RealESRGANer; print(42)"`
|
||||||
if [ "$out_test" != "42" ]; then
|
if [ "$out_test" != "42" ]; then
|
||||||
printf "\n\nDependency test failed! Error installing the packages necessary for ESRGAN (Resolution Upscaling). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "ESRGAN dependency test failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo conda_sd_esrgan_deps_installed >> ../scripts/install_status.txt
|
echo conda_sd_esrgan_deps_installed >> ../scripts/install_status.txt
|
||||||
@ -149,19 +141,16 @@ else
|
|||||||
printf "\n\nDownloading packages necessary for Stable Diffusion UI..\n\n"
|
printf "\n\nDownloading packages necessary for Stable Diffusion UI..\n\n"
|
||||||
|
|
||||||
export PYTHONNOUSERSITE=1
|
export PYTHONNOUSERSITE=1
|
||||||
|
export PYTHONPATH="$(pwd):$(pwd)/env/lib/site-packages"
|
||||||
|
|
||||||
if conda install -c conda-forge --prefix ./env -y uvicorn fastapi ; then
|
if conda install -c conda-forge --prefix ./env -y uvicorn fastapi ; then
|
||||||
echo "Installed. Testing.."
|
echo "Installed. Testing.."
|
||||||
else
|
else
|
||||||
printf "\n\nError installing the packages necessary for Stable Diffusion UI. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "'conda install uvicorn' failed"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! command -v uvicorn &> /dev/null; then
|
if ! command -v uvicorn &> /dev/null; then
|
||||||
printf "\n\nUI packages not found! Error installing the packages necessary for Stable Diffusion UI. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "UI packages not found!"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo conda_sd_ui_deps_installed >> ../scripts/install_status.txt
|
echo conda_sd_ui_deps_installed >> ../scripts/install_status.txt
|
||||||
@ -193,15 +182,10 @@ if [ ! -f "sd-v1-4.ckpt" ]; then
|
|||||||
if [ -f "sd-v1-4.ckpt" ]; then
|
if [ -f "sd-v1-4.ckpt" ]; then
|
||||||
model_size=`find "sd-v1-4.ckpt" -printf "%s"`
|
model_size=`find "sd-v1-4.ckpt" -printf "%s"`
|
||||||
if [ ! "$model_size" == "4265380512" ]; then
|
if [ ! "$model_size" == "4265380512" ]; then
|
||||||
printf "\n\nError: The downloaded model file was invalid! Bytes downloaded: $model_size\n\n"
|
fail "The downloaded model file was invalid! Bytes downloaded: $model_size"
|
||||||
printf "\n\nError downloading the data files (weights) for Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading the data files (weights) for Stable Diffusion. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error downloading the data files (weights) for Stable Diffusion"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -225,15 +209,10 @@ if [ ! -f "GFPGANv1.3.pth" ]; then
|
|||||||
if [ -f "GFPGANv1.3.pth" ]; then
|
if [ -f "GFPGANv1.3.pth" ]; then
|
||||||
model_size=`find "GFPGANv1.3.pth" -printf "%s"`
|
model_size=`find "GFPGANv1.3.pth" -printf "%s"`
|
||||||
if [ ! "$model_size" -eq "348632874" ]; then
|
if [ ! "$model_size" -eq "348632874" ]; then
|
||||||
printf "\n\nError: The downloaded GFPGAN model file was invalid! Bytes downloaded: $model_size\n\n"
|
fail "The downloaded GFPGAN model file was invalid! Bytes downloaded: $model_size"
|
||||||
printf "\n\nError downloading the data files (weights) for GFPGAN (Face Correction). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading the data files (weights) for GFPGAN (Face Correction). Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error downloading the data files (weights) for GFPGAN (Face Correction)."
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -257,15 +236,10 @@ if [ ! -f "RealESRGAN_x4plus.pth" ]; then
|
|||||||
if [ -f "RealESRGAN_x4plus.pth" ]; then
|
if [ -f "RealESRGAN_x4plus.pth" ]; then
|
||||||
model_size=`find "RealESRGAN_x4plus.pth" -printf "%s"`
|
model_size=`find "RealESRGAN_x4plus.pth" -printf "%s"`
|
||||||
if [ ! "$model_size" -eq "67040989" ]; then
|
if [ ! "$model_size" -eq "67040989" ]; then
|
||||||
printf "\n\nError: The downloaded ESRGAN x4plus model file was invalid! Bytes downloaded: $model_size\n\n"
|
fail "The downloaded ESRGAN x4plus model file was invalid! Bytes downloaded: $model_size"
|
||||||
printf "\n\nError downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus"
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -289,15 +263,10 @@ if [ ! -f "RealESRGAN_x4plus_anime_6B.pth" ]; then
|
|||||||
if [ -f "RealESRGAN_x4plus_anime_6B.pth" ]; then
|
if [ -f "RealESRGAN_x4plus_anime_6B.pth" ]; then
|
||||||
model_size=`find "RealESRGAN_x4plus_anime_6B.pth" -printf "%s"`
|
model_size=`find "RealESRGAN_x4plus_anime_6B.pth" -printf "%s"`
|
||||||
if [ ! "$model_size" -eq "17938799" ]; then
|
if [ ! "$model_size" -eq "17938799" ]; then
|
||||||
printf "\n\nError: The downloaded ESRGAN x4plus_anime model file was invalid! Bytes downloaded: $model_size\n\n"
|
fail "The downloaded ESRGAN x4plus_anime model file was invalid! Bytes downloaded: $model_size"
|
||||||
printf "\n\nError downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus_anime. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "\n\nError downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus_anime. Sorry about that, please try to:\n 1. Run this installer again.\n 2. If that doesn't fix it, please try the common troubleshooting steps at https://github.com/cmdr2/stable-diffusion-ui/wiki/Troubleshooting\n 3. If those steps don't help, please copy *all* the error messages in this window, and ask the community at https://discord.com/invite/u9yhsFmEkB\n 4. If that doesn't solve the problem, please file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues\nThanks!\n\n"
|
fail "Error downloading the data files (weights) for ESRGAN (Resolution Upscaling) x4plus_anime."
|
||||||
read -p "Press any key to continue"
|
|
||||||
exit
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -352,6 +321,6 @@ cd ..
|
|||||||
export SD_UI_PATH=`pwd`/ui
|
export SD_UI_PATH=`pwd`/ui
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
|
|
||||||
uvicorn server:app --app-dir "$SD_UI_PATH" --port 9000 --host 0.0.0.0
|
uvicorn server:app --app-dir "$SD_UI_PATH" --port ${SD_UI_BIND_PORT:-9000} --host ${SD_UI_BIND_IP:-0.0.0.0}
|
||||||
|
|
||||||
read -p "Press any key to continue"
|
read -p "Press any key to continue"
|
||||||
|
@ -6,17 +6,17 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
|
|||||||
if [ -e "installer" ]; then export PATH="$(pwd)/installer/bin:$PATH"; fi
|
if [ -e "installer" ]; then export PATH="$(pwd)/installer/bin:$PATH"; fi
|
||||||
|
|
||||||
# Setup the packages required for the installer
|
# Setup the packages required for the installer
|
||||||
scripts/bootstrap.sh
|
scripts/bootstrap.sh || exit 1
|
||||||
|
|
||||||
# set new installer's PATH, if it downloaded any packages
|
# set new installer's PATH, if it downloaded any packages
|
||||||
if [ -e "installer_files/env" ]; then export PATH="$(pwd)/installer_files/env/bin:$PATH"; fi
|
if [ -e "installer_files/env" ]; then export PATH="$(pwd)/installer_files/env/bin:$PATH"; fi
|
||||||
|
|
||||||
# Test the bootstrap
|
# Test the bootstrap
|
||||||
which git
|
which git
|
||||||
git --version
|
git --version || exit 1
|
||||||
|
|
||||||
which conda
|
which conda
|
||||||
conda --version
|
conda --version || exit 1
|
||||||
|
|
||||||
# Download the rest of the installer and UI
|
# Download the rest of the installer and UI
|
||||||
scripts/on_env_start.sh
|
scripts/on_env_start.sh
|
||||||
|
@ -227,7 +227,10 @@
|
|||||||
|
|
||||||
<div id="preview" class="col-free">
|
<div id="preview" class="col-free">
|
||||||
<div id="initial-text">
|
<div id="initial-text">
|
||||||
Type a prompt and press the "Make Image" button.<br/><br/>You can set an "Initial Image" if you want to guide the AI.<br/><br/>You can also add modifiers like "Realistic", "Pencil Sketch", "ArtStation" etc by browsing through the "Image Modifiers" section and selecting the desired modifiers.<br/><br/>Click "Advanced Settings" for additional settings like seed, image size, number of images to generate etc.<br/><br/>Enjoy! :)
|
Type a prompt and press the "Make Image" button.<br/><br/>You can set an "Initial Image" if you want to guide the AI.<br/><br/>
|
||||||
|
You can also add modifiers like "Realistic", "Pencil Sketch", "ArtStation" etc by browsing through the "Image Modifiers" section
|
||||||
|
and selecting the desired modifiers.<br/><br/>
|
||||||
|
Click "Image Settings" for additional settings like seed, image size, number of images to generate etc.<br/><br/>Enjoy! :)
|
||||||
</div>
|
</div>
|
||||||
<div id="preview-tools">
|
<div id="preview-tools">
|
||||||
<button id="clear-all-previews" class="secondaryButton"><i class="fa-solid fa-trash-can"></i> Clear All</button>
|
<button id="clear-all-previews" class="secondaryButton"><i class="fa-solid fa-trash-can"></i> Clear All</button>
|
||||||
|
@ -282,9 +282,11 @@ function tryLoadOldSettings() {
|
|||||||
Object.keys(individual_settings_map).forEach(localStorageKey => {
|
Object.keys(individual_settings_map).forEach(localStorageKey => {
|
||||||
var localStorageValue = localStorage.getItem(localStorageKey);
|
var localStorageValue = localStorage.getItem(localStorageKey);
|
||||||
if (localStorageValue !== null) {
|
if (localStorageValue !== null) {
|
||||||
var setting = SETTINGS[individual_settings_map[localStorageKey]]
|
let key = individual_settings_map[localStorageKey]
|
||||||
if (setting == null || setting == undefined) {
|
var setting = SETTINGS[key]
|
||||||
return
|
if (!setting) {
|
||||||
|
console.warn(`Attempted to map old setting ${key}, but no setting found`);
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
if (setting.element.type == "checkbox" && (typeof localStorageValue === "string" || localStorageValue instanceof String)) {
|
if (setting.element.type == "checkbox" && (typeof localStorageValue === "string" || localStorageValue instanceof String)) {
|
||||||
localStorageValue = localStorageValue == "true"
|
localStorageValue = localStorageValue == "true"
|
||||||
|
@ -914,15 +914,15 @@ function getPrompts() {
|
|||||||
prompts = prompts.map(prompt => prompt.trim())
|
prompts = prompts.map(prompt => prompt.trim())
|
||||||
prompts = prompts.filter(prompt => prompt !== '')
|
prompts = prompts.filter(prompt => prompt !== '')
|
||||||
|
|
||||||
|
if (activeTags.length > 0) {
|
||||||
|
const promptTags = activeTags.map(x => x.name).join(", ")
|
||||||
|
prompts = prompts.map((prompt) => `${prompt}, ${promptTags}`)
|
||||||
|
}
|
||||||
|
|
||||||
let promptsToMake = applySetOperator(prompts)
|
let promptsToMake = applySetOperator(prompts)
|
||||||
promptsToMake = applyPermuteOperator(promptsToMake)
|
promptsToMake = applyPermuteOperator(promptsToMake)
|
||||||
|
|
||||||
if (activeTags.length <= 0) {
|
|
||||||
return promptsToMake
|
return promptsToMake
|
||||||
}
|
|
||||||
|
|
||||||
const promptTags = activeTags.map(x => x.name).join(", ")
|
|
||||||
return promptsToMake.map((prompt) => `${prompt}, ${promptTags}`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function applySetOperator(prompts) {
|
function applySetOperator(prompts) {
|
||||||
|
@ -761,11 +761,13 @@ def img_to_base64_str(img, output_format="PNG"):
|
|||||||
img.save(buffered, format=output_format)
|
img.save(buffered, format=output_format)
|
||||||
buffered.seek(0)
|
buffered.seek(0)
|
||||||
img_byte = buffered.getvalue()
|
img_byte = buffered.getvalue()
|
||||||
img_str = "data:image/png;base64," + base64.b64encode(img_byte).decode()
|
mime_type = "image/png" if output_format.lower() == "png" else "image/jpeg"
|
||||||
|
img_str = f"data:{mime_type};base64," + base64.b64encode(img_byte).decode()
|
||||||
return img_str
|
return img_str
|
||||||
|
|
||||||
def base64_str_to_buffer(img_str):
|
def base64_str_to_buffer(img_str):
|
||||||
img_str = img_str[len("data:image/png;base64,"):]
|
mime_type = "image/png" if img_str.startswith("data:image/png;") else "image/jpeg"
|
||||||
|
img_str = img_str[len(f"data:{mime_type};base64,"):]
|
||||||
data = base64.b64decode(img_str)
|
data = base64.b64decode(img_str)
|
||||||
buffered = BytesIO(data)
|
buffered = BytesIO(data)
|
||||||
return buffered
|
return buffered
|
||||||
|
Loading…
Reference in New Issue
Block a user