| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #!/bin/bash
- set -Eeuo pipefail
- # TODO: move all mkdir -p ?
- mkdir -p /data/config/auto/scripts/
- cp -n /docker/config.json /data/config/auto/config.json
- jq '. * input' /data/config/auto/config.json /docker/config.json | sponge /data/config/auto/config.json
- if [ ! -f /data/config/auto/ui-config.json ]; then
- echo '{}' >/data/config/auto/ui-config.json
- fi
- # copy scripts, we cannot just mount the directory because it will override the already provided scripts in the repo
- cp -rfT /data/config/auto/scripts/ "${ROOT}/scripts"
- declare -A MOUNTS
- MOUNTS["/root/.cache"]="/data/.cache"
- # main
- MOUNTS["${ROOT}/models/Stable-diffusion"]="/data/StableDiffusion"
- MOUNTS["${ROOT}/models/VAE"]="/data/VAE"
- MOUNTS["${ROOT}/models/Codeformer"]="/data/Codeformer"
- MOUNTS["${ROOT}/models/GFPGAN"]="/data/GFPGAN"
- MOUNTS["${ROOT}/models/ESRGAN"]="/data/ESRGAN"
- MOUNTS["${ROOT}/models/BSRGAN"]="/data/BSRGAN"
- MOUNTS["${ROOT}/models/RealESRGAN"]="/data/RealESRGAN"
- MOUNTS["${ROOT}/models/SwinIR"]="/data/SwinIR"
- MOUNTS["${ROOT}/models/ScuNET"]="/data/ScuNET"
- MOUNTS["${ROOT}/models/LDSR"]="/data/LDSR"
- MOUNTS["${ROOT}/models/hypernetworks"]="/data/Hypernetworks"
- MOUNTS["${ROOT}/models/deepbooru"]="/data/Deepdanbooru"
- MOUNTS["${ROOT}/embeddings"]="/data/embeddings"
- MOUNTS["${ROOT}/config.json"]="/data/config/auto/config.json"
- MOUNTS["${ROOT}/ui-config.json"]="/data/config/auto/ui-config.json"
- MOUNTS["${ROOT}/extensions"]="/data/config/auto/extensions"
- # extra hacks
- MOUNTS["${ROOT}/repositories/CodeFormer/weights/facelib"]="/data/.cache"
- for to_path in "${!MOUNTS[@]}"; do
- set -Eeuo pipefail
- from_path="${MOUNTS[${to_path}]}"
- rm -rf "${to_path}"
- if [ ! -f "$from_path" ]; then
- mkdir -vp "$from_path"
- fi
- mkdir -vp "$(dirname "${to_path}")"
- ln -sT "${from_path}" "${to_path}"
- echo Mounted $(basename "${from_path}")
- done
- if [ -f "/data/config/auto/startup.sh" ]; then
- pushd ${ROOT}
- . /data/config/auto/startup.sh
- popd
- fi
- exec "$@"
|