aboutsummaryrefslogtreecommitdiff
path: root/bin/ak-comments
diff options
context:
space:
mode:
authorkaotisk <kaotisk@arching-kaos.org>2023-03-29 23:45:49 +0300
committerkaotisk <kaotisk@arching-kaos.org>2023-03-29 23:45:49 +0300
commit286b71a6ead8c7234cfbc0b8ece05c8239a4f32c (patch)
treef4662c1517fe14018d93c5503a72b8ba9da0c674 /bin/ak-comments
parentb5394a6bd9f0b9fbd9bafc3e963dafbbc87f2ed2 (diff)
downloadarching-kaos-tools-286b71a6ead8c7234cfbc0b8ece05c8239a4f32c.tar.gz
arching-kaos-tools-286b71a6ead8c7234cfbc0b8ece05c8239a4f32c.tar.bz2
arching-kaos-tools-286b71a6ead8c7234cfbc0b8ece05c8239a4f32c.zip
Renamed everything
Diffstat (limited to 'bin/ak-comments')
-rwxr-xr-xbin/ak-comments118
1 files changed, 118 insertions, 0 deletions
diff --git a/bin/ak-comments b/bin/ak-comments
new file mode 100755
index 0000000..fc226b2
--- /dev/null
+++ b/bin/ak-comments
@@ -0,0 +1,118 @@
+#!/bin/bash
+ZCOMMENTSDIR="$WORKDIR/comments"
+TEMP="/tmp/aktmp"
+if [ ! -d $ZCOMMENTSDIR ]; then
+ mkdir $ZCOMMENTSDIR
+ cd $ZCOMMENTSDIR
+ git init
+ logthis "[INFO]" "zcommentsdir created along with git repo"
+else
+ logthis "[INFO]" "zcommentsdir found"
+fi
+tempassin(){
+ if [ ! -z $1 ]
+ then
+ TEMPASSIN="$1"
+ else
+ TIMESTAMP="$(date -u +%s)"
+ TEMPASSIN="/tmp/aktmp_$TIMESTAMP"
+ fi
+ if [ ! -d $TEMPASSIN ]; then
+ mkdir $TEMPASSIN
+ fi
+ cd $TEMPASSIN
+}
+create(){
+ if [ ! -z $1 ]
+ then
+ REFER_TO="$1"
+ else
+ logthis "[ERROR]" "No reference given"
+ echo "[ERROR]" "No reference given"
+ exit 1
+ fi
+ tempassin $TEMP
+ export COMMENTS_FILE="$(date -u +%s)"
+ vi $COMMENTS_FILE
+ echo "Renaming..."
+ TO_FILE=$COMMENTS_FILE
+ IPFS_FILE=$(ipfs add -q $COMMENTS_FILE)
+ mv $COMMENTS_FILE $ZCOMMENTSDIR/$TO_FILE
+ add $TO_FILE
+ logthis "[INFO]" "Adding to git repo..."
+ cd $ZCOMMENTSDIR
+ git add $TO_FILE
+ git commit -m "Added $TO_FILE with $(head -n 1 $ZCOMMENTSDIR/$TO_FILE)"
+ git clean --force
+ # rm -rf $TEMP
+ if [ ! -z $REFER_TO ]
+ then
+ reference create $REFERENCE $REFER_TO
+ fi
+}
+index(){
+ FILES="$(ls -1 $ZCOMMENTSDIR)"
+ i=0
+ for FILE in $FILES
+ do
+ DATE=$(echo $FILE | cut -d - -f 1 | awk '{print $1}')
+ TITLE=$(head -n 1 $ZCOMMENTSDIR/$FILE)
+ echo $i \| $DATE \| $TITLE
+ let i+=1
+ done
+}
+title(){
+ echo comments
+}
+add(){
+ tempassin
+ if [ -f "$ZCOMMENTSDIR/$1" ]; then
+ FILE=$ZCOMMENTSDIR/$1
+ echo "Adding comments from " $FILE
+ DATETIME="$1"
+ FILE_IPFS_HASH=$(ipfs add -q $FILE)
+ FILE_SIGN_FILE=$FILE".asc"
+ gpg --detach-sign --sign-with $FINGERPRINT --armor --output $FILE_SIGN_FILE $FILE
+ FILE_SIGNATURE=$(ipfs add -q $FILE_SIGN_FILE)
+ cat > data <<EOF
+{
+ "datetime":"$DATETIME",
+ "ipfs":"$FILE_IPFS_HASH",
+ "detach":"$FILE_SIGNATURE"
+}
+EOF
+ else
+ echo "File $FILE doesn't exist";
+ exit 2
+ fi
+ REFERENCE="$(pack_z_block "comments/add" data)"
+ if [ $? == 0 ]
+ then
+ echo "Comment added successfully"
+ else
+ echo "error??"
+ exit 1
+ fi
+}
+usage(){
+ title
+ echo "All you need to know is that there are two options available:"
+ echo ""
+ echo "help Prints this help message"
+ echo "index Prints an indexed table of your comments files"
+ echo "add <file> <refer_to> Creates a data file from the comments file you point to"
+ echo "create <refer_to> Vim is going to pop up, you will write and save your"
+ echo " commentsletter and it's going to be saved"
+ exit 0
+}
+
+if [ ! -z $1 ]; then
+ case $1 in
+ help) usage; exit;;
+ index) index; exit;;
+ add) add $2 $3; exit;;
+ create) create $2; exit;;
+ * ) usage;;
+ esac
+else usage
+fi