aboutsummaryrefslogtreecommitdiff
path: root/.i3-blocks/blocks/feed
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-x.i3-blocks/blocks/feed31
1 files changed, 31 insertions, 0 deletions
diff --git a/.i3-blocks/blocks/feed b/.i3-blocks/blocks/feed
new file mode 100755
index 0000000..0030939
--- /dev/null
+++ b/.i3-blocks/blocks/feed
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+# WARNING: This has a LIMIT of 32 characters for now!
+# If your URL is longer you should use an URL shortener
+# Caused by https://github.com/vivien/i3blocks/blob/01a4f4a9ca1e3d0b3c95d1d62000ad8506bdff1a/include/block.h#L50
+# Example: https://goo.gl/
+FEED_URL="${BLOCK_INSTANCE:-https://www.archlinux.org/feeds/news/}"
+
+if [[ "${FEED_URL}" = "" ]]; then
+ exit
+fi
+
+# Follows redirects!
+FEED_CONTENT=$(curl ${FEED_URL} -s -L)
+FEED_TITLE=$(echo "${FEED_CONTENT}" | grep -v "xmlns:atom" | grep -o '<title>.*</title>' | head -n 1 | sed 's/\(<title>\|<\/title>\)//g')
+FEED_LINK=$(echo "${FEED_CONTENT}" | grep -v "xmlns:atom" | grep -o '<link>.*</link>' | head -n 1 | sed 's/\(<link>\|<\/link>\)//g')
+
+if [[ "${FEED_TITLE}" = *404* ]]; then
+ echo "${FEED_URL}"
+ echo "${FEED_URL}"
+ echo ""
+ exit 33
+fi
+
+if [[ "${BLOCK_BUTTON}" -eq 1 ]]; then
+ xdg-open "${FEED_LINK}"
+fi
+
+echo "${FEED_TITLE}"
+echo "${FEED_TITLE}"
+echo "" \ No newline at end of file