File size: 16,595 Bytes
d9fdeee
 
 
 
bfd3eaf
d9fdeee
 
 
 
 
0110d3a
 
d9fdeee
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bfd3eaf
 
0110d3a
1328d3e
cae477a
0110d3a
 
 
 
 
 
 
 
 
 
 
 
 
d9fdeee
 
bfd3eaf
 
b57274d
 
f3045c5
d9fdeee
 
bfd3eaf
d9fdeee
 
 
 
 
 
880f81e
 
bfd3eaf
1b1a087
bfd3eaf
d9fdeee
c7d88ef
6061816
 
 
 
4cf6d34
d9fdeee
c7d88ef
d9fdeee
2aca18e
fd71807
 
109cfcc
c7d88ef
bfd3eaf
c7d88ef
bfd3eaf
b57274d
c7d88ef
b57274d
c7d88ef
a46f00b
c7d88ef
503c361
 
e637d0d
b57274d
 
 
 
 
 
c7d88ef
 
fd71807
bfd3eaf
 
880f81e
 
 
 
fd71807
 
5009fbb
c7d88ef
 
 
 
 
d9fdeee
 
d98953a
 
 
 
 
 
 
 
bfd3eaf
 
d9fdeee
d58606a
cae477a
 
 
15dd930
 
662a9e9
c27277f
d46b144
b57274d
 
 
 
c7d88ef
 
b57274d
 
 
 
 
c7d88ef
b57274d
f3045c5
d9fdeee
 
 
 
 
 
 
 
 
 
0110d3a
 
 
 
 
 
 
 
 
 
 
 
b57274d
0110d3a
 
4aab3fc
bfd3eaf
ae76b93
 
0110d3a
 
 
 
 
 
 
 
d9fdeee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
"""
Stable Diffusion Webui Version 1.6
https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases/tag/v1.6.0
"""
#commit_id=r"5ef669de080814067961f28357256e8fe27544f4" #Version 1.6.0
import os
from sys import executable 
import subprocess
import pathlib
import gc
import time
import subprocess
def Gitclone(URI:str,ClonePath:pathlib.Path ) -> int :
  if pathlib.Path.exists(ClonePath):
    return 0
  for z in range(10):
    i=subprocess.run([r"git",r"clone",str(URI),str(ClonePath)])
    if(i.returncode == 0 ): 
     del i
     return 0
    else :
     del i
  raise Exception(str.format("clone \'{0}\' failed",URI))
    

def DownLoad(URI:str,DownloadPath:pathlib.Path,DownLoadFileName:str ) -> int:
  if (DownloadPath / DownLoadFileName).is_file(): return 0
  for z in range(10):
    i=subprocess.run([r"aria2c",r"-c",r"-x" ,r"16", r"-s",r"16", r"-k" ,r"1M" ,r"-m",r"0",r"--enable-mmap=false",r"--console-log-level=error",r"-d",str(DownloadPath),r"-o",DownLoadFileName,URI]);
    if(i.returncode == 0 ): 
      del i
      gc.collect()
      return 0
    else :
      del i
  raise Exception(str.format("download \'{0}\' failed",URI))

user_home =pathlib.Path.home().resolve()
os.chdir(str(user_home))
#clone stable-diffusion-webui repo
print("cloning stable-diffusion-webui repo")
Gitclone(r"https://github.com/AUTOMATIC1111/stable-diffusion-webui.git",user_home / r"stable-diffusion-webui")
#os.chdir(str(user_home / r"stable-diffusion-webui"))
#os.system("git reset --hard "+commit_id)
os.chdir(user_home / r"stable-diffusion-webui")
#Gitclone(r"https://github.com/vorstcavry/ncpt_colab_timer",user_home / r"stable-diffusion-webui" / r"extensions" / r"ncpt_colab_timer")
#Gitclone(r"https://github.com/vorstcavry/static",user_home / r"stable-diffusion-webui" / r"static")

def run_echo_command():
    try:
        start_huggingface
    except NameError:
        start_huggingface = int(time.time()) - 5

    cmd = f"echo -n {start_huggingface} > /home/user/app/stable-diffusion-webui/static/colabTimer.txt"
    subprocess.run(cmd, shell=True)

