From 47f127f6cc88129bda1f7f854c03f1595bc130b3 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 01:21:54 +0200 Subject: [PATCH 01/96] reading from IPNS capsules = lower gchange usage --- zen/gchange_INIT.sh | 42 ++++++++++++++++++++++++++---------------- zen/gchange_IPFS_swarm.sh | 22 +++++++++++++++++----- 2 files changed, 43 insertions(+), 21 deletions(-) diff --git a/zen/gchange_INIT.sh b/zen/gchange_INIT.sh index c0e81d4..ea53414 100755 --- a/zen/gchange_INIT.sh +++ b/zen/gchange_INIT.sh @@ -103,8 +103,8 @@ fi ######################################################################## echo "#################################################### Customisation TiddlyWiki" -# [[ ! -f /home/$YOU/.zen/ipfs/.$IPFSNODEID/index.html ]] && mkdir -p ~/.zen/ipfs/.${IPFSNODEID} && cp ~/.zen/astrXbian/.install/templates/tiddlyone/index.html ~/.zen/ipfs/.${IPFSNODEID}/index.html -cp ~/.zen/astrXbian/.install/templates/tiddlyone/index.html ~/.zen/ipfs/.${IPFSNODEID}/index.html +[[ ! $(cat ~/.zen/ipfs/.${IPFSNODEID}/index.html | grep ${IPFSNODEID}) ]] && mkdir -p ~/.zen/ipfs/.${IPFSNODEID} && cp ~/.zen/astrXbian/.install/templates/tiddlyone/index.html ~/.zen/ipfs/.${IPFSNODEID}/index.html +# cp -f ~/.zen/astrXbian/.install/templates/tiddlyone/index.html ~/.zen/ipfs/.${IPFSNODEID}/index.html zuid="$(cat ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid)" wiki="/home/$YOU/.zen/ipfs/.$IPFSNODEID/index.html" @@ -174,6 +174,12 @@ do fi + ipfsnodeid=$(~/.zen/astrXbian/zen/tools/g1_to_ipfs.py $liking_me) + echo "Reading stars.level from Stations IPNS Capsules." + starsin=$(ipfs --timeout=10s cat /ipns/$ipfsnodeid/.$ipfsnodeid/FRIENDS/$G1PUB/stars.level) + starsout=$(ipfs --timeout=10s cat /ipns/$IPFSNODEID/.$IPFSNODEID/FRIENDS/$liking_me/stars.level) + echo "I received $starsin stars while I sent $starsout stars." + ##### CHECKING IF WE LIKE EACH OTHER (AVOID LIKING MYSELF) ~/.zen/astrXbian/zen/tools/timeout.sh -t 20 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" stars -p $liking_me > /tmp/Gstars.json @@ -200,22 +206,26 @@ do # zuid=$(ipfs --timeout=10s cat /ipns/${ipfsnodeid}/.${ipfsnodeid}/_xbian.zuid) # [[ ${zuid} ]] && touch ~/.zen/ipfs/.${IPFSNODEID}/FRIENDS/$liking_me/${zuid} +## NOT USEFULL TRYING # SEND jaklis message if tryme.addr is different from last one - if [[ $(diff ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr ~/.zen/ipfs/.${IPFSNODEID}/FRIENDS/$liking_me/tryme.addr 2>&1) ]] - then - echo "I AM $G1PUB" - echo "Sending IPFSTRYME message to $liking_me" - if [[ -f ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr ]]; then - ~/.zen/astrXbian/zen/tools/timeout.sh -t 20 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" send -d $liking_me -t "ipfstryme" -f ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr - else - echo 'MISSING ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr' - fi - echo "$friend_of_mine" >> /tmp/friend_of_mine - else - echo "tryme.addr MESSAGE ALREADY SENT TO $liking_me" - fi - # MEMORIZE actual tryme.addr +# if [[ $(diff ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr ~/.zen/ipfs/.${IPFSNODEID}/FRIENDS/$liking_me/tryme.addr 2>&1) ]] +# then +# echo "I AM $G1PUB" +# echo "Sending IPFSTRYME message to $liking_me" +# +# if [[ -f ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr ]]; then +# ~/.zen/astrXbian/zen/tools/timeout.sh -t 20 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" send -d $liking_me -t "ipfstryme" -f ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr +# else +# echo 'MISSING ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr' +# fi +# echo "$friend_of_mine" >> /tmp/friend_of_mine +# else +# echo "tryme.addr MESSAGE ALREADY SENT TO $liking_me" +# fi + + # MEMORIZE actual tryme.addr (gchange_IPFS_swarm.sh is getting it from IPNS capsule) cp -f ~/.zen/ipfs/.${IPFSNODEID}/tryme.addr ~/.zen/ipfs/.${IPFSNODEID}/FRIENDS/$liking_me/ + fi sleep $((1 + RANDOM % 2)) # SLOW DOWN diff --git a/zen/gchange_IPFS_swarm.sh b/zen/gchange_IPFS_swarm.sh index 31c8b75..ee0a74d 100755 --- a/zen/gchange_IPFS_swarm.sh +++ b/zen/gchange_IPFS_swarm.sh @@ -42,16 +42,25 @@ do # SI JE SUIS LEUR AMI EN RETOUR, je conserve leur ID dans ~/.zen/A_my_swarm.txt # Check if my like is reverse liking_me_count=$((liking_me_count+1)) - echo ">>>>>> CHECKING liking_me n° $liking_me_count : READING 'ipfstryme' message from $liking_me" - ## Get "/tmp/ipfstryme.$liking_me" from Gchange "ipfstryme" message - ~/.zen/astrXbian/zen/tools/timeout.sh -t 12 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" read -n300 -j | jq -r --arg friendKEY "$liking_me" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.content' > /tmp/ipfstryme.$liking_me + + ## IPFS WAY TO DO IT (LESS STRESS ON GCHANGE) + rm /tmp/ipfstryme.$liking_me + ipfsnodeid=$(~/.zen/astrXbian/zen/tools/g1_to_ipfs.py $liking_me) + echo "Getting /ipns/$ipfsnodeid/.$ipfsnodeid/tryme.addr ..." + ipfs --timeout=30s cat /ipns/$ipfsnodeid/.$ipfsnodeid/tryme.addr > /tmp/ipfstryme.$liking_me + + if [[ ! -f /tmp/ipfstryme.$liking_me ]]; then + echo ">>>>>> CHECKING liking_me n° $liking_me_count : READING 'ipfstryme' message from $liking_me" + ## Get "/tmp/ipfstryme.$liking_me" from Gchange "ipfstryme" message + ~/.zen/astrXbian/zen/tools/timeout.sh -t 12 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" read -n300 -j | jq -r --arg friendKEY "$liking_me" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.content' > /tmp/ipfstryme.$liking_me + fi ## ZOMBIE NODE sends more that 300 ipfstryme ? ## [[ $(cat /tmp/ipfstryme.$liking_me | sort | uniq | wc -l) -gt 300 ]] && echo "THIS NODE IS A ZOMBIE..." && rm -f /tmp/ipfstryme.$liking_me && continue # CLEAN /tmp/ipfstryme.$liking_me > /tmp/ipfstryme.clean - for line in $(cat /tmp/ipfstryme.$liking_me); + for line in $(cat /tmp/ipfstryme.$liking_me | shuf); do ipfsnodeid=$(echo $line | rev | cut -d '/' -f 1 | rev) [[ $ipfsnodeid == "" ]] && break @@ -95,6 +104,7 @@ do # FRIEND ADDRESS DISCOVERY echo "Am I friend with my FRIEND friend $whoisg1 ?" + # ipfs cat /ipns/$ipfsnodeid/.$ipfsnodeid/FRIENDS/$G1PUB/tryme.addr # IS my own /ipns/$IPFSNODEID/.$IPFSNODEID/tryme.addr friend_of_mine=$(~/.zen/astrXbian/zen/tools/timeout.sh -t 12 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" stars -p $whoisg1 | jq -r '.yours.pseudo'); # must contains my XZUID if [[ "$friend_of_mine" != "null" ]]; then if [[ ! $(grep "$ipfsnodeid" ~/.zen/A_my_swarm.txt) ]] @@ -104,6 +114,8 @@ do friend_of_mine_count=$((friend_of_mine_count+1)) echo "$peerline" >> ~/.zen/A_my_swarm.txt ipfs bootstrap add "$peerline" + ## NOW USING Peers.Peering config + else echo "ALREADY RECORDED FRIEND" fi @@ -137,7 +149,7 @@ echo "####################################################" ## SHOULD HAVE exit 0 before !! ######################################################################## -## SWARM LOST !! EMERGENCY RECOVERY !! TEST CODE +## SWARM LOST !! EMERGENCY RECOVERY CODE !!! ######################################################################## ipfs bootstrap > /tmp/ipfs_bootstrap From db8899000400cd31af1c62d87e05ac7b0ba8e96b Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 01:40:04 +0200 Subject: [PATCH 02/96] LowWater & HighWater = 0 now, will use "Peers.Peering" --- .install/ipfs_alone.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.install/ipfs_alone.sh b/.install/ipfs_alone.sh index 5556bbd..aeb0216 100755 --- a/.install/ipfs_alone.sh +++ b/.install/ipfs_alone.sh @@ -23,9 +23,9 @@ err() { # CHECK if daemon is already running if [[ $(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1) ]]; then - echo "ipfs daemon already running...! Must STOP ipfs AND remove ~/.ipfs to install again !!" ipfs id && echo "ipfs swarm peers: " && ipfs swarm peers echo "ipfs bootstrap list: " && ipfs bootstrap list + echo "ipfs daemon already running...! Must STOP ipfs AND remove ~/.ipfs to install again !!" echo "Please RUN : sudo service ipfs stop" exit 1 fi @@ -120,8 +120,8 @@ ipfs config Datastore.StorageMax $diskSize ## Activate Rapid "ipfs p2p" ipfs config --json Experimental.Libp2pStreamMounting true ipfs config --json Experimental.P2pHttpProxy true -ipfs config --json Swarm.ConnMgr.LowWater 60 -ipfs config --json Swarm.ConnMgr.HighWater 180 +ipfs config --json Swarm.ConnMgr.LowWater 0 +ipfs config --json Swarm.ConnMgr.HighWater 0 ######### CLEAN DEFAULT BOOTSTRAP TO STAY INVISIBLE ########### ipfs bootstrap rm --all ########################################### From 60572c7f0229908ca128143a17d81a86832a0805 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 01:41:21 +0200 Subject: [PATCH 03/96] space cleaning --- zen/new_file_in_astroport.sh | 279 ++++++++++++++++++++++--------------------- 1 file changed, 140 insertions(+), 139 deletions(-) diff --git a/zen/new_file_in_astroport.sh b/zen/new_file_in_astroport.sh index 96a7030..f8640d8 100755 --- a/zen/new_file_in_astroport.sh +++ b/zen/new_file_in_astroport.sh @@ -25,7 +25,7 @@ G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2) ######################################################################## path="$1" # Add trailing / if needed -length=${#path} +length=${#path} last_char=${path:length-1:1} [[ $last_char != "/" ]] && path="$path/"; : @@ -49,8 +49,8 @@ PREFIX=$(echo "$TYPE" | head -c 1 | awk '{ print toupper($0) }' ) # ex: F, Y, M # File is placed in ROOT ~/astroport ? if [[ $PREFIX == "" ]] then - [[ "$USER" != "xbian" ]] && zenity --warning --width 300 --text "Désolé votre fichier ne peut pas être traité" - er="$er | WARNING. $TYPE is root file UNTREATED" && echo "$er" && exit 1 + [[ "$USER" != "xbian" ]] && zenity --warning --width 300 --text "Désolé votre fichier ne peut pas être traité" + er="$er | WARNING. $TYPE is root file UNTREATED" && echo "$er" && exit 1 fi [[ ! -d ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/ ]] && mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/ @@ -59,41 +59,41 @@ fi # EXTRACT INDEX REFERENCE : TMDB or YOUTUBE (can be extended with new ) ######################################################################## case ${CAT} in - video) - INDEXPREFIX="VIDEO_" - REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) - TITLE="${file%.*}" - ;; - youtube) - INDEXPREFIX="YOUTUBE_" - REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) - TITLE="${file%.*}" - ;; - mp3) - ## DIFFERENT TREATMENT - INDEXPREFIX="MP3_" - REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) - TITLE=$(echo "$file" | cut -d "&" -f 2-) - er="$er | Please use new_mp3_in_astroport.sh ... EXIT" - echo "$er" - exit 1 - ;; - film | serie) - INDEXPREFIX="TMDB_" - REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) # Path contains TMDB id - if ! [[ "$REFERENCE" =~ ^[0-9]+$ ]] # ${REFERENCE} NOT A NUMBER - then - er="$er | ERROR: $path BAD TMDB code. Get it from https://www.themoviedb.org/ or use your 06 phone number" - echo "$er" - exit 1 - fi - ;; - ## TODO ADD "httrack" for website copying - ## httrack "https://wiki.lowtechlab.org" -O "./wiki.lowtechlab.org" "+*.lowtechlab.org/*" -v -%l "fr" - ## - *) - er="$CAT inconnu" && echo "$er" && exit 1 - ;; + video) + INDEXPREFIX="VIDEO_" + REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) + TITLE="${file%.*}" + ;; + youtube) + INDEXPREFIX="YOUTUBE_" + REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) + TITLE="${file%.*}" + ;; + mp3) + ## DIFFERENT TREATMENT + INDEXPREFIX="MP3_" + REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) + TITLE=$(echo "$file" | cut -d "&" -f 2-) + er="$er | Please use new_mp3_in_astroport.sh ... EXIT" + echo "$er" + exit 1 + ;; + film | serie) + INDEXPREFIX="TMDB_" + REFERENCE=$(echo "$path" | cut -d '/' -f 6 ) # Path contains TMDB id + if ! [[ "$REFERENCE" =~ ^[0-9]+$ ]] # ${REFERENCE} NOT A NUMBER + then + er="$er | ERROR: $path BAD TMDB code. Get it from https://www.themoviedb.org/ or use your 06 phone number" + echo "$er" + exit 1 + fi + ;; + ## TODO ADD "httrack" for website copying + ## httrack "https://wiki.lowtechlab.org" -O "./wiki.lowtechlab.org" "+*.lowtechlab.org/*" -v -%l "fr" + ## + *) + er="$CAT inconnu" && echo "$er" && exit 1 + ;; esac MEDIAKEY="${INDEXPREFIX}${REFERENCE}" @@ -102,28 +102,28 @@ MEDIAKEY="${INDEXPREFIX}${REFERENCE}" ######################################################################## echo "SEARCH for ;$REFERENCE; in ${PREFIX}ASTRXBIAN" if [[ ${REFERENCE:0:1} != "0" ]]; then ## REFERENCE COULD BE A PHONE NUMBER (not in TMDB copy force) - isREFERENCEinINDEX=$(grep ";$REFERENCE;" ~/.zen/ipfs_swarm/.12D*/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ) - if [[ ${isREFERENCEinINDEX} ]] - then - if [[ -d ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB} ]] - then - # FILE IS MINE, NEW VERSION?! replacing it in INDEX - ipnslink=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link) - echo "FOUND IPNS ${MEDIAKEY} = $ipnslink" + isREFERENCEinINDEX=$(grep ";$REFERENCE;" ~/.zen/ipfs_swarm/.12D*/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ) + if [[ ${isREFERENCEinINDEX} ]] + then + if [[ -d ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB} ]] + then + # FILE IS MINE, NEW VERSION?! replacing it in INDEX + ipnslink=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link) + echo "FOUND IPNS ${MEDIAKEY} = $ipnslink" - # DELETING GCHANGE AD, WILL BE CREATED AGAIN - gchangeAD=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad) - ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" deleteoffer -i $gchangeAD - rm ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad - else - er="$er | FILE IS ALREADY EXISTING FROM ANOTHER FRIEND" && echo "$er" - ## SEND messages to warn about need to Unify MEDIAKEY IPNS KEY - ipfsnodeid=$(echo ${isREFERENCEinINDEX} | tail -n 1 | cut -d '.' -f 3- | cut -d '/' -f 1) - destg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid) - [[ "$IPFSNODEID" != "$ipfsnodeid" ]] && ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" send -d $destg1 -t "MEDIAKEY COLLISION ${MEDIAKEY}" -m "Conflit de MEDIAKEY. Choisir quelle clef IPNS conserver..." - ## - fi - fi + # DELETING GCHANGE AD, WILL BE CREATED AGAIN + gchangeAD=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad) + ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" deleteoffer -i $gchangeAD + rm ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad + else + er="$er | FILE IS ALREADY EXISTING FROM ANOTHER FRIEND" && echo "$er" + ## SEND messages to warn about need to Unify MEDIAKEY IPNS KEY + ipfsnodeid=$(echo ${isREFERENCEinINDEX} | tail -n 1 | cut -d '.' -f 3- | cut -d '/' -f 1) + destg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid) + [[ "$IPFSNODEID" != "$ipfsnodeid" ]] && ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" send -d $destg1 -t "MEDIAKEY COLLISION ${MEDIAKEY}" -m "Conflit de MEDIAKEY. Choisir quelle clef IPNS conserver..." + ## + fi + fi fi @@ -148,30 +148,30 @@ URLENCODE_FILE_NAME=$(echo ${file} | jq -Rr @uri) ## CREATE NEW ipns KEY : ${MEDIAKEY} ######################################################################## ## IPFS SELF IPNS DATA STORAGE -## ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ +## ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ ######################################################################## if [[ ! $(ipfs key list | grep "${MEDIAKEY}") ]]; then - ## IPNS KEY CREATION - mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB} - KEY=$(ipfs key gen "${MEDIAKEY}") - KEYFILE=$(ls -t ~/.ipfs/keystore/ | head -n 1) + ## IPNS KEY CREATION + mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB} + KEY=$(ipfs key gen "${MEDIAKEY}") + KEYFILE=$(ls -t ~/.ipfs/keystore/ | head -n 1) fi ## IS IT NEW IPNS KEY? if [[ $KEY ]]; then - # memorize IPNS key filename for easiest exchange - echo "$KEYFILE" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename - # Publishing IPNS key - echo "$KEY" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link - # CREATE .zen = ZEN economic value - touch ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.zen - # CREATE other encrypted copies for friends depending DEFCON & stars - # > STARGATE 1 - 2 - 3 - 4 - 5 !! - ################ ENCRYPT keystore/$KEYFILE + # memorize IPNS key filename for easiest exchange + echo "$KEYFILE" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename + # Publishing IPNS key + echo "$KEY" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link + # CREATE .zen = ZEN economic value + touch ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.zen + # CREATE other encrypted copies for friends depending DEFCON & stars + # > STARGATE 1 - 2 - 3 - 4 - 5 !! + ################ ENCRYPT keystore/$KEYFILE else ## OLD IPNS KEY - KEY=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link) - KEYFILE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename) + KEY=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.link) + KEYFILE=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename) fi [[ ! $KEY ]] && echo "FATAL ERROR" && exit 1 @@ -204,9 +204,10 @@ PINnode=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $nodeid) echo "ASK AUTOPIN to $PINnode" ## CREATE $PINnode IPFS communication directory [[ ! -d ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/${PINnode} ]] && mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/${PINnode} -## ENCRYPT .ipfsid & .ipfs.filelink +## ENCRYPT .ipfsid & .ipfs.filelink (THESE FILES ARE $MY_PATH/tools/natools.py encrypt -p $PINnode -i /tmp/.ipfs.filelink -o "~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/${PINnode}/.ipfs.filelink.encrypt" $MY_PATH/tools/natools.py encrypt -p $PINnode -i /tmp/.ipfsid -o "~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/${PINnode}/.ipfsid.encrypt" +# .ipfsid.encrypt is searched by each Station running ./zen/tools/autoPINfriends.sh ######################################################################## ## GREAT natools can convert IPNS MEDIAKEY into .dunikey file @@ -259,7 +260,7 @@ rm /tmp/.ipfsid ######################################################################## ## ADD "ajouter_video.txt" and "video.json" will be SELF IPNS publish data -[[ -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ]] && cp -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ +[[ -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ]] && cp -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ [[ -f ~/astroport/${TYPE}/${REFERENCE}/video.json ]] && cp -f ~/astroport/${TYPE}/${REFERENCE}/video.json ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ ######################################################################## @@ -271,7 +272,7 @@ rm /tmp/.ipfsid ######################################################################## ######################################################################## # CONTRACTS, are small App (fulljs or jquery + nginx backend app server) -# They must decrypt IPFS after succeeding a chalenge (, +/- n zen, ...) +# They must decrypt IPFS after succeeding a chalenge (, +/- n zen, ...) ######################################################################## # Contract App Examples (ipns_TAG_refresh.sh makes MEDIAKEY evolution) # Counting video views = +1 .views.counter => decrypt key @@ -293,22 +294,22 @@ IPNSLINK=$(ipfs key list -l | grep ${MEDIAKEY} | cut -d ' ' -f 1) echo " - $TITLE in Astroport - - - - + $TITLE in Astroport + + + +
-
- ASTROPORT × DEMO -
+
+ ASTROPORT × DEMO +

