aboutsummaryrefslogtreecommitdiff
path: root/bin/ak-news
diff options
context:
space:
mode:
authorkaotisk <kaotisk@arching-kaos.org>2023-09-01 09:42:41 +0300
committerkaotisk <kaotisk@arching-kaos.org>2023-09-01 09:42:41 +0300
commit5390073b9aab92d6dbd601593a116e05fd55ccdb (patch)
tree9099fefdac694c65172ebce529a30597885967cd /bin/ak-news
parentbfc8039a974bec3dd382ec8c64cc93dfd002a498 (diff)
downloadarching-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-xbin/ak-news240
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