| import subprocess |
| import threading |
| import sys |
| import os |
| os .environ ['LD_PRELOAD']='/home/studio-lab-user/.conda/envs/default/lib/libtcmalloc_minimal.so.4' |
| def zrok_launch (OO0OO0O00OOO00000 ,O0O0O00OO0O0OO00O ): |
| subprocess .run (f"mkdir -p /tmp/models /tmp/Lora /tmp/ControlNet",shell =True ,stdout =subprocess .DEVNULL ,stderr =subprocess .DEVNULL ) |
| try : |
| O0O0000O00O000000 =subprocess .Popen (['python','zrok.py',OO0OO0O00OOO00000 ],stdout =subprocess .PIPE ,stderr =subprocess .PIPE ,text =True ) |
| O000000OOO000OOOO =subprocess .Popen (['python','main.py']+O0O0O00OO0O0OO00O ,stdout =sys .stdout ,stderr =sys .stdout ,text =True ) |
| def OOO0OO000OO0000OO (O00OOOOO0OOOOOOOO ): |
| try : |
| if O00OOOOO0OOOOOOOO .stdout is not None : |
| for O00000O00O00OOOO0 in O00OOOOO0OOOOOOOO .stdout : |
| print (O00000O00O00OOOO0 .strip ()) |
| except Exception : |
| pass |
| O0O0OO000O00OO000 =threading .Thread (target =OOO0OO000OO0000OO ,args =(O0O0000O00O000000 ,)) |
| OO000O000OOO0O0OO =threading .Thread (target =OOO0OO000OO0000OO ,args =(O000000OOO000OOOO ,)) |
| O0O0OO000O00OO000 .start () |
| OO000O000OOO0O0OO .start () |
| O0O0OO000O00OO000 .join () |
| OO000O000OOO0O0OO .join () |
| except KeyboardInterrupt : |
| pass |
| except Exception as O0OO000OO0OOO0OOO : |
| print ("Error:",str (O0OO000OO0OOO0OOO )) |
| if __name__ =="__main__": |
| if len (sys .argv )<2 : |
| sys .exit (1 ) |
| token =sys .argv [1 ] |
| launch_args =sys .argv [2 :] |
| zrok_launch (token ,launch_args ) |