From c9eb4eb2e421b8663849353d8f256d298d459dd0 Mon Sep 17 00:00:00 2001 From: fred Date: Mon, 3 Jul 2023 16:35:27 +0200 Subject: [PATCH] G1Kodi is publishing local Kodi movies as PLAYER G1Voeu RSS feed any other Kodi could add as new source. ex : https://ipfs.copylaradio.com/ipfs/QmSJYf4uTj3NmqovSFZpBZuUhSS8j9FXKKnAjUMuVE896k --- ASTROBOT/G1Kodi.sh | 118 +++++++++++++++++++++++++++++++++++++++++++ ASTROBOT/G1PalPay.sh | 4 +- install.sh | 2 +- 3 files changed, 121 insertions(+), 3 deletions(-) create mode 100755 ASTROBOT/G1Kodi.sh diff --git a/ASTROBOT/G1Kodi.sh b/ASTROBOT/G1Kodi.sh new file mode 100755 index 00000000..0cbca516 --- /dev/null +++ b/ASTROBOT/G1Kodi.sh @@ -0,0 +1,118 @@ +#!/bin/bash +######################################################################## +# Version: 0.5 +# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/) +######################################################################## +# PAD COCODING : https://pad.p2p.legal/s/G1Kodi +######################################################################## +MY_PATH="`dirname \"$0\"`" # relative +MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized +ME="${0##*/}" + +. "${MY_PATH}/../tools/my.sh" + +echo "(✜‿‿✜) G1Kodi : Get Kodi database from ~/.kodi/userdata/Database/MyVideos116.db +export movie to RSS (ex : http://ipfs.localhost:8080/ipfs/QmSJYf4uTj3NmqovSFZpBZuUhSS8j9FXKKnAjUMuVE896k)" +echo "$ME RUNNING" + +######################################################################## +# KODI SERVICE +######################################################################## +######################################################################## +INDEX="$1" +[[ ! ${INDEX} ]] && INDEX="$HOME/.zen/game/players/.current/ipfs/moa/index.html" +[[ ! -s ${INDEX} ]] && echo "ERROR - Please provide path to source TW index.html" && exit 1 +[[ ! -s ${INDEX} ]] && echo "ERROR - Fichier TW absent. ${INDEX}" && exit 1 + +PLAYER="$2" +[[ ! ${PLAYER} ]] && PLAYER="$(cat ~/.zen/game/players/.current/.player 2>/dev/null)" +[[ ! ${PLAYER} ]] && echo "ERROR - Please provide PLAYER" && exit 1 + +ASTRONAUTENS=$(ipfs key list -l | grep -w ${PLAYER} | cut -d ' ' -f1) +[[ ! ${ASTRONAUTENS} ]] && echo "ERROR - Clef IPNS ${PLAYER} introuvable!" && exit 1 + +G1PUB=$(cat ~/.zen/game/players/${PLAYER}/.g1pub) +[[ ! $G1PUB ]] && echo "ERROR - G1PUB ${PLAYER} VIDE" && exit 1 + +# Extract tag=tube from TW +MOATS="$3" +[[ ! ${MOATS} ]] && MOATS=$(date -u +"%Y%m%d%H%M%S%4N") + +################################################################### +## CREATE APP NODE PLAYER PUBLICATION DIRECTORY +################################################################### +mkdir -p $HOME/.zen/tmp/${IPFSNODEID}/G1Kodi/${PLAYER}/ +mkdir -p $HOME/.zen/game/players/${PLAYER}/G1Kodi/ +mkdir -p $HOME/.zen/tmp/${MOATS} + +echo "EXPORT Kodi Wish for ${PLAYER}" +m -f ~/.zen/game/players/${PLAYER}/G1Kodi/Kodi.json +tiddlywiki --load ${INDEX} \ + --output ~/.zen/game/players/${PLAYER}/G1Kodi \ + --render '.' 'Kodi.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'Kodi' + +[[ ! -s ~/.zen/game/players/${PLAYER}/G1Kodi/Kodi.json ]] && echo "AUCUN G1VOEU KODI - EXIT -" && exit 0 + +WISH=$(cat ~/.zen/game/players/${PLAYER}/G1Kodi/Kodi.json | jq -r '.[].wish') +WISHNS=$(cat ~/.zen/game/players/${PLAYER}/G1Kodi/Kodi.json | jq -r '.[].wishns') + +echo ${myIPFS}${WISHNS} +echo "=========== ( ◕‿◕) (◕‿◕ ) ==============" + +## EXTRACT MOVIE FILES LIST +sqlite3 -csv ~/.kodi/userdata/Database/MyVideos116.db 'select c00, c01, c22 from movie' > ~/.zen/tmp/${PLAYER}.movie.csv +[[ ! -s ~/.zen/tmp/${PLAYER}.movie.csv ]] && echo "EMPTY KODI MOVIE DATABASE - EXIT -" && exit 0 +################################# + +## PREPARE RSS XML +echo ' + + + Astroport Kodi + Astroport Kodi Movies RSS feed + http://astroport.copylaradio.com + 2020 Astroport.com All rights reserved + Mon, 6 Sep 2020 00:01:00 +0000 + Sun, 6 Sep 2020 16:20:00 +0000 + 1800' > $HOME/.zen/tmp/${MOATS}/movie.rss + +while read LINE +do + TITLE=$(echo $LINE | csvcut -c 1) + DESC=$(echo $LINE | csvcut -c 2) + SOURCE=$(echo $LINE | csvcut -c 3) + + echo "$TITLE" + + ## ADD MOVIE TO IPFS + #~ + #~ Delicatessen + #~ La vie des étranges habitants d'un immeuble de banlieue qui se dresse dans un immense terrain vague et qui tous vont se fournir chez le boucher-charcutier, à l'enseigne « Delicatessen ». + #~ http://ipfs.localhost:8080/ipfs/QmfVuhDo4kEk5eh5EULfZGxiWqrrCcHBehojgPF6kiq8r3/Delicatessen.mp4 + #~ Sun, 6 Sep 2022 16:20:00 +0000 + #~ + + +echo ' + + '$TITLE' + '$DESC' + '$SOURCE' + Sun, 1 Sep 2020 20:12:00 +0000 + +' >> $HOME/.zen/tmp/${MOATS}/movie.rss + +done < ~/.zen/tmp/${PLAYER}.movie.csv + +echo ' +' >> $HOME/.zen/tmp/${MOATS}/movie.rss + +IPRSS=$(ipfs add -q $HOME/.zen/tmp/${MOATS}/movie.rss) + +ipfs name publish -k $WISH /ipfs/$IPRSS + +echo "=========== ( ◕‿◕) (◕‿◕ ) ==============" + +rm -Rf $HOME/.zen/tmp/${MOATS} + +exit 0 diff --git a/ASTROBOT/G1PalPay.sh b/ASTROBOT/G1PalPay.sh index f9f1d8c7..72063ba2 100755 --- a/ASTROBOT/G1PalPay.sh +++ b/ASTROBOT/G1PalPay.sh @@ -11,8 +11,8 @@ ME="${0##*/}" . "${MY_PATH}/../tools/my.sh" - CESIUM="https://g1.data.le-sou.org" - GCHANGE="https://data.gchange.fr" + CESIUM=${myCESIUM} + GCHANGE=${myGCHANGE} echo "(✜‿‿✜) G1PalPay : Receiving & Relaying payments to emails found in comment" echo "$ME RUNNING" diff --git a/install.sh b/install.sh index 088b2022..3b0b37ca 100755 --- a/install.sh +++ b/install.sh @@ -44,7 +44,7 @@ echo "#############################################" echo "######### INSTALL BASE & PYTHON3 PACKAGE ####" echo "#############################################" -for i in git make cmake fail2ban npm netcat-traditional ncdu chromium inotify-tools curl net-tools libsodium* libcurl4-openssl-dev python3-pip python3-setuptools python3-wheel python3-dotenv python3-gpg python3-jwcrypto python3-brotli mpack; do +for i in git make cmake fail2ban npm netcat-traditional ncdu chromium csvkit inotify-tools curl net-tools libsodium* libcurl4-openssl-dev python3-pip python3-setuptools python3-wheel python3-dotenv python3-gpg python3-jwcrypto python3-brotli mpack; do if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then echo ">>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Installation $i <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<" sudo apt install -y $i