TiledViz
Loading...
Searching...
No Matches
scriptff.sh
1#!/bin/bash
2
3DEBUG=false
4INCOGNITO='-private'
5
6TIMEWAIT=0
7
8DATE=$(mydate)
9APPLINK="$1"
10echo "APPLINK='$APPLINK'"
11
12# Scale on TiledViz views
13APPSCALE=$2
14
15# DISPLAYWIDTH=1920
16# DISPLAYHEIGHT=2160
17DISPLAYWIDTH=$(bc <<< 1920/$APPSCALE)
18DISPLAYHEIGHT=$(bc <<< 2160/$APPSCALE)
19
20WALLWIDTH=$((DISPLAYWIDTH*4))
21WALLHEIGHT=$((DISPLAYHEIGHT*2))
22
23APPWIDTH=$WALLWIDTH
24APPHEIGHT=$WALLHEIGHT
25
26HOSTFILE=./listhost
27
28OUT=./launch_file.sh
29
30
31while IFS='' read -r -u3 line2; do
32 IFS=' ' read -r -a aline <<<${line2}
33 echo ${aline[0]} ${aline[1]} ${aline[2]} ${aline[3]}
34 host=${aline[0]}
35 MYDISP=${aline[1]}
36
37 SHIFTLEFT=$((DISPLAYWIDTH*${aline[2]}))
38 SHIFTTOP=$((DISPLAYHEIGHT*${aline[3]}))
39 OUTLOG="/tmp/out_firefox_${MYDISP}_${DATE}.log"
40
41 RET=$?
42 if [ $RET -eq 0 ]; then
43 APPSRC=$(echo ${APPLINK} | sed -e "s/\‍(.*\‍)/\1.{DISPLAYWIDTH=${DISPLAYWIDTH},DISPLAYHEIGHT=${DISPLAYHEIGHT},WALLWIDTH=${WALLWIDTH},WALLHEIGHT=${WALLHEIGHT},APPWIDTH=${APPWIDTH},APPHEIGHT=${APPHEIGHT},SHIFTLEFT=${SHIFTLEFT},SHIFTTOP=${SHIFTTOP},APPSCALE=${APPSCALE}}/")
44 else
45 APPSRC=${APPLINK}
46 fi
47 echo ${APPSRC}
48
49 # First use
50 CreateProfile=$( ssh ${host} 'if [ -d '${HOME}'/.mozilla/firefox/*temp-profile-$(hostname)'${MYDISP}' ]; then echo false; else echo true; fi')
51 echo "CreateProfile = $CreateProfile"
52 if ( $CreateProfile ); then
53 ssh ${host} 'DISPLAY=:'${MYDISP}' firefox -CreateProfile temp-profile-$(hostname)'${MYDISP}
54 fi
55
56 # COMMAND='ls ${HOME}/.mozilla/firefox/*temp-profile-$(hostname)${MYDISP} > ${HOME}/.mozilla/firefox/$(hostname)${MYDISP}'
57 # ssh ${host} "MYDISP=$MYDISP $COMMAND"
58 # if ($DEBUG); then
59 # FIREFOXCOMMAND='firefox -profile $( cat ${HOME}/.mozilla/firefox/$(hostname)${MYDISP} ) --no-remote -purgecaches '${INCOGNITO}' --display :'${MYDISP}' file:///tmp/launch_'${MYDISP}_${DATE}'.html'
60 # #-profile $(find ~/.mozilla/firefox -type d -name "*temp-profile-$(hostname)${MYDISP}")
61 # # --allow-file-access-from-files --new-instance --start-fullscreen
62 # else
63 # FIREFOXCOMMAND='firefox -profile $( cat ${HOME}/.mozilla/firefox/$(hostname)${MYDISP} ) --no-remote -purgecaches '${INCOGNITO}' --display :'${MYDISP}' file:///tmp/launch_'${MYDISP}_${DATE}'.html'
64 # # --allow-file-access-from-files --new-instance --start-fullscreen
65 # # --disable-application-cache --aggressive-cache-discard --enable-aggressive-domstorage-flushing
66 # fi
67 ssh ${host} "DISPLAY=:${MYDISP} echo ${FIREFOXCOMMAND} > ${OUTLOG}"
68 # ssh ${host} "sed -e 's/WALLWIDTH/${WALLWIDTH}/g' -e 's/WALLHEIGHT/${WALLHEIGHT}/g' -e 's/APPWIDTH/${APPWIDTH}/g' -e 's/APPHEIGHT/${APPHEIGHT}/g' -e 's/SHIFTLEFT/${SHIFTLEFT}/' -e 's/SHIFTTOP/${SHIFTTOP}/' -e 's/APPSCALE/${APPSCALE}/' -e 's@APPSRC@${APPSRC}@' ~mmancip/VIZMDLS/WALL/launch.html > /tmp/launch_${MYDISP}_${DATE}.html; DISPLAY=:${MYDISP} MYDISP=${MYDISP} ${FIREFOXCOMMAND} >> ${OUTLOG} 2>&1 &" &
69 #sudo npm install --global http-server@13.1.0
70 ssh ${host} "OUT_http=/tmp/out_http-server_$(date +%F_%H-%M); which http-server > \${OUT_http} ; http-server -a localhost -c-1 --no-dotfiles --proxy http://localhost:8080 /tmp |grep -v 'favicon' >> \${OUT_http} 2>&1 &"
71 echo "sed -e 's/WALLWIDTH/${WALLWIDTH}/g' -e 's/WALLHEIGHT/${WALLHEIGHT}/g' -e 's/APPWIDTH/${APPWIDTH}/g' -e 's/APPHEIGHT/${APPHEIGHT}/g' -e 's/SHIFTLEFT/${SHIFTLEFT}/' -e 's/SHIFTTOP/${SHIFTTOP}/' -e 's/APPSCALE/${APPSCALE}/' -e 's@APPSRC@${APPSRC}@' ~mmancip/VIZMDLS/WALL/launch.html > /tmp/launch_${MYDISP}_${DATE}.html; DISPLAY=:${MYDISP} firefox -profile \${HOME}/.mozilla/firefox/*.temp-profile-\$(hostname)${MYDISP} --no-remote -purgecaches ${INCOGNITO} --display :${MYDISP} http://localhost:8080/launch_${MYDISP}_${DATE}.html >> ${OUTLOG} 2>&1 &" | ssh ${host} -T "cat > /tmp/call_launchff"
72
73 ssh ${host} "chmod u+x /tmp/call_launchff"
74 ssh ${host} "/tmp/call_launchff"
75 sleep $TIMEWAIT
76
77 i=$(( i + 1 ))
78done 3<${HOSTFILE}
79
80while IFS='' read -r -u3 line2; do
81 IFS=' ' read -r -a aline <<<${line2}
82 host=${aline[0]}
83 MYDISP=${aline[1]}
84 ssh ${host} "DISPLAY=:${MYDISP} $PWD/replace"
85done 3<${HOSTFILE}
86
87sleep 1
88while IFS='' read -r -u3 line2; do
89 IFS=' ' read -r -a aline <<<${line2}
90 echo ${aline[0]} ${aline[1]} ${aline[2]} ${aline[3]}
91 host=${aline[0]}
92 MYDISP=${aline[1]}
93 OUTLOG="/tmp/out_firefox_${MYDISP}_${DATE}.log"
94
95 ssh ${host} "pgrep -fa Firefox >> ${OUTLOG}"
96 ssh ${host} "export DISPLAY=:${MYDISP}; wmctrl -l -G >> ${OUTLOG}"
97 ssh ${host} "export DISPLAY=:${MYDISP}; wmctrl -l -G |grep Firefox | sed -e 's@\‍(0x[0-9a-f]*\‍) .*@\1@' >> ${OUTLOG}"
98 ssh ${host} 'export DISPLAY=:'${MYDISP}'; wmctrl -i -r $( wmctrl -l -G |grep Firefox | sed -e "s&\‍(0x[0-9a-f]*\‍) .*&\1&" ) -b toggle,fullscreen >> '${OUTLOG}
99done 3<${HOSTFILE}
100
101sleep 4
102if ($DEBUG); then
103 clush -g visu 'ls -la /tmp/*'${DATE}'*'
104else
105 clush -g visu 'rm /tmp/*'${DATE}'*'
106fi