From 2dfa90044d52eab24a930064b56a1bee8634d71b Mon Sep 17 00:00:00 2001 From: Max Howell Date: Mon, 24 Apr 2023 15:19:58 -0400 Subject: [PATCH] sd-webui fixes; add endpoint yamls --- .../{gui.sh => entrypoint.sh} | 24 +++++++++++--- .../stable-diffusion-webui/launch.py.patch | 8 ----- .../stable-diffusion-webui/package.yml | 9 +++--- .../stable-diffusion-webui | 31 ++++++++++++++++--- .../stable-diffusion-webui/webui-user.sh | 2 +- projects/github.com/muesli/duf/package.yml | 10 +++--- 6 files changed, 58 insertions(+), 26 deletions(-) rename projects/github.com/AUTOMATIC1111/stable-diffusion-webui/{gui.sh => entrypoint.sh} (65%) delete mode 100644 projects/github.com/AUTOMATIC1111/stable-diffusion-webui/launch.py.patch diff --git a/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/gui.sh b/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/entrypoint.sh similarity index 65% rename from projects/github.com/AUTOMATIC1111/stable-diffusion-webui/gui.sh rename to projects/github.com/AUTOMATIC1111/stable-diffusion-webui/entrypoint.sh index 7b1707c7..555555eb 100755 --- a/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/gui.sh +++ b/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/entrypoint.sh @@ -1,21 +1,33 @@ #!/bin/bash -set -emx +set -emfo pipefail -d="$(cd "$(dirname $0)"/.. && pwd)" +tea gum format < *NOTE* this may take a few minutes the first time it runs + +EoMD + +echo # spacer + +d="$(cd "$(dirname $0)" && pwd)" "$d"/bin/stable-diffusion-webui & -# poll into a HEAD request succeeds +# poll until a HEAD request succeeds while ! curl -Is http://127.0.0.1:7860 | grep -q "HTTP/1.1 200 OK"; do sleep 1 done # open the URL once the HEAD request succeeds +# TODO open in a window controlled by the gui (see next section) open http://127.0.0.1:7860 # tell tea/gui about it -echo '{"viewer": "http://127.0.0.1:7860"}' +if test -n "$TEA_IPC_FD"; then + echo '{"viewer": "http://127.0.0.1:7860"}' >&$TEA_IPC_FD +fi tea gum format < "$VIRTUAL_ENV"/pyvenv.cfg +home = $TEA_PYHOME +include-system-site-packages = false +executable = $TEA_PYTHON +EOSH + +find "$VIRTUAL_ENV"/bin -maxdepth 1 -type f | xargs \ + sed -i.bak "1s|.*|#!$VIRTUAL_ENV/bin/python|" + +rm "$VIRTUAL_ENV"/bin/*.bak + +ln -sf "$TEA_PYTHON" "$VIRTUAL_ENV"/bin/python +#NOTE.END + +# this is all `activate` in the venv does +export PATH="$VIRTUAL_ENV/bin":$PATH + +exec python ./launch.py "$@" --ui-config-file="$CONFIG" diff --git a/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/webui-user.sh b/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/webui-user.sh index 375130c7..064da186 100644 --- a/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/webui-user.sh +++ b/projects/github.com/AUTOMATIC1111/stable-diffusion-webui/webui-user.sh @@ -1,3 +1,3 @@ #!/bin/bash -export install_dir="$(cd "$(dirname $0)"/.. && pwd)" +export install_dir="$(cd "$(dirname "$0")"/.. && pwd)" export clone_dir="lib" diff --git a/projects/github.com/muesli/duf/package.yml b/projects/github.com/muesli/duf/package.yml index 2bb8713f..e50e6742 100644 --- a/projects/github.com/muesli/duf/package.yml +++ b/projects/github.com/muesli/duf/package.yml @@ -3,11 +3,14 @@ distributable: strip-components: 1 versions: - github: muesli/duf/tags - + github: muesli/duf/tags + provides: - bin/duf +entrypoint: + bin/duf + build: script: | go mod download @@ -27,5 +30,4 @@ build: - -buildmode=pie test: - script: | - test "$(duf -version)" = "duf {{version}}" \ No newline at end of file + test "$(duf -version)" = "duf {{version}}"