IPNS adding ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB
This commit is contained in:
parent
81d17708ad
commit
feffba9d4f
|
@ -1,13 +1,18 @@
|
|||
#!/bin/bash
|
||||
########################################################################
|
||||
# Author: Fred (support@qo-op.com)
|
||||
# Version: 2020.12.15
|
||||
# Version: 0.3
|
||||
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
||||
########################################################################
|
||||
# COPY ~/astroport/* files to IPFS
|
||||
# Publish INDEX ~/.zen/ipfs/.*/${PREFIX}ASTRXBIAN
|
||||
######## #### ### ## #
|
||||
|
||||
MY_PATH="`dirname \"$0\"`" # relative
|
||||
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||
ME="${0##*/}"
|
||||
YOU=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1);
|
||||
IPFSNODEID=$(ipfs id -f='<id>\n')
|
||||
G1PUB=$(cat ~/.zen/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
||||
# ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
# Astropot/Kodi/Vstream source reads ${PREFIX}ASTRXBIAN from http://127.0.0.1:8181/.$IPFNODEID/
|
||||
# Index File Format (could be enhanced) is using Kodi TMDB enhancement
|
||||
|
@ -31,12 +36,12 @@ TITLE="${file%.*}"
|
|||
|
||||
# GET XZUID
|
||||
[[ -f ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title ]] && XZUID=$(cat ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_g1.gchange_title) || XZUID=$(hostname)
|
||||
rm -f ~/.zen/ipfs/.${IPFSNODEID}/_xbian.zuid # CLEANING OLD FILE STRUCTURE (TO BE REMOVED AFTER SWARM CODE UPGRADE)
|
||||
rm -f ~/.zen/ipfs/xbian/_${XZUID}
|
||||
|
||||
TYPE=$(echo "$path" | cut -d '/' -f 5 ) # ex: /home/$YOU/astroport/... films, youtube, mp3
|
||||
type=$(echo "$TYPE" | awk '{ print tolowper($0) }')
|
||||
PREFIX=$(echo "$TYPE" | head -c 1 | awk '{ print toupper($0) }' ) # ex: F, Y, M
|
||||
TMDB=$(echo "$path" | cut -d '/' -f 6 )
|
||||
[ "$TMDB" -ne "$TMDB" ] && echo "ERROR: $path missing TMDB code. CHECK it https://www.themoviedb.org/ " && exit 1 # $TMDB NOT A NUMBER
|
||||
RES=$(echo "$path" | cut -d '/' -f 7 )
|
||||
|
||||
# File is placed in ROOT ~/astroport ?
|
||||
|
@ -57,7 +62,6 @@ mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/
|
|||
URLENCODE_FILE_NAME=$(echo ${file} | jq -Rr @uri)
|
||||
|
||||
# Init ${PREFIX}ASTRXBIAN header
|
||||
mv ~/.zen/ipfs/xbian/$PREFIX$XZUID ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN # MOVE OLD FS
|
||||
[[ ! -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
|
||||
|
||||
## CHECK IF $IPFSREPFILEID is NEW, or an already existing in SWARMs?
|
||||
|
@ -71,7 +75,8 @@ isLINKinMYINDEX=$(grep "$IPFSREPFILEID" ~/.zen/ipfs/.${IPFSNODEID}/astroport/kod
|
|||
if [[ ! $isFILEinINDEX && ! $isLINKinINDEX ]]; then
|
||||
mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/PIN/${IPFSREPFILEID}/$G1PUB/
|
||||
# SIMILAR with "ipfs ls /ipns/${IPFSNODEID}/.${IPFSNODEID}/PIN/ (...)"
|
||||
echo "film;$TMDB;$YEAR;$TITLE;$SAISON;;${XZUID};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
# TODO: switch case $PREFIX
|
||||
echo "$type;$TMDB;$YEAR;$TITLE;$SAISON;;${XZUID};$RES;/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME" >> ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN
|
||||
else
|
||||
if [[ $isFILEinMYINDEX ]]; then
|
||||
echo "$file already in index" ## File was updated => Change OLDLINK
|
||||
|
@ -81,17 +86,34 @@ else
|
|||
[[ $isLINKinINDEX ]] && echo "$IPFSREPFILEID already in index. DO NOTHING"
|
||||
fi
|
||||
|
||||
echo "CREATE ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN ($TYPE) from ~/.zen/ipfs*/xbian/${PREFIX}*"
|
||||
echo "($TYPE) => CREATE ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN"
|
||||
echo "-----------------------------------------------------------------"
|
||||
cat ~/.zen/ipfs_swarm/.*/astroport/kodi/vstream/${PREFIX}* | sort | uniq > ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN
|
||||
cat ~/.zen/ipfs/.${IPFSNODEID}/astroport/kodi/vstream/${PREFIX}ASTRXBIAN | cat ~/.zen/ipfs_swarm/.*/astroport/kodi/vstream/${PREFIX}* | sort | uniq > ~/.zen/ipfs/.${IPFSNODEID}/${PREFIX}ASTRXBIAN
|
||||
|
||||
# CLEAN all ipns keys except self
|
||||
# for key in $(ipfs key list | grep -Ev 'self'); do ipfs key rm $key; done
|
||||
|
||||
## CREATE NEW ipns KEY
|
||||
[[ ! -d ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB ]] && mkdir -p ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/ && KEY=$(ipfs key gen "$type_$TMDB") && KEYFILE=$(ls -t ~/.ipfs/keystore/ | head -n 1)
|
||||
## INIT ipns
|
||||
if [[ $KEY ]]; then
|
||||
echo "$KEYFILE" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/.ipns.key.keystore_filename
|
||||
echo "$G1PUB" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/.g1_creator
|
||||
touch ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/.zen
|
||||
echo "<meta http-equiv=\"Refresh\" content=\"0;URL=http://localhost:8181/ipns/$KEY\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/ipns.html
|
||||
$MY_PATH/jaklis/lib/natools.py encrypt -k $G1PUB -i ~/.ipfs/keystore/$KEYFILE -o ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/.ipns.key.encrypt.natools
|
||||
fi
|
||||
|
||||
echo "<meta http-equiv=\"Refresh\" content=\"0;URL=http://localhost:8181/ipfs/$IPFSREPFILEID/$URLENCODE_FILE_NAME\">" > ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB/index.html
|
||||
NEWIPFS=$(ipfs add -rHq ~/.zen/ipfs/.${IPFSNODEID}/KEY/$type_$TMDB | tail -n 1 )
|
||||
ipfs name publish --key="$type_$TMDB" $NEWIPFS
|
||||
|
||||
########################################################################
|
||||
echo "PUBLISH ~/.zen/ipfs to IPNS self for SWARM SHARING"
|
||||
echo "-----------------------------------------------------------------"
|
||||
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/.timestamp
|
||||
MIPFS=$(ipfs add -rHq ~/.zen/ipfs | tail -n 1)
|
||||
echo $MIPFS > ~/.zen/ipfs/.${IPFSNODEID}/.chain ## THIS SIMPLE LINE IS BLOCKCHAIN POWERING ANY DATA PUBLISHED TO IPFS !!!
|
||||
NODEIPNS=$(ipfs name publish --quieter /ipfs/$MIPFS)
|
||||
# REFRESH IPNS SELF PUBLISH
|
||||
########################################################################
|
||||
~/.zen/astrXbian/zen/ipns_self_publish.sh
|
||||
########################################################################
|
||||
|
||||
echo "NEW $TYPE ($file) ADDED."
|
||||
echo "INDEX UPDATED : http://127.0.0.1:8181/ipns/${IPFSNODEID}/.${IPFSNODEID}/${PREFIX}ASTRXBIAN"
|
||||
echo "VIDEO IPNS LINK : http://localhost:8181/ipns/$KEY"
|
||||
|
|
Loading…
Reference in New Issue