forked from STI/Astroport.ONE
kubo_v0.16.0_linux-amd64.install.sh
This commit is contained in:
parent
ada50bb265
commit
0f878e922b
79
12345.sh
79
12345.sh
|
@ -5,7 +5,7 @@
|
|||
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
||||
################################################################################
|
||||
################################################################################
|
||||
## ASTROPORT API SERVER http://$myIP:1234
|
||||
## ASTROPORT API SERVER http://$myHOST:1234
|
||||
## ATOMIC GET REDIRECT TO ONE SHOT WEB SERVICE THROUGH PORTS
|
||||
## ASYNCHRONOUS IPFS API
|
||||
################################################################################
|
||||
|
@ -20,8 +20,9 @@ MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
|
|||
IPFSNODEID=$(cat ~/.ipfs/config | jq -r .Identity.PeerID)
|
||||
myIP=$(hostname -I | awk '{print $1}' | head -n 1)
|
||||
isLAN=$(echo $myIP | grep -E "/(^127\.)|(^192\.168\.)|(^10\.)|(^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)|(^::1$)|(^[fF][cCdD])/")
|
||||
[[ ! $myIP || $isLAN ]] && myIP="ipfs.localhost" && myIPort="ipfs.localhost:8080" && myHTTP="http://" ## LAN STATION
|
||||
[[ ! $isLAN ]] && myIP="astroport.copylaradio.com" && myIPort="ipfs.copylaradio.com" && myHTTP="https://" ## WAN STATION
|
||||
|
||||
[[ $isLAN ]] && myHOST="ipfs.localhost" && myHOSTPort="ipfs.localhost:8080" && myHTTP="http://" ## LAN STATION
|
||||
[[ ! $isLAN ]] && myHOST="astroport.copylaradio.com" && myHOSTPort="ipfs.copylaradio.com" && myHTTP="https://" ## WAN STATION
|
||||
|
||||
PORT=12345
|
||||
|
||||
|
@ -33,7 +34,7 @@ mkdir -p ~/.zen/tmp/coucou/
|
|||
|
||||
## CHECK FOR ANY ALREADY RUNNING nc
|
||||
ncrunning=$(ps auxf --sort=+utime | grep -w 'nc -l -p 1234' | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1)
|
||||
[[ $ncrunning ]] && echo "ERROR - API Server Already Running - ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&getipns " && exit 1
|
||||
[[ $ncrunning ]] && echo "ERROR - API Server Already Running - ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&getipns " && exit 1
|
||||
## NOT RUNNING TWICE
|
||||
|
||||
# Some client needs to respect that
|
||||
|
@ -48,14 +49,14 @@ Content-Type: text/html; charset=UTF-8
|
|||
echo "_________________________________________________________"
|
||||
echo "LAUNCHING Astroport API Server - TUBE : $TUBE - "
|
||||
echo
|
||||
echo "NEW TW ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&g1pub=on&email=totodu56@yopmail.com"
|
||||
echo "NEW TW ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&g1pub=on&email=totodu56@yopmail.com"
|
||||
echo
|
||||
echo "TW R/W MODE ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&official"
|
||||
echo "TW R/W MODE ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&official"
|
||||
echo
|
||||
echo "GCHANGE MESSAGING ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&messaging"
|
||||
echo "OPEN GCHANGE ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&g1pub"
|
||||
echo "GCHANGE MESSAGING ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&messaging"
|
||||
echo "OPEN GCHANGE ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&g1pub"
|
||||
echo
|
||||
echo "TESTCRAFT ${myHTTP}$myIP:1234/?salt=totodu56&pepper=totodu56&testcraft=on&nodeid=12D3KooWK1ACupF7RD3MNvkBFU9Z6fX11pKRAR99WDzEUiYp5t8j&dataid=QmPXhrqQrS1bePKJUPH9cJ2qe4RrNjaJdRXaJzSjxWuvDi"
|
||||
echo "TESTCRAFT ${myHTTP}$myHOST:1234/?salt=totodu56&pepper=totodu56&testcraft=on&nodeid=12D3KooWK1ACupF7RD3MNvkBFU9Z6fX11pKRAR99WDzEUiYp5t8j&dataid=QmPXhrqQrS1bePKJUPH9cJ2qe4RrNjaJdRXaJzSjxWuvDi"
|
||||
echo "_________________________________________________________"
|
||||
|
||||
function urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; }
|
||||
|
@ -80,14 +81,14 @@ while true; do
|
|||
|
||||
## CHECK 12345 PORT RUNNING (STATION FoF MAP)
|
||||
maprunning=$(ps auxf --sort=+utime | grep -w '_12345.sh' | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1)
|
||||
[[ ! $maprunning ]] && ($MY_PATH/_12345.sh &) && echo '(ᵔ◡◡ᵔ) LAUNCHING '${myHTTP}$myIP:'12345 (ᵔ◡◡ᵔ)'
|
||||
[[ ! $maprunning ]] && ($MY_PATH/_12345.sh &) && echo '(ᵔ◡◡ᵔ) LAUNCHING '${myHTTP}$myHOST:'12345 (ᵔ◡◡ᵔ)'
|
||||
|
||||
############### ACTIVATE USE ON QUICK IPFS DRIVE
|
||||
### CREATE IPNS KEY - ACTIVATE WHITH ENOUGH BOOTSTRAP
|
||||
#~ echo
|
||||
#~ ipfs key rm ${PORT} > /dev/null 2>&1
|
||||
#~ SESSIONNS=$(ipfs key gen ${PORT})
|
||||
#~ echo "IPNS SESSION ${myHTTP}$myIPort/ipns/$SESSIONNS CREATED"
|
||||
#~ echo "IPNS SESSION ${myHTTP}$myHOSTPort/ipns/$SESSIONNS CREATED"
|
||||
|
||||
### # USE IT #
|
||||
### MIAM=$(echo ${PORT} | ipfs add -q)
|
||||
|
@ -100,21 +101,21 @@ while true; do
|
|||
SALT=""; PEPPER=""; APPNAME=""
|
||||
|
||||
############### ############### ############### ############### templates/index.http
|
||||
# REPLACE myIP in http response template (fixing next API meeting point)
|
||||
sed "s~127.0.0.1:12345~$myIP:${PORT}~g" $HOME/.zen/Astroport.ONE/templates/index.http > ~/.zen/tmp/coucou/${MOATS}.myIP.http
|
||||
sed -i "s~127.0.0.1~$myIP~g" ~/.zen/tmp/coucou/${MOATS}.myIP.http
|
||||
sed -i "s~:12345~:${PORT}~g" ~/.zen/tmp/coucou/${MOATS}.myIP.http
|
||||
# REPLACE myHOST in http response template (fixing next API meeting point)
|
||||
sed "s~127.0.0.1:12345~$myHOST:${PORT}~g" $HOME/.zen/Astroport.ONE/templates/index.http > ~/.zen/tmp/coucou/${MOATS}.myHOST.http
|
||||
sed -i "s~127.0.0.1~$myHOST~g" ~/.zen/tmp/coucou/${MOATS}.myHOST.http
|
||||
sed -i "s~:12345~:${PORT}~g" ~/.zen/tmp/coucou/${MOATS}.myHOST.http
|
||||
|
||||
sed -i "s~_SESSIONLNK_~${myHTTP}${myIPort}/ipns/${SESSIONNS}~g" ~/.zen/tmp/coucou/${MOATS}.myIP.http
|
||||
sed -i "s~_SESSIONLNK_~${myHTTP}${myHOSTPort}/ipns/${SESSIONNS}~g" ~/.zen/tmp/coucou/${MOATS}.myHOST.http
|
||||
|
||||
sed -i "s~_IPFSNODEID_~${IPFSNODEID}~g" ~/.zen/tmp/coucou/${MOATS}.myIP.http ## NODE PUBLISH
|
||||
sed -i "s~_HOSTNAME_~$(hostname)~g" ~/.zen/tmp/coucou/${MOATS}.myIP.http ## HOSTNAME
|
||||
sed -i "s~_IPFSNODEID_~${IPFSNODEID}~g" ~/.zen/tmp/coucou/${MOATS}.myHOST.http ## NODE PUBLISH
|
||||
sed -i "s~_HOSTNAME_~$(hostname)~g" ~/.zen/tmp/coucou/${MOATS}.myHOST.http ## HOSTNAME
|
||||
############### ############### ############### ###############
|
||||
|
||||
############################################################################
|
||||
## SERVE LANDING REDIRECT PAGE ~/.zen/tmp/coucou/${MOATS}.myIP.http on PORT 1234 (LOOP BLOCKING POINT)
|
||||
## SERVE LANDING REDIRECT PAGE ~/.zen/tmp/coucou/${MOATS}.myHOST.http on PORT 1234 (LOOP BLOCKING POINT)
|
||||
############################################################################
|
||||
REQ=$(cat $HOME/.zen/tmp/coucou/${MOATS}.myIP.http | nc -l -p 1234 -q 1) ## # WAIT FOR 1234 PORT CONTACT
|
||||
REQ=$(cat $HOME/.zen/tmp/coucou/${MOATS}.myHOST.http | nc -l -p 1234 -q 1) ## # WAIT FOR 1234 PORT CONTACT
|
||||
|
||||
URL=$(echo "$REQ" | grep '^GET' | cut -d ' ' -f2 | cut -d '?' -f2)
|
||||
HOSTP=$(echo "$REQ" | grep '^Host:' | cut -d ' ' -f2 | cut -d '?' -f2)
|
||||
|
@ -265,7 +266,7 @@ while true; do
|
|||
cat ~/.zen/tmp/coucou/${MOATS}.messaging.json >> ~/.zen/tmp/coucou/${MOATS}.index.redirect
|
||||
|
||||
## SEND REPONSE PROCESS IN BACKGROUD
|
||||
#~ cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
#~ (
|
||||
#~ REPONSE=$(cat ~/.zen/tmp/coucou/${MOATS}.messaging.json | ipfs add -q)
|
||||
#~ ipfs name publish --allow-offline --key=${PORT} /ipfs/$REPONSE
|
||||
|
@ -296,7 +297,7 @@ while true; do
|
|||
echo "GCHANGE REDIRECTING https://www.gchange.fr/#/app/user/"${G1PUB}"/"
|
||||
### REPONSE=$(echo https://www.gchange.fr/#/app/user/${G1PUB}/ | ipfs add -q)
|
||||
### ipfs name publish --allow-offline --key=${PORT} /ipfs/$REPONSE
|
||||
### echo "SESSION ${myHTTP}$myIP:8080/ipns/$SESSIONNS "
|
||||
### echo "SESSION ${myHTTP}$myHOST:8080/ipns/$SESSIONNS "
|
||||
(
|
||||
cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > /dev/null 2>&1
|
||||
${MY_PATH}/tools/TW.cache.sh ${ASTRONAUTENS} ${MOATS}
|
||||
|
@ -465,20 +466,20 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
&& (echo "$HTTPCORS ERROR - BAD MadeInZion PLAYER in /ipns/${ASTRONAUTENS} - CONTINUE " | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &) && echo "BAD MadeInZion PLAYER (☓‿‿☓) Execution time was "`expr $(date +%s) - $start` seconds. && continue
|
||||
|
||||
#
|
||||
# CRYPTO DECODING CRYPTIP -> myIP
|
||||
cat ~/.zen/tmp/MadeInZion.json | jq -r .[].secret | base16 -d > ~/.zen/tmp/myIP.$G1PUB.enc.2
|
||||
$MY_PATH/tools/natools.py decrypt -f pubsec -k ~/.zen/tmp/coucou/${MOATS}.secret.key -i ~/.zen/tmp/myIP.$G1PUB.enc.2 -o ~/.zen/tmp/myIP.$G1PUB > /dev/null 2>&1
|
||||
GWIP=$(cat ~/.zen/tmp/myIP.$G1PUB > /dev/null 2>&1)
|
||||
# CRYPTO DECODING CRYPTIP -> myHOST
|
||||
cat ~/.zen/tmp/MadeInZion.json | jq -r .[].secret | base16 -d > ~/.zen/tmp/myHOST.$G1PUB.enc.2
|
||||
$MY_PATH/tools/natools.py decrypt -f pubsec -k ~/.zen/tmp/coucou/${MOATS}.secret.key -i ~/.zen/tmp/myHOST.$G1PUB.enc.2 -o ~/.zen/tmp/myHOST.$G1PUB > /dev/null 2>&1
|
||||
GWIP=$(cat ~/.zen/tmp/myHOST.$G1PUB > /dev/null 2>&1)
|
||||
|
||||
[[ ! $GWIP ]] && GWIP=$myIP ## CLEAR
|
||||
[[ ! $GWIP ]] && GWIP=$myHOST ## CLEAR
|
||||
#
|
||||
echo "TW is on ${myHTTP}$GWIP"
|
||||
echo "BECOMING TW GATEWAY : $myIP" ## BECOMING OFFICIAL BECOME R/W TW
|
||||
echo "BECOMING TW GATEWAY : $myHOST" ## BECOMING OFFICIAL BECOME R/W TW
|
||||
|
||||
####################
|
||||
echo $GWIP > ~/.zen/tmp/GWIP
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i $HOME/.zen/tmp/GWIP -o $HOME/.zen/tmp/myIP.$G1PUB.enc
|
||||
CRYPTIP=$(cat ~/.zen/tmp/myIP.$G1PUB.enc | base16)
|
||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i $HOME/.zen/tmp/GWIP -o $HOME/.zen/tmp/myHOST.$G1PUB.enc
|
||||
CRYPTIP=$(cat ~/.zen/tmp/myHOST.$G1PUB.enc | base16)
|
||||
## WRITE CRYPTIP into MadeInZion tiddler
|
||||
echo "# CRYPTO ENCODING $GWIP -> $CRYPTIP"
|
||||
sed -i "s~$SECRET~$CRYPTIP~g" ~/.zen/tmp/MadeInZion.json
|
||||
|
@ -486,12 +487,12 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
###########################
|
||||
# Modification Tiddlers de contrôle de GW & API
|
||||
[[ $isLAN ]] \
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}$myIP':5001"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}$myIP':8080"}]' > ~/.zen/tmp/8080.json
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}$myHOST':5001"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}$myHOST':8080"}]' > ~/.zen/tmp/8080.json
|
||||
|
||||
[[ ! $isLAN ]] \
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}$myIP'/api"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}$myIP'"}]' > ~/.zen/tmp/8080.json
|
||||
&& echo '[{"title":"$:/ipfs/saver/api/http/localhost/5001","tags":"$:/ipfs/core $:/ipfs/saver/api","text":"'${myHTTP}$myHOST'/api"}]' > ~/.zen/tmp/5001.json \
|
||||
&& echo '[{"title":"$:/ipfs/saver/gateway/http/localhost","tags":"$:/ipfs/core $:/ipfs/saver/gateway","text":"'${myHTTP}$myHOST'"}]' > ~/.zen/tmp/8080.json
|
||||
|
||||
tiddlywiki --load ~/.zen/tmp/coucou/${MOATS}.astroindex.html \
|
||||
--import "$HOME/.zen/tmp/MadeInZion.json" "application/json" \
|
||||
|
@ -534,8 +535,8 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
echo "$PLAYER" > ~/.zen/game/players/$PLAYER/.player
|
||||
echo "$G1PUB" > ~/.zen/game/players/$PLAYER/.g1pub
|
||||
echo "${ASTRONAUTENS}" > ~/.zen/game/players/$PLAYER/.playerns
|
||||
GWIP=${myIP}
|
||||
TWIP=${myIP}
|
||||
GWIP=${myHOST}
|
||||
TWIP=${myHOST}
|
||||
echo "*********** OFFICIAL LOGIN GOES TO $TWIP"
|
||||
|
||||
else
|
||||
|
@ -600,9 +601,9 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
cat ~/.zen/tmp/${IPFSNODEID}/_timings | tail -n 1
|
||||
) &
|
||||
|
||||
echo "$HTTPCORS - <meta http-equiv='refresh' content='3; url=\"http://"$myIP":8080/ipns/"$ASTRONAUTENS"\"'/>
|
||||
echo "$HTTPCORS - <meta http-equiv='refresh' content='3; url=\"http://"$myHOST":8080/ipns/"$ASTRONAUTENS"\"'/>
|
||||
<h1>BOOTING - ASTRONAUT $PSEUDO </h1> IPFS FORMATING - [$SALT + $PEPPER] (${WHAT})
|
||||
<br>- TW - http://$myIP:8080/ipns/$ASTRONAUTENS <br> - GW - /ipns/$IPFSNODEID" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
<br>- TW - http://$myHOST:8080/ipns/$ASTRONAUTENS <br> - GW - /ipns/$IPFSNODEID" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
echo "(☓‿‿☓) Execution time was "`expr $end - $start` seconds.
|
||||
continue
|
||||
else
|
||||
|
@ -623,7 +624,7 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
|||
cat ~/.zen/tmp/coucou/${MOATS}.index.redirect | nc -l -p ${PORT} -q 1 > ~/.zen/tmp/coucou/${MOATS}.official.swallow &
|
||||
echo "HTTP 1.1 PROTOCOL DOCUMENT READY"
|
||||
cat ~/.zen/tmp/coucou/${MOATS}.index.redirect
|
||||
echo "${MOATS} -----> PAGE AVAILABLE -----> http://$myIP:${PORT}"
|
||||
echo "${MOATS} -----> PAGE AVAILABLE -----> http://$myHOST:${PORT}"
|
||||
|
||||
#echo "${ASTRONAUTENS}" | nc -l -p ${PORT} -q 1 > /dev/null 2>&1 &
|
||||
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
#!/bin/bash
|
||||
mkdir ~/.zen/tmp
|
||||
cd ~/.zen/tmp
|
||||
wget https://dist.ipfs.tech/kubo/v0.17.0/kubo_v0.17.0_linux-amd64.tar.gz
|
||||
tar -xvzf kubo_v0.17.0_linux-amd64.tar.gz
|
||||
cd kubo
|
||||
sudo bash install.sh
|
||||
ipfs --version
|
|
@ -47,7 +47,7 @@ Content-Type: text/html; charset=UTF-8
|
|||
<center>
|
||||
<h2>IPFS BIOS<br> - TW Astroport Ŋ1 -</h2>
|
||||
<div id="yellow">
|
||||
<h3><a href="http://127.0.0.1:12345"> >>> IPFS (◕‿‿◕) FORMAT <<< </a></h3>
|
||||
<h3><a href="http://127.0.0.1:12345"> >>> TW (◕‿‿◕) TW <<< </a></h3>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
|
Loading…
Reference in New Issue