]> glassweightruler.freedombox.rocks Git - Ventoy.git/blob - INSTALL/tool/WebDeepin.sh
Fix the missing program issue for EasyU
[Ventoy.git] / INSTALL / tool / WebDeepin.sh
1 #!/bin/sh
2
3 LOGFILE=log.txt
4 VUSER=$(get_user)
5
6 if which browser >/dev/null 2>&1; then
7 :
8 else
9 if [ "$LANG" = "zh_CN.UTF-8" ]; then
10 echo " Built-in browser not found in the system, please use VentoyWeb.sh ..."
11 else
12 echo " 未找到系统内置的 browser (卸载了?)请使用 VentoyWeb.sh ..."
13 fi
14 exit 1
15 fi
16
17
18 if [ -e $LOGFILE ]; then
19 chown $VUSER $LOGFILE
20 else
21 su $VUSER -c "touch $LOGFILE"
22 fi
23
24 #delete the log.txt if it's more than 8MB
25 if [ -f $LOGFILE ]; then
26 logsize=$(stat -c '%s' $LOGFILE)
27 if [ $logsize -gt 8388608 ]; then
28 rm -f $LOGFILE
29 fi
30 fi
31
32
33 if [ -f ./tool/$TOOLDIR/V2DServer.xz ]; then
34 xz -d ./tool/$TOOLDIR/V2DServer.xz
35 chmod +x ./tool/$TOOLDIR/V2DServer
36 fi
37
38 rm -rf ./*_VTMPDIR
39 vtWebTmpDir=$(mktemp -d -p ./ --suffix=_VTMPDIR)
40 chown $VUSER $vtWebTmpDir
41
42
43 V2DServer "$HOST" "$PORT" &
44 V2DPid=$!
45 sleep 1
46
47 su $VUSER -c "browser --window-size=550,400 --app=\"http://${HOST}:${PORT}/index.html?chrome-app\" --user-data-dir=$vtWebTmpDir >> $LOGFILE 2>&1" &
48 WebPid=$!
49
50
51 vtoy_trap_exit() {
52
53 [ -d /proc/$V2DPid ] && kill -2 $V2DPid
54 [ -d /proc/$WebPid ] && kill -9 $WebPid
55
56 while [ -n "1" ]; do
57 curPid=$(ps -ef | grep -m1 "$vtWebTmpDir" | egrep -v '\sgrep\s' | awk '{print $2}')
58 if [ -z "$curPid" ]; then
59 break
60 fi
61
62 if [ -d /proc/$curPid ]; then
63 kill -9 $curPid
64 fi
65 done
66
67 [ -d $vtWebTmpDir ] && rm -rf $vtWebTmpDir
68
69 if [ -n "$OLDDIR" ]; then
70 CURDIR=$(pwd)
71 if [ "$CURDIR" != "$OLDDIR" ]; then
72 cd "$OLDDIR"
73 fi
74 fi
75
76 exit 1
77 }
78
79 trap vtoy_trap_exit HUP INT QUIT TSTP
80 sleep 1
81
82
83 vtVer=$(cat ventoy/version)
84 echo ""
85 echo "=================================================="
86 if [ "$LANG" = "zh_CN.UTF-8" ]; then
87 echo " Ventoy Server $vtVer 已经启动 ..."
88 else
89 echo " Ventoy Server $vtVer is running ..."
90 fi
91 echo "=================================================="
92 echo ""
93 echo "########### Press Ctrl + C to exit ###############"
94 echo ""
95
96 wait $WebPid
97
98 [ -d /proc/$V2DPid ] && kill -2 $V2DPid
99
100 [ -d $vtWebTmpDir ] && rm -rf $vtWebTmpDir
101
102 if [ -n "$OLDDIR" ]; then
103 CURDIR=$(pwd)
104 if [ "$CURDIR" != "$OLDDIR" ]; then
105 cd "$OLDDIR"
106 fi
107 fi