diff options
author | kaotisk <kaotisk@arching-kaos.org> | 2023-09-01 09:42:41 +0300 |
---|---|---|
committer | kaotisk <kaotisk@arching-kaos.org> | 2023-09-01 09:42:41 +0300 |
commit | 5390073b9aab92d6dbd601593a116e05fd55ccdb (patch) | |
tree | 9099fefdac694c65172ebce529a30597885967cd /bin/ak-news | |
parent | bfc8039a974bec3dd382ec8c64cc93dfd002a498 (diff) | |
download | arching-kaos-tools-5390073b9aab92d6dbd601593a116e05fd55ccdb.tar.gz arching-kaos-tools-5390073b9aab92d6dbd601593a116e05fd55ccdb.tar.bz2 arching-kaos-tools-5390073b9aab92d6dbd601593a116e05fd55ccdb.zip |
[new] ak-news read command
Diffstat (limited to 'bin/ak-news')
-rwxr-xr-x | bin/ak-news | 240 |
1 files changed, 132 insertions, 108 deletions
diff --git a/bin/ak-news b/bin/ak-news index 5103371..c020d1a 100755 --- a/bin/ak-news +++ b/bin/ak-news @@ -9,90 +9,90 @@ logit(){ } if [ ! -d $ZNEWSDIR ]; then - mkdir $ZNEWSDIR + mkdir $ZNEWSDIR if [ "$?" == 0 ]; then logit "[INFO]" "$ZNEWSDIR created" else - logit "[ERROR]" "$ZNEWSDIR couldn't be created" + logit "[ERROR]" "$ZNEWSDIR couldn't be created" exit 1 fi else - logit "[INFO]" "$ZNEWSDIR found" + logit "[INFO]" "$ZNEWSDIR found" fi cd $ZNEWSDIR create(){ - TEMP="$(ak-tempassin)" + TEMP="$(ak-tempassin)" cd $TEMP cd - curpath="$(pwd)" - export NEWS_FILE="$(date +%Y%m%d_%H%M%S)" - vi $NEWS_FILE - echo "Renaming..." - TITLE="$(head -n 1 $NEWS_FILE)" - TO_FILE=$NEWS_FILE-$(echo $TITLE | tr '[:upper:]' '[:lower:]' | sed -e 's/ /\_/g' ) - IPFS_FILE=$(ak-ipfs-add $NEWS_FILE) - mv $NEWS_FILE $ZNEWSDIR/$TO_FILE - sed -e 's,Qm.*,'"$IPFS_FILE"',g' $ZNEWSDIR/README - add $TO_FILE - echo "Adding to git repo..." - cd $ZNEWSDIR - # rm -rf $TEMP + curpath="$(pwd)" + export NEWS_FILE="$(date +%Y%m%d_%H%M%S)" + vi $NEWS_FILE + echo "Renaming..." + TITLE="$(head -n 1 $NEWS_FILE)" + TO_FILE=$NEWS_FILE-$(echo $TITLE | tr '[:upper:]' '[:lower:]' | sed -e 's/ /\_/g' ) + IPFS_FILE=$(ak-ipfs-add $NEWS_FILE) + mv $NEWS_FILE $ZNEWSDIR/$TO_FILE + sed -e 's,Qm.*,'"$IPFS_FILE"',g' $ZNEWSDIR/README + add $TO_FILE + echo "Adding to git repo..." + cd $ZNEWSDIR + # rm -rf $TEMP } index(){ - FILES="$(ls -1 $ZNEWSDIR)" - i=0 - for FILE in $FILES - do - DATE=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') - TITLE=$(head -n 1 $ZNEWSDIR/$FILE) + FILES="$(ls -1 $ZNEWSDIR)" + i=0 + for FILE in $FILES + do + DATE=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') + TITLE=$(head -n 1 $ZNEWSDIR/$FILE) IPFS_HASH=$(ak-ipfs-addn $ZNEWSDIR/$FILE) - echo $i \| $IPFS_HASH \| $DATE \| $TITLE - let i+=1 - done + echo $i \| $IPFS_HASH \| $DATE \| $TITLE + let i+=1 + done } title(){ echo $PROGRAM } import(){ - echo "#TODO" - if [ ! -z $1 ] - then - if [ ! -d "$1" ] - then - echo $1 - echo "Folder does not exist" - exit 4 - else - echo "Folder $1 exists" - fl="$(ls -1 $1)" - for f in $fl - do - echo $1 $f - add2 "$1/$f" - done - fi - else - echo "No value" - exit 6 - fi - exit 224 + echo "#TODO" + if [ ! -z $1 ] + then + if [ ! -d "$1" ] + then + echo $1 + echo "Folder does not exist" + exit 4 + else + echo "Folder $1 exists" + fl="$(ls -1 $1)" + for f in $fl + do + echo $1 $f + add2 "$1/$f" + done + fi + else + echo "No value" + exit 6 + fi + exit 224 } add2(){ TEMP="$(ak-tempassin)" cd $TEMP - if [ -f $1 ]; then - FILE="$1" - cp $FILE $ZNEWSDIR - echo "Adding news from " $FILE - DATETIME=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') - TITLE=$(head -n 1 $FILE) - FILE_IPFS_HASH=$(ak-ipfs-add $FILE) - FILE_SIGN_FILE=$FILE".asc" - gpg2 --homedir $AK_GPGHOME --detach-sign --sign-with $AK_FINGERPRINT --armor --output $FILE_SIGN_FILE $FILE - FILE_SIGNATURE=$(ak-ipfs-add $FILE_SIGN_FILE) - cat > data <<EOF + if [ -f $1 ]; then + FILE="$1" + cp $FILE $ZNEWSDIR + echo "Adding news from " $FILE + DATETIME=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') + TITLE=$(head -n 1 $FILE) + FILE_IPFS_HASH=$(ak-ipfs-add $FILE) + FILE_SIGN_FILE=$FILE".asc" + gpg2 --homedir $AK_GPGHOME --detach-sign --sign-with $AK_FINGERPRINT --armor --output $FILE_SIGN_FILE $FILE + FILE_SIGNATURE=$(ak-ipfs-add $FILE_SIGN_FILE) + cat > data <<EOF { "datetime":"$DATETIME", "title":"$TITLE", @@ -101,32 +101,32 @@ add2(){ "detach":"$FILE_SIGNATURE" } EOF - else - echo "File $FILE doesn't exist"; - exit 2 - fi + else + echo "File $FILE doesn't exist"; + exit 2 + fi ak-pack_z_block "news/add" $(pwd)/data - if [ $? == 0 ] - then - echo "News added successfully" - else - echo "error??" - exit 1 - fi + if [ $? == 0 ] + then + echo "News added successfully" + else + echo "error??" + exit 1 + fi } add(){ TEMP="$(ak-tempassin)" cd $TEMP - if [ -f $ZNEWSDIR/$1 ]; then - FILE="$1" - echo "Adding news from " $FILE - DATETIME=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') - TITLE=$(head -n 1 $ZNEWSDIR/$FILE) - FILE_IPFS_HASH=$(ak-ipfs-add $ZNEWSDIR/$FILE) - FILE_SIGN_FILE=$FILE".asc" - gpg2 --homedir $AK_GPGHOME --detach-sign --sign-with $AK_FINGERPRINT --armor --output $FILE_SIGN_FILE $ZNEWSDIR/$FILE - FILE_SIGNATURE=$(ak-ipfs-add $FILE_SIGN_FILE) - cat > data <<EOF + if [ -f $ZNEWSDIR/$1 ]; then + FILE="$1" + echo "Adding news from " $FILE + DATETIME=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') + TITLE=$(head -n 1 $ZNEWSDIR/$FILE) + FILE_IPFS_HASH=$(ak-ipfs-add $ZNEWSDIR/$FILE) + FILE_SIGN_FILE=$FILE".asc" + gpg2 --homedir $AK_GPGHOME --detach-sign --sign-with $AK_FINGERPRINT --armor --output $FILE_SIGN_FILE $ZNEWSDIR/$FILE + FILE_SIGNATURE=$(ak-ipfs-add $FILE_SIGN_FILE) + cat > data <<EOF { "datetime":"$DATETIME", "title":"$TITLE", @@ -135,39 +135,63 @@ add(){ "detach":"$FILE_SIGNATURE" } EOF - else - echo "File $FILE doesn't exist"; - exit 2 - fi + else + echo "File $FILE doesn't exist"; + exit 2 + fi ak-pack_z_block "news/add" $(pwd)/data - if [ $? == 0 ] - then - echo "News added successfully" - else - echo "error??" - exit 1 - fi + if [ $? == 0 ] + then + echo "News added successfully" + else + echo "error??" + exit 1 + fi } usage(){ - echo "#TODO" - echo "All you need to know is that there are two options available:" - echo "help Prints this help message" - echo "local-index Prints an indexed table of your news files" - echo "import <file> #TODO" - echo "add <file> Creates a data file from the news file you point to" - echo "create Vim is going to pop up, you will write and save your" - echo " newsletter and it's going to be saved" - exit 0 + echo "#TODO" + echo "All you need to know is that there are two options available:" + echo "help Prints this help message" + echo "local-index Prints an indexed table of your news files" + echo "import <file> #TODO" + echo "add <file> Creates a data file from the news file you point to" + echo "create Vim is going to pop up, you will write and save your" + echo " newsletter and it's going to be saved" + exit 0 +} +akNewsRead(){ + ak-enter -l 1 $1 > temp + if [ $? -ne 0 ] + then + echo error + exit 22 + fi + module="`cat temp | jq -r '.[].module'`" + action="`cat temp | jq -r '.[].action'`" + data="`cat temp | jq -r '.[].data'`" + linkToText="`cat temp | jq -r ".[].$data.ipfs"`" + + if [ "$module" == "news" ] && [ "$action" == "add" ] + then + + ak-ipfs-cat $linkToText + else + ak-logthis "[ERROR]" "Not a news block." + echo "[ERROR] Not a news block." + exit 1 + fi + rm temp } title if [ ! -z $1 ]; then - case $1 in - help) usage; exit;; - local-index) index; exit;; - import) import $2; exit;; - add) add2 $2; exit;; - create) create; exit;; - * ) usage;; - esac + case $1 in + help) usage; exit;; + local-index) index; exit;; + import) import $2; exit;; + add) add2 $2; exit;; + create) create; exit;; + read) akNewsRead $2; exit;; + * ) usage;; + esac else usage fi |