Convert symlink $(readlink ~/.zen/ipfs)
This commit is contained in:
parent
50cf9e0fcb
commit
67e77f20e1
|
@ -46,7 +46,7 @@ curl -s ${GCHANGE}/user/profile/${G1PUB} > ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gc
|
||||||
|
|
||||||
Gtitle=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange.json | jq -r '._source.title')
|
Gtitle=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange.json | jq -r '._source.title')
|
||||||
[[ $Gtitle ]] && echo "$Gtitle" > ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title
|
[[ $Gtitle ]] && echo "$Gtitle" > ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title
|
||||||
echo"# ACTUAL _g1.gchange_title=$Gtitle"
|
echo "# ACTUAL _g1.gchange_title=$Gtitle"
|
||||||
|
|
||||||
# UPDATE _g1.astroport_title with city
|
# UPDATE _g1.astroport_title with city
|
||||||
Atitle="Station $YOU@$XZUID"
|
Atitle="Station $YOU@$XZUID"
|
||||||
|
|
|
@ -20,7 +20,7 @@ echo "Adding ~/.zen/ipfs to IPFS"
|
||||||
# then
|
# then
|
||||||
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/.timestamp
|
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/.timestamp
|
||||||
echo $MIPFS > ~/.zen/ipfs/.${IPFSNODEID}/.chain
|
echo $MIPFS > ~/.zen/ipfs/.${IPFSNODEID}/.chain
|
||||||
MIPFS=$(ipfs add -rHq ~/.zen/ipfs | tail -n 1)
|
MIPFS=$(ipfs add -rHq $(readlink ~/.zen/ipfs) | tail -n 1)
|
||||||
NODEIPNS=$(ipfs --timeout=180s name publish --quieter /ipfs/$MIPFS)
|
NODEIPNS=$(ipfs --timeout=180s name publish --quieter /ipfs/$MIPFS)
|
||||||
echo "$NODEIPNS:TIME:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.timestamp):CHAIN:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.chain)"
|
echo "$NODEIPNS:TIME:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.timestamp):CHAIN:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.chain)"
|
||||||
# fi
|
# fi
|
||||||
|
|
256
zen/zen_MAKE.sh
256
zen/zen_MAKE.sh
|
@ -41,37 +41,37 @@ IPFSNODEID=$(ipfs id -f='<id>\n')
|
||||||
G1PUB=$(cat ~/.ssb/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
G1PUB=$(cat ~/.ssb/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
||||||
echo "G1SSB Wallet: $G1PUB
|
echo "G1SSB Wallet: $G1PUB
|
||||||
IPFS: $IPFSNODEID
|
IPFS: $IPFSNODEID
|
||||||
__ __ _ _ _______
|
__ __ _ _ _______
|
||||||
_______ _ __ | \/ | / \ | |/ / ____|
|
_______ _ __ | \/ | / \ | |/ / ____|
|
||||||
|_ / _ \ '_ \ | |\/| | / _ \ | ' /| _|
|
|_ / _ \ '_ \ | |\/| | / _ \ | ' /| _|
|
||||||
/ / __/ | | | | | | |/ ___ \| . \| |___
|
/ / __/ | | | | | | |/ ___ \| . \| |___
|
||||||
/___\___|_| |_| |_| |_/_/ \_\_|\_\_____|
|
/___\___|_| |_| |_| |_/_/ \_\_|\_\_____|
|
||||||
|
|
||||||
"
|
"
|
||||||
########################################################################
|
########################################################################
|
||||||
# ZenTag is an IPFS/IPNS datastructure shared into IPFS, publish
|
# ZenTag is an IPFS/IPNS datastructure shared into IPFS, publish
|
||||||
# ~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~
|
# ~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~ Draft ~~~~
|
||||||
# _chain # ZenTag IPFS Hash
|
# _chain # ZenTag IPFS Hash
|
||||||
# _chain.n # Sequence Number
|
# _chain.n # Sequence Number
|
||||||
# _chain.nanodate # Current nanodate
|
# _chain.nanodate # Current nanodate
|
||||||
# _chain.prev # Previous IPFS Hash
|
# _chain.prev # Previous IPFS Hash
|
||||||
# _g1.node.creator # G1SSB wallet pubkey
|
# _g1.node.creator # G1SSB wallet pubkey
|
||||||
# _tag.issuer # G1TX ISSUER pubkey
|
# _tag.issuer # G1TX ISSUER pubkey
|
||||||
# _tag.zensource # G1TX HASH or SSB timestamp
|
# _tag.zensource # G1TX HASH or SSB timestamp
|
||||||
# _ipfs.node.creatorcat # NODE IPFS ID
|
# _ipfs.node.creatorcat # NODE IPFS ID
|
||||||
# _ipfs.publishkey.BB.aes # BB SYMcypher of IPNS publish key
|
# _ipfs.publishkey.BB.aes # BB SYMcypher of IPNS publish key
|
||||||
# _ipfs.publishkey.crypt # G1SSB ASYMcypher of IPNS publish key
|
# _ipfs.publishkey.crypt # G1SSB ASYMcypher of IPNS publish key
|
||||||
# _tag.BB.sha # BB sha256sum
|
# _tag.BB.sha # BB sha256sum
|
||||||
# _tag.uid # ZenTag UID
|
# _tag.uid # ZenTag UID
|
||||||
# _tag.zen # ZentTag balance
|
# _tag.zen # ZentTag balance
|
||||||
# _ipns # /ipns/ address
|
# _ipns # /ipns/ address
|
||||||
# PASSENGER FILE (put to IPFS and cypher link in IPNS ZenTag)
|
# PASSENGER FILE (put to IPFS and cypher link in IPNS ZenTag)
|
||||||
# _passenger.filename # Passenger filename
|
# _passenger.filename # Passenger filename
|
||||||
# _passenger.ipfs.crypt # G1SSB cyphered IPFS Passenger link
|
# _passenger.ipfs.crypt # G1SSB cyphered IPFS Passenger link
|
||||||
# _passenger.read # Zen value asked for READING
|
# _passenger.read # Zen value asked for READING
|
||||||
# _passenger.park # Zen value paid for PARKING
|
# _passenger.park # Zen value paid for PARKING
|
||||||
# Only if contract executed => add new cyphered links
|
# Only if contract executed => add new cyphered links
|
||||||
# _passenger.contract.sh # Zen CONTRACT TODO
|
# _passenger.contract.sh # Zen CONTRACT TODO
|
||||||
# COmpare with code to verify and extend Draft
|
# COmpare with code to verify and extend Draft
|
||||||
# TODO: Could be converted into yaml or json if you like...
|
# TODO: Could be converted into yaml or json if you like...
|
||||||
########################################################################
|
########################################################################
|
||||||
|
@ -85,39 +85,39 @@ if [[ "$METADATA" == "" ]]; then
|
||||||
echo "
|
echo "
|
||||||
# LOVE BANK - PrePaid Card ZenTag
|
# LOVE BANK - PrePaid Card ZenTag
|
||||||
# FULLY BACKED ON IRL G1 LIBRE MONEY (https://cesium.app)
|
# FULLY BACKED ON IRL G1 LIBRE MONEY (https://cesium.app)
|
||||||
# ____ ____ _____ _____ _ _
|
# ____ ____ _____ _____ _ _
|
||||||
# / ___| _ \| ____| ____| \ | | _______ _ __
|
# / ___| _ \| ____| ____| \ | | _______ _ __
|
||||||
# | | _| |_) | _| | _| | \| | |_ / _ \ '_ \
|
# | | _| |_) | _| | _| | \| | |_ / _ \ '_ \
|
||||||
# | |_| | _ <| |___| |___| |\ | / / __/ | | |
|
# | |_| | _ <| |___| |___| |\ | / / __/ | | |
|
||||||
# \____|_| \_\_____|_____|_| \_| /___\___|_| |_|
|
# \____|_| \_\_____|_____|_| \_| /___\___|_| |_|
|
||||||
#
|
#
|
||||||
"
|
"
|
||||||
# COMMENT WILL BREAK (G1 <=> ZEN) STRICT RELATION
|
# COMMENT WILL BREAK (G1 <=> ZEN) STRICT RELATION
|
||||||
[[ ! -f ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE ]] && echo "ERROR# UNKNOWN ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE !!" && exit 1
|
[[ ! -f ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE ]] && echo "ERROR# UNKNOWN ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE !!" && exit 1
|
||||||
ISSUER=$(cat ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE)
|
ISSUER=$(cat ~/.zen/cache/g1_TX_inputs/zen.$ZENSOURCE)
|
||||||
[[ $ISSUER == "" ]] && echo "ERROR# NO ISSUER FOUND FOR TX $ZENSOURCE !!" && exit 1
|
[[ $ISSUER == "" ]] && echo "ERROR# NO ISSUER FOUND FOR TX $ZENSOURCE !!" && exit 1
|
||||||
echo "ISSUER = $ISSUER SENT TX $ZENSOURCE !!"
|
echo "ISSUER = $ISSUER SENT TX $ZENSOURCE !!"
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
|
|
||||||
_|_ o ._ _ _ _ _|_ _. ._ _ ._
|
_|_ o ._ _ _ _ _|_ _. ._ _ ._
|
||||||
|_ | | | | (/_ _> |_ (_| | | | |_)
|
|_ | | | | (/_ _> |_ (_| | | | |_)
|
||||||
|
|
|
|
||||||
SSB PASSENGER ~/.zen/miam/$ZENSOURCE
|
SSB PASSENGER ~/.zen/miam/$ZENSOURCE
|
||||||
"
|
"
|
||||||
|
|
||||||
[[ ! -d ~/.zen/miam/$ZENSOURCE ]] && echo "ERROR# UNKNOWN ~/.zen/miam/$ZENSOURCE !!" && exit 1
|
[[ ! -d ~/.zen/miam/$ZENSOURCE ]] && echo "ERROR# UNKNOWN ~/.zen/miam/$ZENSOURCE !!" && exit 1
|
||||||
ISSUER=$(cat ~/.zen/miam/$ZENSOURCE/msg_key)
|
ISSUER=$(cat ~/.zen/miam/$ZENSOURCE/msg_key)
|
||||||
[[ $ISSUER == "" ]] && echo "ERROR# NO ISSUER FOUND FOR miam $ZENSOURCE !!" && exit 1
|
[[ $ISSUER == "" ]] && echo "ERROR# NO ISSUER FOUND FOR miam $ZENSOURCE !!" && exit 1
|
||||||
echo "ISSUER = SSB Message $ISSUER !!"
|
echo "ISSUER = SSB Message $ISSUER !!"
|
||||||
|
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# CREATE ZEN TAG
|
# CREATE ZEN TAG
|
||||||
########################################################################
|
########################################################################
|
||||||
# Produce unique 6 words diceware to give a name _tag.uid
|
# Produce unique 6 words diceware to give a name _tag.uid
|
||||||
AA=$(echo $($MY_PATH/tools/diceware.sh 6 | xargs) | sed s/\ /_/g ) # ZenTag Name = Diceware_6_words
|
AA=$(echo $($MY_PATH/tools/diceware.sh 6 | xargs) | sed s/\ /_/g ) # ZenTag Name = Diceware_6_words
|
||||||
|
@ -126,12 +126,12 @@ AAH=$(echo -n ${AA} | sha256sum | cut -d ' ' -f 1) # ZenTag Name SHA256
|
||||||
# TODO ACTIVATE SWARM UNICITY CHECK
|
# TODO ACTIVATE SWARM UNICITY CHECK
|
||||||
# Create Unique Zentag for all IPFS SWARM!
|
# Create Unique Zentag for all IPFS SWARM!
|
||||||
while [[ $(grep -Rwl "$AA" ~/.zen/ipfs_swarm/.12D3KooW*/TAG/*/_tag.uid) ]]; do
|
while [[ $(grep -Rwl "$AA" ~/.zen/ipfs_swarm/.12D3KooW*/TAG/*/_tag.uid) ]]; do
|
||||||
AA=$(echo $($MY_PATH/tools/diceware.sh 6 | xargs) | sed s/\ /_/g )
|
AA=$(echo $($MY_PATH/tools/diceware.sh 6 | xargs) | sed s/\ /_/g )
|
||||||
AAH=$(echo -n ${AA} | sha256sum | cut -d ' ' -f 1)
|
AAH=$(echo -n ${AA} | sha256sum | cut -d ' ' -f 1)
|
||||||
done
|
done
|
||||||
|
|
||||||
# BB key is a 4 word diceware printed on QRCode for Human use.
|
# BB key is a 4 word diceware printed on QRCode for Human use.
|
||||||
# SHA256 PASSWORD CHECK FOR ALLOWING WRITE ACTION
|
# SHA256 PASSWORD CHECK FOR ALLOWING WRITE ACTION
|
||||||
BB=$($MY_PATH/tools/diceware.sh 4 | xargs);
|
BB=$($MY_PATH/tools/diceware.sh 4 | xargs);
|
||||||
BBH=$(echo -n "$BB" | sha256sum | cut -d ' ' -f 1)
|
BBH=$(echo -n "$BB" | sha256sum | cut -d ' ' -f 1)
|
||||||
|
|
||||||
|
@ -141,14 +141,14 @@ BBH=$(echo -n "$BB" | sha256sum | cut -d ' ' -f 1)
|
||||||
mkdir -p ~/.zen/tag/${AAH}
|
mkdir -p ~/.zen/tag/${AAH}
|
||||||
# LOG
|
# LOG
|
||||||
echo "
|
echo "
|
||||||
_____ _____ _ ____
|
_____ _____ _ ____
|
||||||
|__ /___ _ _|_ _|/ \ / ___| __/\__
|
|__ /___ _ _|_ _|/ \ / ___| __/\__
|
||||||
/ // _ \ °_ \| | / _ \| | _ \ /
|
/ // _ \ °_ \| | / _ \| | _ \ /
|
||||||
/ /| __/ | | | |/ ___ \ |_| | /_ _\
|
/ /| __/ | | | |/ ___ \ |_| | /_ _\
|
||||||
/____\___|_| |_|_/_/ \_\____| \/
|
/____\___|_| |_|_/_/ \_\____| \/
|
||||||
|
|
||||||
*******************************************************
|
*******************************************************
|
||||||
| $AA | $ZEN Zen
|
| $AA | $ZEN Zen
|
||||||
*******************************************************
|
*******************************************************
|
||||||
CREATING ~/.zen/tag/${AAH}/
|
CREATING ~/.zen/tag/${AAH}/
|
||||||
"
|
"
|
||||||
|
@ -159,8 +159,8 @@ echo "$ZEN" > ~/.zen/tag/${AAH}/_tag.zen # Tag ZEN amount
|
||||||
echo "${IPFSNODEID}" > ~/.zen/tag/${AAH}/_ipfs.node.creator # NODE IPFS ID
|
echo "${IPFSNODEID}" > ~/.zen/tag/${AAH}/_ipfs.node.creator # NODE IPFS ID
|
||||||
echo "$ZENSOURCE" > ~/.zen/tag/${AAH}/_tag.zensource # ZENSOURCE
|
echo "$ZENSOURCE" > ~/.zen/tag/${AAH}/_tag.zensource # ZENSOURCE
|
||||||
echo "$G1PUB" > ~/.zen/tag/${AAH}/_g1.node.creator # CREATOR IPFS NODE G1PUBKEY
|
echo "$G1PUB" > ~/.zen/tag/${AAH}/_g1.node.creator # CREATOR IPFS NODE G1PUBKEY
|
||||||
echo "$ISSUER" > ~/.zen/tag/${AAH}/_tag.issuer # TX ISSUER G1PUBKEY OR SSB_MESSAGE ID
|
echo "$ISSUER" > ~/.zen/tag/${AAH}/_tag.issuer # TX ISSUER G1PUBKEY OR SSB_MESSAGE ID
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
# Create IPNS publishing key ${AA}.key
|
# Create IPNS publishing key ${AA}.key
|
||||||
# =====================================
|
# =====================================
|
||||||
|
@ -170,7 +170,7 @@ echo "$ISSUER" > ~/.zen/tag/${AAH}/_tag.issuer # TX ISSUER G1PUBKEY OR SSB_MESSA
|
||||||
########################################################################
|
########################################################################
|
||||||
#timestamp=$(date -u +%s%N | cut -b1-13)
|
#timestamp=$(date -u +%s%N | cut -b1-13)
|
||||||
keyname="${ZENSOURCE}_${AA}.key"
|
keyname="${ZENSOURCE}_${AA}.key"
|
||||||
[[ ! $(ipfs key list | grep -F ${AA}.key) ]] && J0=$(ipfs key gen -t rsa -s 2048 $keyname)
|
[[ ! $(ipfs key list | grep -F ${AA}.key) ]] && J0=$(ipfs key gen -t rsa -s 2048 $keyname)
|
||||||
# WRITE BBH for QRCode BB verification
|
# WRITE BBH for QRCode BB verification
|
||||||
echo "$BBH" > ~/.zen/tag/${AAH}/_tag.BB.sha
|
echo "$BBH" > ~/.zen/tag/${AAH}/_tag.BB.sha
|
||||||
# BB pgp symetric publishkey
|
# BB pgp symetric publishkey
|
||||||
|
@ -185,9 +185,9 @@ CYPHERING PUBLISH KEY
|
||||||
__ _
|
__ _
|
||||||
_/_/ __/|_ __/|_ | |
|
_/_/ __/|_ __/|_ | |
|
||||||
/ / | / | / / /
|
/ / | / | / / /
|
||||||
/ / /_ __| /_ __| / /
|
/ / /_ __| /_ __| / /
|
||||||
/ / |/ |/ _/_/
|
/ / |/ |/ _/_/
|
||||||
|_| /_/
|
|_| /_/
|
||||||
|
|
||||||
KEY : $BB
|
KEY : $BB
|
||||||
BBH : $BBH
|
BBH : $BBH
|
||||||
|
@ -196,61 +196,61 @@ BBH : $BBH
|
||||||
# PASSENGER FILE is added to IPFS (then link is cyphered: NO!)
|
# PASSENGER FILE is added to IPFS (then link is cyphered: NO!)
|
||||||
# https://beechat.network/how-beechats-encryption-works/
|
# https://beechat.network/how-beechats-encryption-works/
|
||||||
# SECURITY IS OBSOLETE AS WE ARE SHARING COPY WITH FRIENDS ;)
|
# SECURITY IS OBSOLETE AS WE ARE SHARING COPY WITH FRIENDS ;)
|
||||||
# ACTIVATE ZEN CONTRACT... 100 readers impresari
|
# ACTIVATE ZEN CONTRACT... 100 readers impresari
|
||||||
# LOVE ECONOMY IS FREE. EVERYBODY IS DONATING TO THE OTHERS NOW.
|
# LOVE ECONOMY IS FREE. EVERYBODY IS DONATING TO THE OTHERS NOW.
|
||||||
# INCOME != MONEY FORGE (Realtive Moey Theory applies HERE)
|
# INCOME != MONEY FORGE (Realtive Moey Theory applies HERE)
|
||||||
# CODE WILL BE CERTIFIED AS IPFS HASH.
|
# CODE WILL BE CERTIFIED AS IPFS HASH.
|
||||||
if [[ -f $PASSENGER ]]; then
|
if [[ -f $PASSENGER ]]; then
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
_ _ _ _ _ _ _ _ _
|
_ _ _ _ _ _ _ _ _
|
||||||
/ \ / \ / \ / \ / \ / \ / \ / \ / \
|
/ \ / \ / \ / \ / \ / \ / \ / \ / \
|
||||||
( p | a | s | s | e | n | g | e | r )
|
( p | a | s | s | e | n | g | e | r )
|
||||||
\_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/
|
\_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/ \_/
|
||||||
|
|
||||||
"
|
"
|
||||||
# SEARCH FOR SAME SOURCE in IPFS... Not to make it twice...
|
# SEARCH FOR SAME SOURCE in IPFS... Not to make it twice...
|
||||||
CHECKSWARM=$(grep -Rwl "$ZENSOURCE" ~/.zen/ipfs_swarm/.12D3KooW*/TAG/*/_tag.zensource | tail -n 1 | cut -f 6 -d '/')
|
CHECKSWARM=$(grep -Rwl "$ZENSOURCE" ~/.zen/ipfs_swarm/.12D3KooW*/TAG/*/_tag.zensource | tail -n 1 | cut -f 6 -d '/')
|
||||||
[[ $CHECKSWARM == "" ]] && CHECKSWARM=$(grep -Rwl "$ZENSOURCE" ~/.zen/ipfs/.$IPFSNODEID/TAG/*/_tag.zensource | tail -n 1 | cut -f 6 -d '/')
|
[[ $CHECKSWARM == "" ]] && CHECKSWARM=$(grep -Rwl "$ZENSOURCE" ~/.zen/ipfs/.$IPFSNODEID/TAG/*/_tag.zensource | tail -n 1 | cut -f 6 -d '/')
|
||||||
[[ -s ~/.zen/ipfs/.$IPFSNODEID/TAG/$ZENSOURCE/_tag.issuer ]] && ISSUERSWARM=$(cat ~/.zen/ipfs/.$IPFSNODEID/TAG/$ZENSOURCE/_tag.issuer)
|
[[ -s ~/.zen/ipfs/.$IPFSNODEID/TAG/$ZENSOURCE/_tag.issuer ]] && ISSUERSWARM=$(cat ~/.zen/ipfs/.$IPFSNODEID/TAG/$ZENSOURCE/_tag.issuer)
|
||||||
[[ "$CHECKSWARM" != "" && "$ISSUERSWARM" == "$ISSUER" ]] && ipfs key rm $keyname && rm -Rf ~/.zen/tag/${AAH} \
|
[[ "$CHECKSWARM" != "" && "$ISSUERSWARM" == "$ISSUER" ]] && ipfs key rm $keyname && rm -Rf ~/.zen/tag/${AAH} \
|
||||||
&& echo "$ZENSOURCE ALREADY COPIED IN IPFS SWARM. $CHECKSWARM CANCEL" && exit 1
|
&& echo "$ZENSOURCE ALREADY COPIED IN IPFS SWARM. $CHECKSWARM CANCEL" && exit 1
|
||||||
# NO DUPLICATE
|
# NO DUPLICATE
|
||||||
|
|
||||||
echo "ADDING TO IPFS.................$(date)"
|
echo "ADDING TO IPFS.................$(date)"
|
||||||
# ADD PASSENGER TO IPFS # COULD BE SUPER LONG !!!
|
# ADD PASSENGER TO IPFS # COULD BE SUPER LONG !!!
|
||||||
IPASSENGER=$(ipfs add -q "$PASSENGER" -w | tail -n 1)
|
IPASSENGER=$(ipfs add -q "$PASSENGER" -w | tail -n 1)
|
||||||
# TODO COMPARE DISK WRITING SPEED AND AVAILABLE SPACE TO CHOOSE BEST IN SWARM
|
# TODO COMPARE DISK WRITING SPEED AND AVAILABLE SPACE TO CHOOSE BEST IN SWARM
|
||||||
echo "$(date) ............... YES /ipfs/$IPASSENGER"
|
echo "$(date) ............... YES /ipfs/$IPASSENGER"
|
||||||
|
|
||||||
echo "$IPASSENGER" > ~/.zen/tag/${AAH}/_passenger.ipfs
|
|
||||||
# GET FILE NAME
|
|
||||||
PASSENGERNAME=$(basename -- "$PASSENGER")
|
|
||||||
echo "$PASSENGERNAME" > ~/.zen/tag/${AAH}/_passenger.filename
|
|
||||||
|
|
||||||
# G1SSB NODE ACCESS
|
echo "$IPASSENGER" > ~/.zen/tag/${AAH}/_passenger.ipfs
|
||||||
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i ~/.zen/tag/${AAH}/_passenger.ipfs -o ~/.zen/tag/${AAH}/_passenger.ipfs.crypt
|
# GET FILE NAME
|
||||||
# BB OWNER ACCESS
|
PASSENGERNAME=$(basename -- "$PASSENGER")
|
||||||
openssl aes-256-cbc -pbkdf2 -k "$BB" -salt -in ~/.zen/tag/${AAH}/_passenger.ipfs -out ~/.zen/tag/${AAH}/_passenger.ipfs.BB.aes
|
echo "$PASSENGERNAME" > ~/.zen/tag/${AAH}/_passenger.filename
|
||||||
|
|
||||||
# CLEAN CLEARTEXT IPFS link ? LATER MAYBE
|
# G1SSB NODE ACCESS
|
||||||
rm ~/.zen/tag/${AAH}/_passenger.ipfs
|
$MY_PATH/tools/natools.py encrypt -p $G1PUB -i ~/.zen/tag/${AAH}/_passenger.ipfs -o ~/.zen/tag/${AAH}/_passenger.ipfs.crypt
|
||||||
|
# BB OWNER ACCESS
|
||||||
|
openssl aes-256-cbc -pbkdf2 -k "$BB" -salt -in ~/.zen/tag/${AAH}/_passenger.ipfs -out ~/.zen/tag/${AAH}/_passenger.ipfs.BB.aes
|
||||||
|
|
||||||
# ZEN ECONOMY: ZEN READ payment + PARK rental
|
# CLEAN CLEARTEXT IPFS link ? LATER MAYBE
|
||||||
echo "$READ" > ~/.zen/tag/${AAH}/_passenger.read
|
rm ~/.zen/tag/${AAH}/_passenger.ipfs
|
||||||
echo "$PARK" > ~/.zen/tag/${AAH}/_passenger.park
|
|
||||||
|
# ZEN ECONOMY: ZEN READ payment + PARK rental
|
||||||
|
echo "$READ" > ~/.zen/tag/${AAH}/_passenger.read
|
||||||
|
echo "$PARK" > ~/.zen/tag/${AAH}/_passenger.park
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
_passenger.filename : $PASSENGERNAME
|
_passenger.filename : $PASSENGERNAME
|
||||||
_passenger.ipfs : $IPASSENGER
|
_passenger.ipfs : $IPASSENGER
|
||||||
http://127.0.0.1:8080/ipfs/$IPASSENGER/$PASSENGERNAME
|
http://127.0.0.1:8080/ipfs/$IPASSENGER/$PASSENGERNAME
|
||||||
|
|
||||||
# #### ## ##### ###### #####
|
# #### ## ##### ###### #####
|
||||||
# # # # # # # # # #
|
# # # # # # # # # #
|
||||||
# # # # # # # ##### # #
|
# # # # # # # ##### # #
|
||||||
# # # ###### # # # # #
|
# # # ###### # # # # #
|
||||||
# # # # # # # # # #
|
# # # # # # # # # #
|
||||||
###### #### # # ##### ###### #####
|
###### #### # # ##### ###### #####
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
# DECODE AND READ _passenger.ipfs with BB Passphrase
|
# DECODE AND READ _passenger.ipfs with BB Passphrase
|
||||||
|
@ -273,12 +273,12 @@ echo
|
||||||
#You must execute that code.
|
#You must execute that code.
|
||||||
# ..... TODO ......
|
# ..... TODO ......
|
||||||
# It is bash or javascript or python
|
# It is bash or javascript or python
|
||||||
# or any language code with connection with g1, ipfs or ssb
|
# or any language code with connection with g1, ipfs or ssb
|
||||||
|
|
||||||
# or Send $READ Zen to $G1PUB with $PASSENGERNAME in comment
|
# or Send $READ Zen to $G1PUB with $PASSENGERNAME in comment
|
||||||
# .... TODO ....
|
# .... TODO ....
|
||||||
|
|
||||||
# Once contract is validated
|
# Once contract is validated
|
||||||
# NodeN will be able to decrypt _passenger.ipfs.NodeN.crypt'
|
# NodeN will be able to decrypt _passenger.ipfs.NodeN.crypt'
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -286,13 +286,13 @@ exit 0
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
fi
|
fi
|
||||||
# END PASSENGER FILE
|
# END PASSENGER FILE
|
||||||
####################
|
####################
|
||||||
|
|
||||||
###########################################################
|
###########################################################
|
||||||
# Copy TAG into IPFS + ipfs name publish -k ${AA}.key
|
# Copy TAG into IPFS + ipfs name publish -k ${AA}.key
|
||||||
###########################################################
|
###########################################################
|
||||||
# ZenTAG CHAIN
|
# ZenTAG CHAIN
|
||||||
echo "0" > ~/.zen/tag/${AAH}/_chain.n # Tag modification number (0 first)
|
echo "0" > ~/.zen/tag/${AAH}/_chain.n # Tag modification number (0 first)
|
||||||
|
|
||||||
NANODATE=$(date -u +%s%N)
|
NANODATE=$(date -u +%s%N)
|
||||||
|
@ -307,7 +307,7 @@ I=$(ipfs add -qr ~/.zen/tag/${AAH} | tail -n 1)
|
||||||
echo "${I}" > ~/.zen/tag/${AAH}/_chain
|
echo "${I}" > ~/.zen/tag/${AAH}/_chain
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
_|_ _.o._
|
_|_ _.o._
|
||||||
(_| |(_||| | : $NANODATE
|
(_| |(_||| | : $NANODATE
|
||||||
|
|
||||||
J0=${J0}
|
J0=${J0}
|
||||||
|
@ -329,37 +329,37 @@ echo "${ISSUER}" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.issuer
|
||||||
echo "${J}" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.ipns
|
echo "${J}" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.ipns
|
||||||
|
|
||||||
if [[ "${PASSENGERNAME}" != "" ]]; then
|
if [[ "${PASSENGERNAME}" != "" ]]; then
|
||||||
echo "${PASSENGERNAME}" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.filename
|
echo "${PASSENGERNAME}" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.filename
|
||||||
# COPY METADATA!! TODO : Please Extend filesource FOR new metadata types. torrent ?
|
# COPY METADATA!! TODO : Please Extend filesource FOR new metadata types. torrent ?
|
||||||
extractor=$(cat "$METADATA" | jq -r '.extractor')
|
extractor=$(cat "$METADATA" | jq -r '.extractor')
|
||||||
|
|
||||||
youtubeid=$(cat "$METADATA" | jq -r '.id')
|
youtubeid=$(cat "$METADATA" | jq -r '.id')
|
||||||
fulltitle=$(cat "$METADATA" | jq -r '.fulltitle')
|
fulltitle=$(cat "$METADATA" | jq -r '.fulltitle')
|
||||||
echo "$fulltitle" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.fulltitle
|
echo "$fulltitle" > ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.fulltitle
|
||||||
# description=$(cat "$METADATA" | jq -r '.description')
|
# description=$(cat "$METADATA" | jq -r '.description')
|
||||||
artist=$(cat "$METADATA" | jq -r '.artist')
|
artist=$(cat "$METADATA" | jq -r '.artist')
|
||||||
album=$(cat "$METADATA" | jq -r '.album')
|
album=$(cat "$METADATA" | jq -r '.album')
|
||||||
duration=$(cat "$METADATA" | jq -r '.duration')
|
duration=$(cat "$METADATA" | jq -r '.duration')
|
||||||
upload_date=$(cat "$METADATA" | jq -r '.upload_date')
|
upload_date=$(cat "$METADATA" | jq -r '.upload_date')
|
||||||
uploader_id=$(cat "$METADATA" | jq -r '.uploader_id')
|
uploader_id=$(cat "$METADATA" | jq -r '.uploader_id')
|
||||||
|
|
||||||
extractor=$(cat "$METADATA" | jq -r '.extractor')
|
extractor=$(cat "$METADATA" | jq -r '.extractor')
|
||||||
[[ ! -f ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.metadata.${extractor}.json ]] \
|
[[ ! -f ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.metadata.${extractor}.json ]] \
|
||||||
&& cp -f "${METADATA}" /tmp/
|
&& cp -f "${METADATA}" /tmp/
|
||||||
mv /tmp/${youtubeid}.info.json ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.metadata.${extractor}.json
|
mv /tmp/${youtubeid}.info.json ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/_tag.passenger.metadata.${extractor}.json
|
||||||
fi
|
fi
|
||||||
ls ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/
|
ls ~/.zen/ipfs/.$IPFSNODEID/TAG/${ZENSOURCE}/
|
||||||
|
|
||||||
IWALLETS=$(ipfs add -rHq ~/.zen/ipfs | tail -n 1)
|
IWALLETS=$(ipfs add -rHq $(readlink ~/.zen/ipfs) | tail -n 1)
|
||||||
NODEIPNS=$(ipfs name publish --quieter /ipfs/$IWALLETS)
|
NODEIPNS=$(ipfs name publish --quieter /ipfs/$IWALLETS)
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
_ ____
|
_ ____
|
||||||
(_)___ / __/____
|
(_)___ / __/____
|
||||||
/ / __ \/ /_/ ___/
|
/ / __ \/ /_/ ___/
|
||||||
/ / /_/ / __(__ )
|
/ / /_/ / __(__ )
|
||||||
/_/ .___/_/ /____/
|
/_/ .___/_/ /____/
|
||||||
/_/
|
/_/
|
||||||
ipfs ls /ipfs/${I}
|
ipfs ls /ipfs/${I}
|
||||||
|
|
||||||
ZenTAG : ipfs ls /ipns/${J}
|
ZenTAG : ipfs ls /ipns/${J}
|
||||||
|
@ -371,8 +371,8 @@ NODE index : ipfs ls /ipns/$IPFSNODEID/.$IPFSNODEID/TAG/${ZENSOURCE}
|
||||||
### PRINTER IS HOOKED TO G1SSB NODE = G1DAB
|
### PRINTER IS HOOKED TO G1SSB NODE = G1DAB
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "
|
echo "
|
||||||
_ _ _ _ _ _
|
_ _ _ _ _ _
|
||||||
/ \|_) / / \| \|_
|
/ \|_) / / \| \|_
|
||||||
\_X| \ \_\_/|_/|_ .................................
|
\_X| \ \_\_/|_/|_ .................................
|
||||||
"
|
"
|
||||||
# READ QRCODE
|
# READ QRCODE
|
||||||
|
@ -381,8 +381,8 @@ qrencode -s 5 -o ~/.zen/tag/${AAH}/_QRCODE.read.png "RJ:${AA}#${J}"
|
||||||
qrencode -s 5 -o ~/.zen/tag/${AAH}/_QRCODE.write.png "BJ:${BB}#${J}"
|
qrencode -s 5 -o ~/.zen/tag/${AAH}/_QRCODE.write.png "BJ:${BB}#${J}"
|
||||||
## TODO PROD REMOVE WRITE FILE
|
## TODO PROD REMOVE WRITE FILE
|
||||||
|
|
||||||
echo "QRCodes CREATED !!
|
echo "QRCodes CREATED !!
|
||||||
See it :
|
See it :
|
||||||
xviewer ~/.zen/tag/${AAH}/_QRCODE.read.png &
|
xviewer ~/.zen/tag/${AAH}/_QRCODE.read.png &
|
||||||
xviewer ~/.zen/tag/${AAH}/_QRCODE.write.png &
|
xviewer ~/.zen/tag/${AAH}/_QRCODE.write.png &
|
||||||
|
|
||||||
|
@ -397,7 +397,7 @@ ${AA}
|
||||||
# SBOT PUBLISH
|
# SBOT PUBLISH
|
||||||
########################################################################
|
########################################################################
|
||||||
if [[ "${PASSENGERNAME}" != "" ]]; then
|
if [[ "${PASSENGERNAME}" != "" ]]; then
|
||||||
echo "$ISSUER"
|
echo "$ISSUER"
|
||||||
msg="$(sbotc get '{"id":"'"$ISSUER"'"}')"
|
msg="$(sbotc get '{"id":"'"$ISSUER"'"}')"
|
||||||
# echo "$msg" | jq #DEBUG
|
# echo "$msg" | jq #DEBUG
|
||||||
[[ $msg == "" ]] && echo "ERROR No SSB message for PASSENGER (timestamp: $tstamp)" && exit 1
|
[[ $msg == "" ]] && echo "ERROR No SSB message for PASSENGER (timestamp: $tstamp)" && exit 1
|
||||||
|
@ -405,13 +405,13 @@ if [[ "${PASSENGERNAME}" != "" ]]; then
|
||||||
[[ $msg_root == "null" ]] && msg_root=$ISSUER
|
[[ $msg_root == "null" ]] && msg_root=$ISSUER
|
||||||
msg_branch=$(printf %s "$msg" | jq -r .value.content.branch)
|
msg_branch=$(printf %s "$msg" | jq -r .value.content.branch)
|
||||||
[[ $msg_branch == "null" ]] && msg_branch=$ISSUER
|
[[ $msg_branch == "null" ]] && msg_branch=$ISSUER
|
||||||
|
|
||||||
# ATTACH ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg
|
# ATTACH ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg
|
||||||
name="ssb_thumb.jpg"
|
name="ssb_thumb.jpg"
|
||||||
id="$(sbotc blobs.add < ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
id="$(sbotc blobs.add < ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
||||||
type="$(file -b --mime-type ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
type="$(file -b --mime-type ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
||||||
size="$(wc -c < ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
size="$(wc -c < ~/.zen/miam/$ZENSOURCE/ssb_thumb.jpg)"
|
||||||
|
|
||||||
export MESSAGE=$(cat << EOF
|
export MESSAGE=$(cat << EOF
|
||||||
[![ssb_thumb.jpg](${id})](http://127.0.0.1:8080/ipfs/$IPASSENGER/$PASSENGERNAME)
|
[![ssb_thumb.jpg](${id})](http://127.0.0.1:8080/ipfs/$IPASSENGER/$PASSENGERNAME)
|
||||||
|
|
||||||
|
@ -432,10 +432,10 @@ if [[ "${PASSENGERNAME}" != "" ]]; then
|
||||||
#astroport
|
#astroport
|
||||||
EOF
|
EOF
|
||||||
)
|
)
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
__ _ ____
|
__ _ ____
|
||||||
(_ |_)/ \|
|
(_ |_)/ \|
|
||||||
__)|_)\_/| POST
|
__)|_)\_/| POST
|
||||||
|
|
||||||
root: $msg_root
|
root: $msg_root
|
||||||
|
|
Loading…
Reference in New Issue