summaryrefslogtreecommitdiffstats
path: root/.local/bin/rssadd
blob: fb60be88c39ef43ef847529bc27db0e5b41835e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh

if echo "$1" | grep "https*://\S\+\.[A-Za-z]\+\S*" >/dev/null; then
	url="$1"
else
	url="$(grep -Eom1 '<[^>]+(rel="self"|application/[a-z]+\+xml)[^>]+>' "$1" |
		sed -E 's_^.*href="(https?://[^"]+)".*$_\1_')"

	! grep "https*://\S\+\.[A-Za-z]\+\S*" <<<"$url" &&
		notify-send "That doesn't look like a full URL." && exit 1
fi

RSSFILE="${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/urls"
if awk '{print $1}' "$RSSFILE" | grep "^$url$" >/dev/null; then
	notify-send "You already have this RSS feed."
else
	echo "$url" >> "$RSSFILE" && notify-send "RSS feed added."
fi