# Contoh pemanggilan fungsi run_echo_command:
run_echo_command()
os.chdir(user_home / r"stable-diffusion-webui")
#install extensions
print("installing extensions")
Gitclone(r"https://github.com/vorstcavry/embeddings",user_home / r"stable-diffusion-webui" / r"embeddings"  / r"negative")
Gitclone(r"https://github.com/vorstcavry/lora",user_home / r"stable-diffusion-webui" / r"models" / r"Lora" / r"positive")
Gitclone(r"https://huggingface.co/Xenos14/embeddings",user_home / r"stable-diffusion-webui" / r"embeddings" / r"Xenos")
Gitclone(r"https://huggingface.co/Xenos14/Loras",user_home / r"stable-diffusion-webui" / r"models" / r"Lora" / r"Xenos")

DownLoad(r"https://huggingface.co/embed/upscale/resolve/main/4x-UltraSharp.pth",user_home / r"stable-diffusion-webui" / r"models" / r"ESRGAN" ,r"4x-UltraSharp.pth")
while (True):
   i=subprocess.run([r"wget",r"https://raw.githubusercontent.com/camenduru/stable-diffusion-webui-scripts/main/run_n_times.py",r"-O",str(user_home / r"stable-diffusion-webui" / r"scripts" / r"run_n_times.py")])
   if(i.returncode == 0 ): 
    del i
    gc.collect()
    break
   else :
    del i
