aboutsummaryrefslogtreecommitdiff
path: root/modules/follow
diff options
context:
space:
mode:
authorkaotisk <kaotisk@arching-kaos.org>2024-07-18 04:45:12 +0300
committerkaotisk <kaotisk@arching-kaos.org>2024-07-18 04:45:12 +0300
commit3ab1195a2fd01816287879fa78297b2904462584 (patch)
tree328a855e40a9b60d5fef657800a8ce094e50f8c1 /modules/follow
parentf4263aeee0f5b02dbcc541509b49e67bc7b6f8b7 (diff)
downloadarching-kaos-tools-3ab1195a2fd01816287879fa78297b2904462584.tar.gz
arching-kaos-tools-3ab1195a2fd01816287879fa78297b2904462584.tar.bz2
arching-kaos-tools-3ab1195a2fd01816287879fa78297b2904462584.zip
ak-follow is now a module (ak -m follow)
Diffstat (limited to 'modules/follow')
-rwxr-xr-xmodules/follow/lib.sh66
-rwxr-xr-xmodules/follow/main.sh33
2 files changed, 99 insertions, 0 deletions
diff --git a/modules/follow/lib.sh b/modules/follow/lib.sh
new file mode 100755
index 0000000..17ac384
--- /dev/null
+++ b/modules/follow/lib.sh
@@ -0,0 +1,66 @@
+#!/bin/bash
+
+source $AK_LIBDIR/_ak_ipfs
+
+FOLLOWING="$AK_WORKDIR/following"
+
+_ak_follow_follow(){
+ if [ ! -z $1 ]
+ then
+ grep $1 $FOLLOWING
+ if [ $? == 0 ]
+ then
+ _ak_log_error "Already exists"
+ exit 1
+ fi
+ echo $1 >> $FOLLOWING
+ IPFS=$(_ak_ipfs_add $FOLLOWING)
+ if [ $? -ne 0 ]
+ then
+ _ak_log_error "Addition failed"
+ exit 1
+ fi
+ ak-profile set following $IPFS
+ exit 0
+ fi
+ printf "Usage:\n\t%s <AKID_IPFS_CID_v0>\n" $PROGRAM
+ exit 1
+}
+
+_ak_follow_list(){
+ if [ -f $FOLLOWING ]
+ then
+ cat $FOLLOWING
+ else
+ _ak_log_info "No following file, creating"
+ touch $FOLLOWING
+ echo "None found"
+ fi
+}
+
+_ak_follow_unfollow(){
+ FOLLOWING="$HOME/.arching-kaos/following"
+ fentries="$(cat $FOLLOWING)"
+ if [ ! -z $1 ]
+ then
+ search="$1"
+ sed -i -e 's,'"$search"',,g' $FOLLOWING
+ if [ $? -ne 0 ]
+ then
+ _ak_log_error "sed didn't found $search"
+ exit 1
+ fi
+ IPFS="$(_ak_ipfs_add $FOLLOWING)"
+ if [ $? -ne 0 ]
+ then
+ _ak_log_error "IPFS problem"
+ exit 1
+ fi
+ ak-profile set repositories "$IPFS"
+ exit 0
+ else
+ echo "Who to unfollow?"
+ echo "Type following to see them"
+ exit 1
+ fi
+}
diff --git a/modules/follow/main.sh b/modules/follow/main.sh
new file mode 100755
index 0000000..75be507
--- /dev/null
+++ b/modules/follow/main.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+##
+## You can maintain a list of friendly zchains or ids
+##
+## Usage:
+##
+## -h, --help Prints this help message
+##
+## -f, --follow Adds a ... to your follow list
+##
+## -l, --list Shows a list of your followings
+##
+## -u, --unfollow Unfollows a ...
+##
+fullprogrampath="$(realpath $0)"
+PROGRAM="$(realpath $0 | rev |cut -d '/' -f 2 | rev)"
+descriptionString="Following stuff"
+
+source $AK_LIBDIR/_ak_log
+source $AK_LIBDIR/_ak_script
+source $AK_MODULESDIR/$PROGRAM/lib.sh
+
+if [ ! -z $1 ]
+then
+ case $1 in
+ -h | --help) _ak_usage; exit;;
+ -f | --follow) _ak_follow_follow $2; exit;;
+ -l | --list) _ak_follow_list $2; exit;;
+ -u | --unfollow) _ak_follow_unfollow $2; exit;;
+ * ) _ak_usage;;
+ esac
+else _ak_usage
+fi