-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstart-mysolido.bat
More file actions
136 lines (119 loc) · 4.06 KB
/
Copy pathstart-mysolido.bat
File metadata and controls
136 lines (119 loc) · 4.06 KB
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
@echo off
title MySolido — Jouw persoonlijke datakluis
color 0A
cd /d "%~dp0"
set "PYTHONPATH=%~dp0"
:: Voeg lokale node en python toe aan PATH
set "PATH=%~dp0node;%~dp0python;%~dp0python\Scripts;%~dp0node_modules\.bin;%PATH%"
echo.
echo ============================================
echo MySolido — Jouw persoonlijke datakluis
echo ============================================
echo.
echo Even geduld, MySolido wordt gestart...
echo.
:: Check of lokale node bestaat, anders systeem-node
if exist "%~dp0node\node.exe" (
set "NODE_CMD=%~dp0node\node.exe"
set "NPX_CMD=%~dp0node\npx.cmd"
) else (
where node >nul 2>nul
if errorlevel 1 (
echo [FOUT] Node.js is niet gevonden.
echo Installeer MySolido opnieuw of installeer Node.js via https://nodejs.org
echo.
pause
exit /b 1
)
set "NODE_CMD=node"
set "NPX_CMD=npx"
)
:: Check of lokale python bestaat, anders systeem-python
if exist "%~dp0python\python.exe" (
set "PYTHON_CMD=%~dp0python\python.exe"
) else (
where python >nul 2>nul
if errorlevel 1 (
echo [FOUT] Python is niet gevonden.
echo Installeer MySolido opnieuw of installeer Python via https://python.org
echo.
pause
exit /b 1
)
set "PYTHON_CMD=python"
)
:: Check of MySolido al draait
netstat -ano | findstr "127.0.0.1:5000" >nul 2>nul
if %ERRORLEVEL% equ 0 (
echo MySolido draait al. Browser wordt geopend...
start http://localhost:5000
exit /b 0
)
:: Zorg dat npm global map bestaat
if not exist "%APPDATA%\npm" mkdir "%APPDATA%\npm"
:: Check of node_modules bestaat
if not exist "node_modules" (
echo [1/3] Community Solid Server installeren...
echo Dit kan een paar minuten duren bij de eerste keer.
call %NPX_CMD% --yes @solid/community-server@7.1.9 -p 3000 -b http://127.0.0.1:3000 -f .data/ -c @css:config/file.json
echo.
)
:: Start CSS op de achtergrond
echo [1/2] Solid Server starten...
start /b "" cmd /c "%NPX_CMD% --yes @solid/community-server@7.1.9 -p 3000 -b http://127.0.0.1:3000 -f .data/ -c @css:config/file.json > css.log 2>&1"
:: Wacht tot CSS bereikbaar is (max 60 pogingen van 1 seconde)
set /a attempts=0
:wait_css
set /a attempts+=1
if %attempts% gtr 60 (
echo [FOUT] CSS start niet op. Controleer css.log voor details.
pause
exit /b 1
)
powershell -command "try { $r = Invoke-WebRequest -Uri 'http://127.0.0.1:3000' -UseBasicParsing -TimeoutSec 2; exit 0 } catch { exit 1 }" >nul 2>nul
if %ERRORLEVEL% equ 0 goto :css_running
echo Wachten op Solid Server... (%attempts%/60)
timeout /t 1 /nobreak >nul
goto :wait_css
:css_running
echo [OK] Solid Server draait
:: Start Flask op de achtergrond
echo [2/2] MySolido starten...
start /b "" cmd /c "%PYTHON_CMD% app.py > flask.log 2>&1"
:: Wacht tot Flask bereikbaar is (max 30 pogingen)
set /a attempts=0
:wait_flask
set /a attempts+=1
if %attempts% gtr 30 (
echo [FOUT] MySolido start niet op. Controleer flask.log voor details.
pause
exit /b 1
)
powershell -command "try { $r = Invoke-WebRequest -Uri 'http://127.0.0.1:5000' -UseBasicParsing -TimeoutSec 2; exit 0 } catch { exit 1 }" >nul 2>nul
if %ERRORLEVEL% equ 0 goto :flask_running
echo Wachten op MySolido... (%attempts%/30)
timeout /t 1 /nobreak >nul
goto :wait_flask
:flask_running
echo [OK] MySolido draait
echo.
:: Eerste-keer setup: standaardmappen aanmaken als pod nog leeg is
if not exist ".data\mysolido" (
echo [SETUP] Eerste keer — standaardmappen aanmaken...
powershell -command "try { Invoke-WebRequest -Uri 'http://127.0.0.1:5000/init-folders' -UseBasicParsing -TimeoutSec 15 | Out-Null } catch {}" >nul 2>nul
timeout /t 3 /nobreak >nul
)
:: Open browser
echo Browser wordt geopend...
start http://localhost:5000
echo.
echo ============================================
echo MySolido is bereikbaar op:
echo http://localhost:5000
echo ============================================
echo.
echo Dit venster openlaten! Sluiten = MySolido stopt.
echo Gebruik stop-mysolido.bat om te stoppen.
echo.
:: Houd het venster open
pause >nul