#Gitclone(r"https://github.com/deforum-art/deforum-for-automatic1111-webui",user_home / r"stable-diffusion-webui" / r"extensions" / r"deforum-for-automatic1111-webui" )
#Gitclone(r"https://github.com/AlUlkesh/stable-diffusion-webui-images-browser",user_home / r"stable-diffusion-webui" / r"extensions"/ r"stable-diffusion-webui-images-browser")
Gitclone(r"https://github.com/camenduru/stable-diffusion-webui-huggingface",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-huggingface")
#Gitclone(r"https://github.com/BlafKing/sd-civitai-browser-plus",user_home / r"stable-diffusion-webui" / r"extensions" / r"civitai-browser")
Gitclone(r"https://github.com/kohya-ss/sd-webui-additional-networks",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-additional-networks")
Gitclone(r"https://github.com/Mikubill/sd-webui-controlnet",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-controlnet")
#Gitclone(r"https://github.com/fkunn1326/openpose-editor",user_home / r"stable-diffusion-webui" / r"extensions" / r"openpose-editor")
#Gitclone(r"https://github.com/jexom/sd-webui-depth-lib",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-depth-lib")
#Gitclone(r"https://github.com/hnmr293/posex",user_home / r"stable-diffusion-webui" / r"extensions" / r"posex")
#Gitclone(r"https://github.com/nonnonstop/sd-webui-3d-open-pose-editor",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-3d-open-pose-editor")
#Gitclone(r"https://github.com/hnmr293/posex",user_home / r"stable-diffusion-webui" / r"extensions" / r"posex")
#Gitclone(r"https://github.com/EdithForsaken/sd-webui-cloud-inference.git",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-cloud-inference")
Gitclone(r"https://github.com/DominikDoom/a1111-sd-webui-tagcomplete.git" , user_home / r"stable-diffusion-webui" / r"extensions" / r"a1111-sd-webui-tagcomplete")
#Gitclone(r"https://github.com/camenduru/sd-webui-tunnels",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-tunnels")
Gitclone(r"https://github.com/etherealxx/batchlinks-webui",user_home / r"stable-diffusion-webui" / r"extensions" / r"batchlinks-webui")
Gitclone(r"https://github.com/zanllp/sd-webui-infinite-image-browsing",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-infinite-image-browsing")
#Gitclone(r"https://github.com/catppuccin/stable-diffusion-webui",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-catppuccin")
#Gitclone(r"https://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-rembg")
Gitclone(r"https://tinyurl.com/aspect-ratio-v",user_home / r"stable-diffusion-webui" / r"extensions" / r"aspect-ratio")
Gitclone(r"https://github.com/vorstcavry/cleaner",user_home / r"stable-diffusion-webui" / r"extensions" / r"cleaner")
Gitclone(r"https://github.com/hnmr293/sd-webui-llul",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-llul")
#Gitclone(r"https://github.com/IDEA-Research/DWPose",user_home / r"stable-diffusion-webui" / r"extensions" / r"DWPose")
Gitclone(r"https://github.com/Bing-su/adetailer",user_home / r"stable-diffusion-webui" / r"extensions" / r"adetailer")
#Gitclone(r"https://github.com/NoCrypt/sd_hf_out",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_hf_out")
#Gitclone(r"https://github.com/continue-revolution/sd-webui-animatediff",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-animatediff")
#Gitclone(r"https://github.com/deforum-art/sd-webui-deforum",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-deforum")
#Gitclone(r"https://github.com/Gourieff/sd-webui-reactor",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-reactor")
#Gitclone(r"https://github.com/antfu/sd-webui-qrcode-toolkit",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-qrcode-toolkit")
#Gitclone(r"https://github.com/huchenlei/sd-webui-openpose-editor",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-openpose-editor")
#Gitclone(r"https://github.com/Physton/sd-webui-prompt-all-in-one",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-prompt-all-in-one")
#Gitclone(r"https://github.com/Physton/sd-webui-prompt-all-in-one",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-prompt-all-in-one")
#Gitclone(r"https://github.com/kabachuha/discord-rpc-for-automatic1111-webui",user_home / r"stable-diffusion-webui" / r"extensions" / r"discord-rpc-for-automatic1111-webui")
#Gitclone(r"https://github.com/d8ahazard/sd_dreambooth_extension",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_dreambooth_extension")
Gitclone(r"https://github.com/hako-mikan/sd-webui-supermerger",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-supermerger")
Gitclone(r"https://github.com/aka7774/sd_filer",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_filer")
Gitclone(r"https://github.com/arenasys/stable-diffusion-webui-model-toolkit",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-model-toolkit")
Gitclone(r"https://github.com/civitai/sd_civitai_extension",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_civitai_extension")
Gitclone(r"https://github.com/adieyal/sd-dynamic-prompts",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-dynamic-prompts")
Gitclone(r"https://github.com/diffus-me/sd-webui-facefusion",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-webui-facefusion")
Gitclone(r"https://github.com/klimaleksus/stable-diffusion-webui-embedding-merge", user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-embedding-merge")


#Gitclone(r"https://github.com/NoCrypt/sd_hf_out",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_hf_out")
#Gitclone(r"https://github.com/Iyashinouta/sd-model-downloader",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-model-downloader")
#Gitclone(r"https://github.com/AIrjen/OneButtonPrompt",user_home / r"stable-diffusion-webui" / r"extensions" / r"OneButtonPrompt")
#Gitclone(r"https://github.com/AUTOMATIC1111/stable-diffusion-webui-wildcards",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-wildcards")
#Gitclone(r"https://github.com/adieyal/sd-dynamic-prompts",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd-dynamic-prompts")
#Gitclone(r"https://github.com/d8ahazard/sd_dreambooth_extension",user_home / r"stable-diffusion-webui" / r"extensions" / r"sd_dreambooth_extension")
#Gitclone(r"https://github.com/yfszzx/stable-diffusion-webui-inspiration",user_home / r"stable-diffusion-webui" / r"extensions" / r"stable-diffusion-webui-inspiration")
#Gitclone(r"https://github.com/Coyote-A/ultimate-upscale-for-automatic1111",user_home / r"stable-diffusion-webui" / r"extensions" / r"ultimate-upscale-for-automatic1111")

os.mkdir (user_home / r"stable-diffusion-webui/extensions/sd-dynamic-prompts/wildcards/")
os.chdir (user_home / r"stable-diffusion-webui/extensions/sd-dynamic-prompts/wildcards/")
Gitclone(r"https://huggingface.co/Xenos14/wildcards",user_home /"stable-diffusion-webui/extensions/sd-dynamic-prompts/wildcards/Xenos")

os.chdir(user_home / r"stable-diffusion-webui")
#download ControlNet models
print("extensions dolwnload done .\ndownloading ControlNet models")
dList =[ r"https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/resolve/main/control_v11p_sd15s2_lineart_anime_fp16.safetensors",
               r"https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/resolve/main/control_v11p_sd15_openpose_fp16.safetensors",
               r"https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/resolve/main/control_v11p_sd15_lineart_fp16.safetensors",
               r"https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/resolve/main/control_v11p_sd15_inpaint_fp16.safetensors",
               r"https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/resolve/main/control_v11p_sd15_canny_fp16.safetensors"]
for i in range(0,len(dList)): DownLoad(dList[i],user_home / r"stable-diffusion-webui" / r"models" / r"ControlNet",pathlib.Path(dList[i]).name)
del dList

print("ControlNet models download done.\ndownloading model")
#Stable Diffusion Checkpoint Model

#DownLoad(r"https://huggingface.co/vorstcavry/mymodel/resolve/main/Cavry_V2.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Checkpoint",r"Cavry_V2.safetensors")
#DownLoad(r"https://civitai.com/api/download/models/162380?type=Model&format=SafeTensor&size=pruned&fp=fp16",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Checkpoint",r"LahMysteriousSDXL_v40.safetensors")
#DownLoad(r"https://civitai.com/api/download/models/102222",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Checkpoint",r"xxmix9realistic_v40.safetensors")



#downloadvae
DownLoad(r"https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"VAE",r"vae-ft-mse-840000-ema-pruned.safetensors")
#DownLoad(r"https://huggingface.co/vorstcavry/loraasia1/resolve/main/japaneseDollLikeness_v15.safetensors",user_home / r"stable-diffusion-webui" /  r"models"/ r"lora",r"japaneseDollLikeness_v15.safetensors")
#DownLoad(r"https://huggingface.co/vorstcavry/loraasia1/resolve/main/koreanDollLikeness_v20.safetensors",user_home / r"stable-diffusion-webui" /  r"models"/ r"lora",r"koreanDollLikeness_v20.safetensors")
#DownLoad(r"https://huggingface.co/vorstcavry/loraasia1/resolve/main/taiwanDollLikeness_v15.safetensors",user_home / r"stable-diffusion-webui" /  r"models"/ r"lora",r"taiwanDollLikeness_v15.safetensors")

#DownLoad(r"https://huggingface.co/Xenos14/Checkpoints/resolve/main/XenoMATION-V1.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoMATION-V1.safetensors")
#DownLoad(r"https://huggingface.co/Xenos14/Checkpoints/resolve/main/XenoXTC-vTOON.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoXTC-vTOON.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/Checkpoints/resolve/main/XenoGASM-MK2.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoGASM-MK2.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/TestBed/resolve/main/2024-Gen9/XenoENGINE-ArtStyle-v5.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoENGINE-ArtStyle-v5.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/Checkpoints/resolve/main/Kitsch-In-Sync-v2.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"Kitsch-In-Sync-v2.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/TestBed/resolve/main/2024-Real/XenoREALITY-V3.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoREALITY-V3.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/TestBed/resolve/main/2024-Real/XenoGRAPH.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoGRAPH.safetensors")
#DownLoad(r"https://huggingface.co/Xenos14/Checkpoints/resolve/main/XenoMATION-V1.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoMATION-V1.safetensors")
DownLoad(r"https://huggingface.co/Xenos14/TestBed/resolve/main/2024-HypnoX/XenoMANIA-V1.safetensors",user_home / r"stable-diffusion-webui" / r"models" / r"Stable-diffusion" / r"Xenos",r"XenoMANIA-V1.safetensors")

#GFPGAN Model
#detection Resnet50
DownLoad(r"https://github.com/xinntao/facexlib/releases/download/v0.1.0/detection_Resnet50_Final.pth",user_home / r"stable-diffusion-webui"/r"models"/r"GFPGAN",r"detection_Resnet50_Final.pth")
#parsing_parsenet
DownLoad(r"https://github.com/xinntao/facexlib/releases/download/v0.2.2/parsing_parsenet.pth",user_home / r"stable-diffusion-webui"/r"models"/r"GFPGAN",r"parsing_parsenet.pth")
#GFPGANv1.4
DownLoad(r"https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.4.pth",user_home / r"stable-diffusion-webui"/r"models"/r"GFPGAN",r"GFPGANv1.4.pth")
#strt Stable Diffusion Webui
print("Done\nStarting Webui...")
os.chdir(user_home / r"stable-diffusion-webui")
import subprocess
import pathlib

user_home = pathlib.Path("/home/user")  # Gantilah dengan path yang sesuai

args = [
    executable,
    user_home / "stable-diffusion-webui" / "launch.py",
    "--precision", "full",
    "--no-half",
    "--no-half-vae",
    "--enable-insecure-extension-access",
#    "--medvram",
    "--skip-torch-cuda-test",
    "--enable-console-prompts",
    "--ui-config-file=" + str(pathlib.Path(__file__).parent / "ui-config.json"),
    "--ui-settings-file=" + str(pathlib.Path(__file__).parent / "config.json"),
#    "--hf-token-out",
#    "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"  # Gantilah dengan token yang sesuai
]

args = [arg.as_posix() if isinstance(arg, pathlib.PosixPath) else arg for arg in args]

try:
    ret = subprocess.run(args)
except Exception as e:
    print("Error:", e)
del os ,user_home ,pyexecutable ,subprocess