Démonstration Streaming du Datacenter P2P Libre et Légal.
@@ -323,22 +324,22 @@ echo " echo " - $TITLE in Astroport - - - - + $TITLE in Astroport + + + +
-
+
Lien direct qui fonctionne depuis votre Station Astroport/KODI! -
+

$TITLE

-
Accédez immédiatement à cette vidéo depuis votre station Astroport/KODI ...
-

Essayez astrXbian Le BETA Live TEstNET Astroport

+
Accédez immédiatement à cette vidéo depuis votre station Astroport/KODI ...
+

Essayez astrXbian Le BETA Live TEstNET Astroport


Service Video Club / Datacenter P2P Libre et Légal.
@@ -369,49 +370,49 @@ IPNS=$(ipfs name publish --quieter --key="${MEDIAKEY}" $NEWIPFS) ######################################################################## ######################################################################## -# POST TRAITEMENTS +# POST TRAITEMENTS ######################################################################## # film/serie PUBLISH "ajouter_video.txt" for KODI ######################################################################## if [[ "${CAT}" =~ ^(film|serie|youtube)$ ]] then - ## CREATE GCHANGE AD - if [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad && "${CAT}" != "youtube" ]] - then - GOFFER=$(~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" setoffer -t "${TITLE} #astroport #${MEDIAKEY}" -d "${TITLE} https://tube.copylaradio.com/ipns/$IPNS/ Faites un don à son portefeuille pour le conserver dans le Mediacenter des Amis - https://CopyLaRadio.com - https://astroport.com" -p $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/QR.png) - echo $GOFFER > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad - NEWIPFS=$(ipfs add -rHq ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/ | tail -n 1 ) - IPNS=$(ipfs name publish --quieter --key="${MEDIAKEY}" $NEWIPFS) - fi - echo "Annonce gchange : $(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad)" + ## CREATE GCHANGE AD + if [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad && "${CAT}" != "youtube" ]] + then + GOFFER=$(~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" setoffer -t "${TITLE} #astroport #${MEDIAKEY}" -d "${TITLE} https://tube.copylaradio.com/ipns/$IPNS/ Faites un don à son portefeuille pour le conserver dans le Mediacenter des Amis - https://CopyLaRadio.com - https://astroport.com" -p $HOME/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/QR.png) + echo $GOFFER > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad + NEWIPFS=$(ipfs add -rHq ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/ | tail -n 1 ) + IPNS=$(ipfs name publish --quieter --key="${MEDIAKEY}" $NEWIPFS) + fi + echo "Annonce gchange : $(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.gchange.ad)" - ######################################################################## - # ${PREFIX}ASTRXBIAN FILE : Add Header - [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ]] \ - && echo "CAT;TMDB;YEAR;TITLE;SAISON;GENRES;GROUPES;RES;URLS=http://127.0.0.1:8181" > ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN + ######################################################################## + # ${PREFIX}ASTRXBIAN FILE : Add Header + [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ]] \ + && echo "CAT;TMDB;YEAR;TITLE;SAISON;GENRES;GROUPES;RES;URLS=http://127.0.0.1:8181" > ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN - # ADD NEW LINE TO INDEX - if [[ -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt ]] - then - line=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g" | sed "s/_IPNSKEY_/$IPNS/g" ) - else - FILE_RES=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 "${path}${file}" | cut -d "x" -f 2) - RES=${FILE_RES%?}0p - line="$CAT;${REFERENCE};$YEAR;$TITLE;$SAISON;;${IPNS};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME" - fi - echo "-------------------- UPDATE MY INDEX -----------------------------" - echo "$line" - echo "$line" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN - echo "UPDATE IPNS ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/ajouter_video.txt" - echo "$line" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt - ## UPDATE SOURCE ajouter_video.txt FILE - cp -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt - ######################################################################## - ## TODO: ACTIVATE SUB DEFCON 4 MODE = encrypt/decrypt file in $G1DEST subdirectory - ######################################################################## + # ADD NEW LINE TO INDEX + if [[ -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt ]] + then + line=$(cat ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g" | sed "s/_IPNSKEY_/$IPNS/g" ) + else + FILE_RES=$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 "${path}${file}" | cut -d "x" -f 2) + RES=${FILE_RES%?}0p + line="$CAT;${REFERENCE};$YEAR;$TITLE;$SAISON;;${IPNS};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME" + fi + echo "-------------------- UPDATE MY INDEX -----------------------------" + echo "$line" + echo "$line" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN + echo "UPDATE IPNS ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/ajouter_video.txt" + echo "$line" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt + ## UPDATE SOURCE ajouter_video.txt FILE + cp -f ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ajouter_video.txt ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt + ######################################################################## + ## TODO: ACTIVATE SUB DEFCON 4 MODE = encrypt/decrypt file in $G1DEST subdirectory + ######################################################################## - echo "----------------- REFRESH LOCAL KODI INDEX ----------------------" - cat ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ~/.zen/ipfs_swarm/.12D*/astroport/kodi/vstream/${PREFIX}ASTRXBIAN | sort | uniq > ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN + echo "----------------- REFRESH LOCAL KODI INDEX ----------------------" + cat ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN ~/.zen/ipfs_swarm/.12D*/astroport/kodi/vstream/${PREFIX}ASTRXBIAN | sort | uniq > ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN fi ######################################################################## @@ -419,8 +420,8 @@ fi ######################################################################## if [[ "${CAT}" == "video" ]] then - ## REPLACE IPFS / IPNS REFERENCE IN video.json (Maybe cyphered later) - cat ~/astroport/${CAT}/${MEDIAKEY}/video.json | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g" | sed "s/_IPNSKEY_/$IPNS/g" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN + ## REPLACE IPFS / IPNS REFERENCE IN video.json (Maybe cyphered later) + cat ~/astroport/${CAT}/${MEDIAKEY}/video.json | sed "s/_IPFSREPFILEID_/$IPFSREPFILEID/g" | sed "s/_IPNSKEY_/$IPNS/g" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN fi @@ -429,11 +430,11 @@ fi ######################################################################## if [[ "${CAT}" == "youtube" ]] then - ## CREATE astroport call to Astroport/Wordpress stations - if [[ ! -d ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY} ]]; then - mkdir -p ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY} - echo "1" > ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY}/do - fi + ## CREATE astroport call to Astroport/Wordpress stations + if [[ ! -d ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY} ]]; then + mkdir -p ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY} + echo "1" > ~/.zen/ipfs/.$IPFSNODEID/astroport/wordpress/${MEDIAKEY}/do + fi fi ######################################################################## From baf5498d21bb1735365fbb710b61f7075cdf6ace Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 02:09:46 +0200 Subject: [PATCH 04/96] Now script can be run with "Open With" navigator plugin to copy while surfing --- ajouter_video.sh | 22 +++++++++++++++------- zen/new_file_in_astroport.sh | 3 ++- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/ajouter_video.sh b/ajouter_video.sh index bb3f141..bf56739 100755 --- a/ajouter_video.sh +++ b/ajouter_video.sh @@ -27,6 +27,12 @@ ME="${0##*/}" [[ $(which ffmpeg) == "" ]] && echo "ERREUR! Installez ffmpeg" && echo "sudo apt install ffmpeg" && exit 1 [[ $(which xdpyinfo) == "" ]] && echo "ERREUR! Installez x11-utils" && echo "sudo apt install x11-utils" && exit 1 +URL="$1" +[ $URL ] && echo "URL: $URL" \ +&& IMPORT=$(zenity --entry --width 640 --title="$URL => Astroport" --text="Choisissez comment copier cette source" --entry-text="Page" Video MP3 WebSite) \ +&& [[ $IMPORT == "Video" ]] && IMPORT="Youtube" \ +&& CHOICE="$IMPORT" + # REMOVE GtkDialog errors for zenity shopt -s expand_aliases alias zenity='zenity 2> >(grep -v GtkDialog >&2)' @@ -76,7 +82,7 @@ fi ######################################################################## # CHOOSE CATEGORY (remove anime, not working!) -CHOICE=$(zenity --entry --width 300 --title="Catégorie" --text="Choisissez la catégorie de votre vidéo" --entry-text="Film" Serie Video KODI Youtube MP3) +[[ $CHOICE == "" ]] && CHOICE=$(zenity --entry --width 300 --title="Catégorie" --text="Choisissez la catégorie de votre media" --entry-text="Film" Serie Video Youtube MP3) [[ $CHOICE == "" ]] && exit 1 # LOWER CARACTERS @@ -101,9 +107,10 @@ case ${CAT} in ######################################################################## youtube) -zenity --warning --width 600 --text 'DEVELOPPEMENT. SVP. Envoyez le LOG : https://git.p2p.legal .DEVELOPPEMENT' +zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' -YTURL=$(zenity --entry --width 300 --title "Lien ou identifiant à copier" --text "Indiquez le lien (URL) ou l'ID de la vidéo" --entry-text="") +YTURL="$IMPORT" +[[ $YTURL == "" ]] && YTURL=$(zenity --entry --width 300 --title "Lien ou identifiant à copier" --text "Indiquez le lien (URL) ou l'ID de la vidéo" --entry-text="") [[ $YTURL == "" ]] && exit 1 # Create TEMP directory to copy $YID_$TITLE.$FILE_EXT @@ -126,9 +133,10 @@ JSON_FILE=$(echo ${FILE_NAME} | sed "s/${FILE_EXT}/json/g") YID=$(echo "${FILE_NAME}" | cut -d "&" -f 1) YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | sed "s/[(][^)]*[)]//g" | sed -e 's/[^A-Za-z0-9._-]/_/g' | sed -e 's/__/_/g' ) # Remove YoutubeID_ and (what is in perentheses) [[ $(which detox) ]] && YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | detox --inline) -MEDIAID="${YID}" +[[ $IMPORT != "" ]] && REVSOURCE="$(echo "$YTURL" | awk -F/ '{print $3}' | rev)_" +MEDIAID="$REVSOURCE${YID}" TITLE="${YNAME%.*}" -MEDIAKEY="YOUTUBE_${MEDIAID}" +MEDIAKEY="YOUTUBE${MEDIAID}" ## CORRECT PARAMETERS to Make Kodi compatible YASTRXBIAN FILE GENRES=$(zenity --list --checklist --title="GENRE" --height=${haut} \ @@ -186,7 +194,7 @@ rm -Rf ${YTEMP} ######################################################################## mp3) -zenity --warning --width 600 --text 'DEVELOPPEMENT. SVP. Envoyez le LOG : https://git.p2p.legal .DEVELOPPEMENT' +zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' # Create TEMP directory YTEMP="/tmp/$(date -u +%s%N | cut -b1-13)" @@ -384,7 +392,7 @@ echo "${CAT};${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};${GROUPES};${RES};/ video) - zenity --warning --width 600 --text 'DEVELOPPEMENT. SVP. Envoyez le LOG : https://git.p2p.legal .DEVELOPPEMENT' + zenity --warning --width 600 --text 'DEVELOPPEMENT. SVP. Inscrivez-vous sur https://git.p2p.legal' ## GENERAL MEDIAKEY for uploaded video. Title + Decription + hashtag + hashipfs # SELECT FILE TO ADD TO ASTROPORT/KODI diff --git a/zen/new_file_in_astroport.sh b/zen/new_file_in_astroport.sh index f8640d8..40716e3 100755 --- a/zen/new_file_in_astroport.sh +++ b/zen/new_file_in_astroport.sh @@ -260,6 +260,7 @@ rm /tmp/.ipfsid ######################################################################## ## ADD "ajouter_video.txt" and "video.json" will be SELF IPNS publish data +## ENCRYPT TO STOP CLEAR DATA LEAKING [[ -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ]] && cp -f ~/astroport/${TYPE}/${REFERENCE}/ajouter_video.txt ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ [[ -f ~/astroport/${TYPE}/${REFERENCE}/video.json ]] && cp -f ~/astroport/${TYPE}/${REFERENCE}/video.json ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/ ######################################################################## @@ -268,7 +269,7 @@ rm /tmp/.ipfsid ## EXPLANATIONS ######################################################################## # What is being in ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/ -# is published on http://127.0.0.1:8181/ipns/$KEY/ +# is published on http://127.0.0.1:8181/ipns/$KEY/ AND ipfs ls /ipns/$KEY/ ######################################################################## ######################################################################## # CONTRACTS, are small App (fulljs or jquery + nginx backend app server) From c3a0dafb10b3f4eaa9164d132cedde4e40ffdbc0 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 14:20:25 +0200 Subject: [PATCH 05/96] Copy Video is coming from "Open With" --- ajouter_video.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ajouter_video.sh b/ajouter_video.sh index bf56739..e8f64c2 100755 --- a/ajouter_video.sh +++ b/ajouter_video.sh @@ -29,7 +29,7 @@ ME="${0##*/}" URL="$1" [ $URL ] && echo "URL: $URL" \ -&& IMPORT=$(zenity --entry --width 640 --title="$URL => Astroport" --text="Choisissez comment copier cette source" --entry-text="Page" Video MP3 WebSite) \ +&& IMPORT=$(zenity --entry --width 640 --title="$URL => Astroport" --text="Choisissez comment copier cette source" --entry-text="Video" MP3 Web) \ && [[ $IMPORT == "Video" ]] && IMPORT="Youtube" \ && CHOICE="$IMPORT" @@ -109,7 +109,7 @@ case ${CAT} in zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' -YTURL="$IMPORT" +YTURL="$URL" [[ $YTURL == "" ]] && YTURL=$(zenity --entry --width 300 --title "Lien ou identifiant à copier" --text "Indiquez le lien (URL) ou l'ID de la vidéo" --entry-text="") [[ $YTURL == "" ]] && exit 1 @@ -136,7 +136,7 @@ YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | sed "s/[(][^)]*[)]//g" | sed -e [[ $IMPORT != "" ]] && REVSOURCE="$(echo "$YTURL" | awk -F/ '{print $3}' | rev)_" MEDIAID="$REVSOURCE${YID}" TITLE="${YNAME%.*}" -MEDIAKEY="YOUTUBE${MEDIAID}" +MEDIAKEY="YOUTUBE_${MEDIAID}" ## CORRECT PARAMETERS to Make Kodi compatible YASTRXBIAN FILE GENRES=$(zenity --list --checklist --title="GENRE" --height=${haut} \ @@ -160,7 +160,7 @@ GENRES=$(zenity --list --checklist --title="GENRE" --height=${haut} \ # FORMAT GENRES genre1|genre2|genre3 -FILE_PATH="$HOME/astroport/youtube/$YID" +FILE_PATH="$HOME/astroport/youtube/$MEDIAID" mkdir -p ${FILE_PATH} && mv -f ${YTEMP}/* ${FILE_PATH}/ # rename FILE_NAME to YNAME (URL clean) mv "${FILE_PATH}/${FILE_NAME}" "${FILE_PATH}/${YNAME}" && FILE_NAME="${YNAME}" @@ -435,9 +435,11 @@ echo "${CAT};${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};${GROUPES};${RES};/ #| < (_) | (_| | | #|_|\_\___/ \__,_|_| # COPY UQLOAD LINKS DETECTED IN KODI LOG - +############################################## +### TODO INSTALL FROM START and AUTO SCRAPE KODI LOG +############################################## kodi) - +# OPTION REMOVED if [[ ! -f $HOME/.local/bin/uqload_downloader ]]; then cd /tmp git clone https://github.com/papiche/uqload_downloader.git From e036175b32213da09d2673c820594a7bc88ded06 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 14:36:35 +0200 Subject: [PATCH 06/96] fixing --- zen/gchange_IPFS_swarm.sh | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/zen/gchange_IPFS_swarm.sh b/zen/gchange_IPFS_swarm.sh index ee0a74d..da54968 100755 --- a/zen/gchange_IPFS_swarm.sh +++ b/zen/gchange_IPFS_swarm.sh @@ -86,7 +86,7 @@ do [[ "${ipfsnodeid:0:2}" != "Qm" ]] && whoisg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid) [[ ! $whoisg1 ]] && continue - # KEEPING LAST ipfstryme MESSAGES only + # KEEPING LAST ipfstryme MESSAGES only (CAN BE REMOVED SOON WHEN FULL IPFS) nbmessage=0 for messageid in $(~/.zen/astrXbian/zen/tools/timeout.sh -t 12 ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" read -n300 -j | jq -r --arg friendKEY "$whoisg1" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.id') do @@ -97,6 +97,17 @@ do [[ $nbmessage == 0 ]] && echo "NO ipfstryme MESSAGE from $whoisg1" && echo "$ipfsnodeid" >> ~/.zen/A_dead_swarm.txt && continue # SEND MESSAGE ~/.zen/astrXbian/zen/jaklis/jaklis.py -k ~/.zen/secret.dunikey -n "https://data.gchange.fr" send -d $whoisg1 -t 'Astroport' -m 'Aucun message de ta part https://copylaradio.com'" + ## CHECKING VALUE CAPSULE + starsin=$(ipfs --timeout=10s cat /ipns/$ipfsnodeid/.$ipfsnodeid/FRIENDS/$G1PUB/stars.level) + starsout=$(ipfs --timeout=10s cat /ipns/$IPFSNODEID/.$IPFSNODEID/FRIENDS/$whoisg1/stars.level) + Addr=$(echo "$peerline" | rev | cut -d '/' -f 2- | rev ) +## Prepare +[[ $starsin && $starsout ]] && echo '{ + "ID": "'$ipfsnodeid'", + "Addrs": ["'$Addr'"] +},' >> ~/.zen/A_peering_peers.txt + + # REFRESH A_swarm_map.txt echo $peerline >> ~/.zen/A_swarm_map.txt cat ~/.zen/A_swarm_map.txt | sort | uniq > /tmp/A_swarm_map.txt @@ -113,8 +124,16 @@ do # COUNT UNIQ FRIENDS friend_of_mine_count=$((friend_of_mine_count+1)) echo "$peerline" >> ~/.zen/A_my_swarm.txt - ipfs bootstrap add "$peerline" - ## NOW USING Peers.Peering config + # ipfs bootstrap add "$peerline" + + ## NOW WILL BE USING Peering.Peers config + Addr=$(echo "$peerline" | rev | cut -d '/' -f 2- | rev ) + ## Prepare # https://github.com/ipfs/go-ipfs/blob/master/docs/config.md#peering +[[ $starsin && $starsout ]] && echo '{ + "ID": "'$ipfsnodeid'", + "Addrs": ["'$Addr'"] +},' >> ~/.zen/A_peering_peers.txt +# jq '.Peering.Peers += [{"ID": "'$ipfsnodeid'", "Addrs": "["'$Addr'"]"}]' else echo "ALREADY RECORDED FRIEND" From 4f9dadbc77a1a808b700121139957c94891c1b1d Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 14:37:02 +0200 Subject: [PATCH 07/96] better --- zen/ipfs_FRIENDS_refresh.sh | 2 ++ zen/new_file_in_astroport.sh | 1 + 2 files changed, 3 insertions(+) diff --git a/zen/ipfs_FRIENDS_refresh.sh b/zen/ipfs_FRIENDS_refresh.sh index abf7557..8e1a818 100755 --- a/zen/ipfs_FRIENDS_refresh.sh +++ b/zen/ipfs_FRIENDS_refresh.sh @@ -40,6 +40,8 @@ do echo "OK Friend REFRESH /ipns/$ipfsnodeid INTO ~/.zen/ipfs_swarm/" ipfs --timeout=90s get --output=/home/$YOU/.zen/ipfs_swarm/ /ipns/$ipfsnodeid [[ -f /home/$YOU/.zen/ipfs_swarm/.$ipfsnodeid/_xbian.zuid ]] && cat /home/$YOU/.zen/ipfs_swarm/.$ipfsnodeid/_xbian.zuid || echo "NO ZUID" + done exit 0 + diff --git a/zen/new_file_in_astroport.sh b/zen/new_file_in_astroport.sh index 40716e3..5b68a04 100755 --- a/zen/new_file_in_astroport.sh +++ b/zen/new_file_in_astroport.sh @@ -159,6 +159,7 @@ fi ## IS IT NEW IPNS KEY? if [[ $KEY ]]; then + echo "CREATING NEW IPNS MEDIAKEY" # memorize IPNS key filename for easiest exchange echo "$KEYFILE" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/${MEDIAKEY}/${G1PUB}/.ipns.key.keystore_filename # Publishing IPNS key From 01968baab48ed92124503d94e7233fe1d3bdc0e4 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 14:45:49 +0200 Subject: [PATCH 08/96] reset ~/.zen/A_peering_peers.txt --- zen/gchange_IPFS_swarm.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/zen/gchange_IPFS_swarm.sh b/zen/gchange_IPFS_swarm.sh index da54968..6a6ca88 100755 --- a/zen/gchange_IPFS_swarm.sh +++ b/zen/gchange_IPFS_swarm.sh @@ -72,6 +72,7 @@ do echo "__________________________________________" done +rm ~/.zen/A_peering_peers.txt for peerline in $(cat /tmp/ipfstryme.* | sort | uniq); do From 001a3b90f51f5a2539e87e0792e2d72e42ce0372 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 15:00:55 +0200 Subject: [PATCH 09/96] tube.copylaradio.com and gchange link --- zen/ipfs_SWARM_refresh.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/zen/ipfs_SWARM_refresh.sh b/zen/ipfs_SWARM_refresh.sh index a3bceb9..f97809e 100755 --- a/zen/ipfs_SWARM_refresh.sh +++ b/zen/ipfs_SWARM_refresh.sh @@ -259,11 +259,11 @@ for wiki in $(ls ~/.zen/ipfs_swarm/.12D*/index.html | grep -Ev "${IPFSNODEID}" 2 ipfsnodeid=$(echo $wiki | cut -d '.' -f 3- | cut -d '/' -f 1) whoisg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid) echo "
  • - - \"$whoisg1\" + + \"$whoisg1\"

    - + \"$ipfsnodeid\"

    From d926f2818ae6dac2592bf02c2b3719abe7c707e1 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 22:42:34 +0200 Subject: [PATCH 10/96] add URL support --- ajouter_video.sh | 56 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 46 insertions(+), 10 deletions(-) diff --git a/ajouter_video.sh b/ajouter_video.sh index e8f64c2..ec06305 100755 --- a/ajouter_video.sh +++ b/ajouter_video.sh @@ -28,11 +28,15 @@ ME="${0##*/}" [[ $(which xdpyinfo) == "" ]] && echo "ERREUR! Installez x11-utils" && echo "sudo apt install x11-utils" && exit 1 URL="$1" -[ $URL ] && echo "URL: $URL" \ +[ $URL ] && echo "URL: $URL" && REVSOURCE="$(echo "$URL" | awk -F/ '{print $3}' | rev)_"\ && IMPORT=$(zenity --entry --width 640 --title="$URL => Astroport" --text="Choisissez comment copier cette source" --entry-text="Video" MP3 Web) \ && [[ $IMPORT == "Video" ]] && IMPORT="Youtube" \ && CHOICE="$IMPORT" + + +[[ $CHOICE == "Web" ]] && CHOICE=$(zenity --entry --width 640 --title="$URL => Astroport" --text="Cette source WEB est à encrigistrer comme " --entry-text="Page" WebSite) + # REMOVE GtkDialog errors for zenity shopt -s expand_aliases alias zenity='zenity 2> >(grep -v GtkDialog >&2)' @@ -49,7 +53,7 @@ IPFSNODEID=$(ipfs id -f='\n') [[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID="$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title)" || XZUID="$(cat /etc/hostname)" [[ -f ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid ]] && AXID=$(cat ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid) -zenity --warning --width 300 --text "Ajoutez un MEDIA dans ASTROPORT" +# zenity --warning --width 300 --text "Ajoutez un MEDIA dans ASTROPORT" ######################################################################## @@ -90,7 +94,7 @@ CAT=$(echo "${CHOICE}" | awk '{print tolower($0)}') # UPPER CARACTERS CHOICE=$(echo "${CAT}" | awk '{print toupper($0)}') -PREFIX=$(echo "${CAT}" | head -c 1 | awk '{ print toupper($0) }' ) # ex: F, S, A, Y, M ... +PREFIX=$(echo "${CAT}" | head -c 1 | awk '{ print toupper($0) }' ) # ex: F, S, A, Y, M ... P W [[ $PREFIX == "" ]] && exit 1 ######################################################################## @@ -107,8 +111,6 @@ case ${CAT} in ######################################################################## youtube) -zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' - YTURL="$URL" [[ $YTURL == "" ]] && YTURL=$(zenity --entry --width 300 --title "Lien ou identifiant à copier" --text "Indiquez le lien (URL) ou l'ID de la vidéo" --entry-text="") [[ $YTURL == "" ]] && exit 1 @@ -133,7 +135,6 @@ JSON_FILE=$(echo ${FILE_NAME} | sed "s/${FILE_EXT}/json/g") YID=$(echo "${FILE_NAME}" | cut -d "&" -f 1) YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | sed "s/[(][^)]*[)]//g" | sed -e 's/[^A-Za-z0-9._-]/_/g' | sed -e 's/__/_/g' ) # Remove YoutubeID_ and (what is in perentheses) [[ $(which detox) ]] && YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | detox --inline) -[[ $IMPORT != "" ]] && REVSOURCE="$(echo "$YTURL" | awk -F/ '{print $3}' | rev)_" MEDIAID="$REVSOURCE${YID}" TITLE="${YNAME%.*}" MEDIAKEY="YOUTUBE_${MEDIAID}" @@ -184,6 +185,43 @@ rm -Rf ${YTEMP} ;; ######################################################################## +# CASE ## WEB + web) + + zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' + + ## httrack all web site + [[ ! $(which httrack) ]] && zenity --warning --width ${large} --text "Utilitaire de copie de site web absent.. Lancez la commande 'sudo apt install httrack'" && exit 1 + echo "httrack --mirror $URL" + ;; + + +######################################################################## +# CASE ## PAGE + page) + + zenity --warning --width 600 --text 'DEVELOPPEMENT . ZONE . Please Participate https://git.p2p.legal' + + ## record one page only + [[ ! $(which chromium) ]] && zenity --warning --width ${large} --text "Utilitaire de copie de page web absent.. Lancez la commande 'sudo apt install chromium'" && exit 1 + cd /tmp/ && rm output.pdf && chromium --headless --no-sandbox --print-to-pdf $URL + + TITLE=$(zenity --entry --width 480 --title "Titre" --text "Indiquez le titre de la vidéo" --entry-text="${URL}") + [[ $TITLE == "" ]] && exit 1 + FILE_NAME="$(echo "${TITLE}" | detox --inline).pdf" ## TODO make it better + + MEDIAID="$REVSOURCE$(echo "${TITLE}" | detox --inline)" + MEDIAKEY="PAGE_${MEDIAID}" + FILE_PATH="$HOME/astroport/youtube/$MEDIAID" + mkdir -p ${FILE_PATH} && mv -f output.pdf ${FILE_PATH}/${FILE_NAME} + + + echo "page;${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};_IPNSKEY_;${RES};/ipfs/_IPFSREPFILEID_/$FILE_NAME" > ~/astroport/${CAT}/${MEDIAID}/ajouter_video.txt + + + ;; + +######################################################################## # CASE ## MP3 # _____ # _ __ ___ _ __|___ / @@ -230,7 +268,7 @@ FILE_EXT="${FILE_NAME##*.}" YID=$(echo "${FILE_NAME}" | cut -d "&" -f 1) YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | sed "s/[(][^)]*[)]//g" | sed -e 's/[^A-Za-z0-9._-]/_/g' | sed -e 's/__/_/g') # Remove YoutubeID_ and (what is in perentheses) -[[ $(which detox) ]] && YNAME=$(echo "${FILE_NAME}" | cut -d "&" -f 2- | detox --inline) +[[ $(which detox) ]] && YNAME="$(echo "${FILE_NAME}" | cut -d "&" -f 2- | detox --inline)" [[ ! $islink && "$song" != "" ]] && FILE_PATH="$HOME/astroport/$CAT/$artist/_o-o_" \ || FILE_PATH="$HOME/astroport/$CAT/${YID}" @@ -452,8 +490,6 @@ echo "${CAT};${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};${GROUPES};${RES};/ zenity --warning --width ${large} --text "UTILISEZ download_from_kodi_log.sh en ligne de commande..." exit 0 fi - - ;; ######################################################################## @@ -472,7 +508,7 @@ esac # ADD $FILE to IPFS / ASTROPORT / KODI echo "new_file_in_astroport.sh \"$HOME/astroport/${CAT}/${MEDIAID}/\" \"${FILE_NAME}\"" [[ -f ~/astroport/${CAT}/${MEDIAID}/ajouter_video.txt ]] && cat ~/astroport/${CAT}/${MEDIAID}/ajouter_video.txt -[[ -f ~/astroport/${CAT}/${MEDIAID}/video.json ]] && cat ~/astroport/${CAT}/${MEDIAID}/video.json +# LOG NOISE # [[ -f ~/astroport/${CAT}/${MEDIAID}/video.json ]] && cat ~/astroport/${CAT}/${MEDIAID}/video.json ######################################################################## ######################################################################## From 77b477ec6b3274b565f69e828eeae0c2db1b1e7c Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 22:42:57 +0200 Subject: [PATCH 11/96] cleaning old files and dir from ipfs_swarm --- zen/ipfs_SWARM_refresh.sh | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/zen/ipfs_SWARM_refresh.sh b/zen/ipfs_SWARM_refresh.sh index f97809e..cd923ff 100755 --- a/zen/ipfs_SWARM_refresh.sh +++ b/zen/ipfs_SWARM_refresh.sh @@ -45,8 +45,10 @@ touch /tmp/treated.ipfs.swarm ######################################################################## ######################################################################## echo "******************************************************************" -echo "RETRIEVING MY OWN DATA FROM IPNS TO ~/.zen/ipfs_swarm" -#ipfs get --output=/home/$YOU/.zen/ipfs_swarm/ /ipns/$IPFSNODEID +echo "REFRESHING MY OWN DATA FROM IPNS TO ~/.zen/ipfs_swarm" +find /home/$YOU/.zen/ipfs_swarm/.$IPFSNODEID/ -type f -mtime +30 -exec rm '{}' \; +find /home/$YOU/.zen/ipfs_swarm/.$IPFSNODEID/ -type d -mtime +30 -exec rmdir '{}' \; +ipfs get --output=/home/$YOU/.zen/ipfs_swarm/ /ipns/$IPFSNODEID ######################################################################## count=1 ipfs bootstrap > /tmp/ipfs_swarm_peers @@ -104,8 +106,11 @@ do continue fi fi - ## Add to bootstrap if XID exists - [[ "$XID" != "" ]] && ipfs bootstrap add "$peerline" || ipfs bootstrap rm "$peerline" + ## Refresh bootstrap if XID exists + [[ "$XID" != "" ]] && ipfs bootstrap rm "/ipfs/$ipfsnodeid" && ipfs bootstrap add "$peerline" || ipfs bootstrap rm "$peerline" + echo "Removing 30 days older data from ~/.zen/ipfs_swarm/.$ipfsnodeid/" + find /home/$YOU/.zen/ipfs_swarm/.$ipfsnodeid/ -type f -mtime +30 -exec rm '{}' \; + find /home/$YOU/.zen/ipfs_swarm/.$ipfsnodeid/ -type d -mtime +30 -exec rmdir '{}' \; echo "OK Friend REFRESH /ipns/$ipfsnodeid INTO ~/.zen/ipfs_swarm/" ipfs --timeout=60s get --output=/home/$YOU/.zen/ipfs_swarm/ /ipns/$ipfsnodeid if [ $? != 0 ]; @@ -235,7 +240,7 @@ done # rm ~/.kodi/userdata/addon_data/plugin.video.vstream/astroport_cache.db ######################################################################## -# REFRESH tiddlywiki WALL OF FRIENDS +# REFRESH tiddlywiki WALL OF FRIENDS /ipns/${IPFSNODEID}/.${IPFSNODEID}/FRIENDS/index.html ######################################################################## zuid="$(cat ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid)" @@ -259,7 +264,7 @@ for wiki in $(ls ~/.zen/ipfs_swarm/.12D*/index.html | grep -Ev "${IPFSNODEID}" 2 ipfsnodeid=$(echo $wiki | cut -d '.' -f 3- | cut -d '/' -f 1) whoisg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid) echo "
  • - + \"$whoisg1\"

    From 9be700d3b09fd77901f0e4c9f6c4cfa6a1d84f66 Mon Sep 17 00:00:00 2001 From: fred Date: Thu, 2 Sep 2021 22:49:43 +0200 Subject: [PATCH 12/96] new cron timing --- cron_MINUTE.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/cron_MINUTE.sh b/cron_MINUTE.sh index 75947bf..ce112aa 100755 --- a/cron_MINUTE.sh +++ b/cron_MINUTE.sh @@ -188,10 +188,10 @@ fi ################################################################## # TODO: IDEA make gchange/ipfs/ipns refresh speed depending on ipfs swarm size and DEFCON level ! ## SYNC GCHANGE EVERY 2 hours runtime -[[ $(($runtime % 97)) == 0 ]] && $MY_PATH/zen/gchange_INIT.sh 2>&1 > /home/${YOU}/.zen/ipfs/.${IPFSNODEID}/.log.gchange_INIT.txt -## SYNC SWARM EVERY 20 mn runtime +[[ $(($runtime % 122)) == 0 || "$runtime" == "1" ]] && $MY_PATH/zen/gchange_INIT.sh 2>&1 > /home/${YOU}/.zen/ipfs/.${IPFSNODEID}/.log.gchange_INIT.txt +## SYNC SWARM EVERY 17 mn runtime [[ $(($runtime % 17)) == 0 ]] && $MY_PATH/zen/gchange_IPFS_swarm.sh 2>&1 > /home/${YOU}/.zen/ipfs/.${IPFSNODEID}/.log.gchange_IPFS_swarm.txt -# QUICK SYNC SWARM EVERY 12 minutes +# QUICK SYNC SWARM EVERY 11 minutes [[ $(($runtime % 11)) == 0 ]] && $MY_PATH/zen/ipfs_FRIENDS_refresh.sh 2>&1 > /home/${YOU}/.zen/ipfs/.${IPFSNODEID}/.log.ipfs_FRIENDS_refresh.txt ## TODO ACTIVATE/DESACTIVATE LOG ######################################################################## @@ -228,9 +228,9 @@ fi # # REFRESHing MEDIAKEY / ZenTAG nano DHTs => Zen File ECONOMY wallet cycle if [[ "$timebar" == "12:12" || "$timebar" == "00:12" || "$timebar" == "03:03" || $(($runtime % 720)) == 0 || $runtime == 12 ]]; then - # Every 12h runtime restarting IPFS daemon - [[ "$timebar" == "03:03" ]] && [[ -f /etc/sudoers.d/systemctl ]] && sudo systemctl restart ipfs && exit 0 - [[ "$timebar" == "03:03" ]] && [[ ${YOU} == "xbian" ]] && sudo service ipfs restart && exit 0 + # At 03:03 and every 12h runtime restarting IPFS daemon + [[ "$timebar" == "03:03" || $(($runtime % 720)) == 0 ]] && [[ -f /etc/sudoers.d/systemctl ]] && sudo systemctl restart ipfs && exit 0 + [[ "$timebar" == "03:03" || $(($runtime % 720)) == 0 ]] && [[ ${YOU} == "xbian" ]] && sudo service ipfs restart && exit 0 #### Refresh & publish MEDIAKEYs $MY_PATH/zen/ipns_TAG_refresh.sh From 2aff2ff6123df57662c7b9bc50be7d409f0520b4 Mon Sep 17 00:00:00 2001 From: fred Date: Fri, 3 Sep 2021 17:58:48 +0200 Subject: [PATCH 13/96] WIKI des Amis de $zuid = ${IPFSNODEID} --- zen/ipfs_SWARM_refresh.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zen/ipfs_SWARM_refresh.sh b/zen/ipfs_SWARM_refresh.sh index cd923ff..eba100c 100755 --- a/zen/ipfs_SWARM_refresh.sh +++ b/zen/ipfs_SWARM_refresh.sh @@ -248,7 +248,7 @@ echo "******************************************************************" echo "### PUBLISH tiddlywiki WALL OF FRIENDS ###" echo " - WIKI des Amis de ${IPFSNODEID} + WIKI des Amis de $zuid = ${IPFSNODEID} From 1d505b8d8b722bd737c73d801745b1463179a9e5 Mon Sep 17 00:00:00 2001 From: fred Date: Fri, 3 Sep 2021 17:59:15 +0200 Subject: [PATCH 14/96] transition to ipfs backend --- zen/gchange_IPFS_swarm.sh | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/zen/gchange_IPFS_swarm.sh b/zen/gchange_IPFS_swarm.sh index 6a6ca88..4bb4b64 100755 --- a/zen/gchange_IPFS_swarm.sh +++ b/zen/gchange_IPFS_swarm.sh @@ -101,13 +101,6 @@ do ## CHECKING VALUE CAPSULE starsin=$(ipfs --timeout=10s cat /ipns/$ipfsnodeid/.$ipfsnodeid/FRIENDS/$G1PUB/stars.level) starsout=$(ipfs --timeout=10s cat /ipns/$IPFSNODEID/.$IPFSNODEID/FRIENDS/$whoisg1/stars.level) - Addr=$(echo "$peerline" | rev | cut -d '/' -f 2- | rev ) -## Prepare -[[ $starsin && $starsout ]] && echo '{ - "ID": "'$ipfsnodeid'", - "Addrs": ["'$Addr'"] -},' >> ~/.zen/A_peering_peers.txt - # REFRESH A_swarm_map.txt echo $peerline >> ~/.zen/A_swarm_map.txt @@ -135,12 +128,13 @@ do "Addrs": ["'$Addr'"] },' >> ~/.zen/A_peering_peers.txt # jq '.Peering.Peers += [{"ID": "'$ipfsnodeid'", "Addrs": "["'$Addr'"]"}]' - else echo "ALREADY RECORDED FRIEND" fi + ## Sync ipfs_swarm ipfs --timeout=60s get --output=/home/$YOU/.zen/ipfs_swarm/ /ipns/$ipfsnodeid else + ## REMOVE FRIENDS DIRECTORY echo "NOT FULL FRIEND $ipfsnodeid / $whoisg1" [[ "$liking_me" != "" ]] && rm -Rf ~/.zen/ipfs/.${IPFSNODEID}/FRIENDS/$liking_me # SEND ME A MESSAGE TO DECIDE WHAT TO DO ? @@ -164,10 +158,12 @@ echo $(date) echo "####################################################" -# ipfs SWARM shaping +# ipfs_SWARM_refresh [[ $(cat ~/.zen/A_my_swarm.txt | wc -l) -gt 0 ]] && ~/.zen/astrXbian/zen/ipfs_SWARM_refresh.sh && exit 0 || echo "SWARM LOST !! " -## SHOULD HAVE exit 0 before !! +######################################################################## +######################################################################## +## ERROR !! SHOULD HAVE exit 0 before !! ######################################################################## ## SWARM LOST !! EMERGENCY RECOVERY CODE !!! ######################################################################## From fb5e3410926f2a703daa3fb1e4556e9501eddd1f Mon Sep 17 00:00:00 2001 From: fred Date: Fri, 3 Sep 2021 20:31:57 +0200 Subject: [PATCH 15/96] Show when FRIENDS WIKI page is updated TITLE = $zuid $updated FRIENDS (${IPFSNODEID}) --- zen/gchange_INIT.sh | 2 +- zen/ipfs_SWARM_refresh.sh | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/zen/gchange_INIT.sh b/zen/gchange_INIT.sh index ea53414..faa29a7 100755 --- a/zen/gchange_INIT.sh +++ b/zen/gchange_INIT.sh @@ -78,7 +78,7 @@ export LANG=C.UTF-8 #attipix [[ ! -f ~/.zen/ipfs/.${IPFSNODEID}/.ipfsnodeid ]] && echo ${IPFSNODEID} > ~/.zen/ipfs/.${IPFSNODEID}/.ipfsnodeid ######################################################################## -# NODE DISK PERFORMANCE, manual remove ~/.ipfs/test.disk to run again +# NODE DISK PERFORMANCE, manual remove ~/.ipfs/test.disk (every week in cron_MINUTE) then run again if [[ ! -f ~/.ipfs/test.disk ]]; then diskperf=$(dd if=/dev/zero of=~/.ipfs/test.disk bs=10M count=1 oflag=dsync 2>&1 | tail -n 1 | sed s/\,\ /\ -/g | cut -d '-' -f 4) echo "DISK PERFORMANCE TESTING : $diskperf" diff --git a/zen/ipfs_SWARM_refresh.sh b/zen/ipfs_SWARM_refresh.sh index eba100c..992f467 100755 --- a/zen/ipfs_SWARM_refresh.sh +++ b/zen/ipfs_SWARM_refresh.sh @@ -243,12 +243,13 @@ done # REFRESH tiddlywiki WALL OF FRIENDS /ipns/${IPFSNODEID}/.${IPFSNODEID}/FRIENDS/index.html ######################################################################## zuid="$(cat ~/.zen/ipfs/.$IPFSNODEID/_xbian.zuid)" +updated="$(date +"%m-%d-%Y_%H:%M")" echo "******************************************************************" echo "### PUBLISH tiddlywiki WALL OF FRIENDS ###" echo " - WIKI des Amis de $zuid = ${IPFSNODEID} + $zuid $updated FRIENDS (${IPFSNODEID}) From e913299a155aa388ccaf32f7797749f7d99b4f95 Mon Sep 17 00:00:00 2001 From: fred Date: Fri, 3 Sep 2021 20:38:29 +0200 Subject: [PATCH 16/96] $zuid FRIENDS --- zen/ipfs_SWARM_refresh.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/zen/ipfs_SWARM_refresh.sh b/zen/ipfs_SWARM_refresh.sh index 992f467..3ef70d0 100755 --- a/zen/ipfs_SWARM_refresh.sh +++ b/zen/ipfs_SWARM_refresh.sh @@ -269,8 +269,9 @@ echo "

  • \"$whoisg1\"

    - - \"$ipfsnodeid\" + + $zuid FRIENDS +
    $ipfsnodeid