#!/bin/bash ######################################################################## # Author: Fred (support@qo-op.com) # Version: 2020.12.03 # License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/) ######################################################################## MY_PATH="`dirname \"$0\"`" # relative MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized ME="${0##*/}" ######################################################################## # \\/// # qo-op ############# '$MY_PATH/$ME' ######################################################################## # ex: ./'$ME' # GET GCHANGE FRIENDS AND FIND THEIR IPFS ID TO "ipfs swarm connect" THEM ########################################################################' ## TODO : Beware of liking_me FLOOD & Invite $liking_me people to my #Swarm0 ######################################################################## ## CONNECT GLOBAL "ipfs.io" ## DANGEROUS DATA LEAK only for short time... ######################################################################## # ADD ipfs.io public bootstrap into your swarm peers # RUN: cat ~/.zen/astroport/ipfs.swarm.ipfs.io | ipfs swarm connect # SOON ipfs swarm peers will GROW!!! YOU ARE VSIBLE !!! # RUN: sudo systemctl restart ipfs # GOES BACK TO SWARM0 ######################################################################## ######################################################################## # ENVIRONEMENT DETECTION + IPFS ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_info ######################################################################## IPFSNODEID=$(ipfs id -f='\n') [[ $IPFSNODEID == "" ]] && echo "ERROR missing IPFS Node id !! IPFS is not installed !?" && exit 1 ######################################################################## # Force Strict #swarm0 !!? # ipfs bootstrap rm --all echo "" > /tmp/A_liking_me_NO_ipfstryme.txt liking_me_count=0 friend_of_mine_count=0 ######################################################################## # Let's look for Friends and "IPFS swarm connect" with them ######################################################################## cd ~/.zen/astroport/zen/cesium-messaging # 1. Get Gchange "liking_me" people list for liking_me in $(./jaklis.py like | jq -r '.likes[].issuer'); do friend_of_mine=$(./jaklis.py like -p $liking_me | jq -r '.yours'); # 2. Searching "ipfstryme" message from friend_of_mine [[ $friend_of_mine != null ]] && echo "Connect to my friend $liking_me" && friend_of_mine_count=$((friend_of_mine_count+1)) && ipfsadd=0 \ && for adresse in $(./jaklis.py read -n50 -j | jq -r --arg friendKEY "$liking_me" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.content'); do # 3. liking_me friend_of_mine can join my swarm & bootstrap ipfs swarm connect $adresse; ipfs bootstrap add $adresse; ipfsadd=$((ipfsadd+1)) done; [[ $friend_of_mine != null && $ipfsadd == 0 ]] && echo "No ipfstryme message..." && echo "$liking_me" >> /tmp/A_liking_me_NO_ipfstryme.txt # 4. liking_me IS NOT a friend_of_mine!! [[ $friend_of_mine == null ]] && echo "I am NOT LIKING $liking_me"; liking_me_count=$((liking_me_count+1)) done echo "#################################################### I have $friend_of_mine_count friends amoung $liking_me_count liking me people __________________________________________ My actual #SWARM0" ipfs swarm peers echo "__________________________________________" echo for line in $(cat /tmp/A_liking_me_NO_ipfstryme.txt | uniq); do echo "./jaklis.py send -d $liking_me -t 'Astroport' -m 'Rejoins mon #Swarm0 sur https://qo-op.com'" done cd -