diff options
Diffstat (limited to 'find_fsd_pages.sh')
-rwxr-xr-x | find_fsd_pages.sh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/find_fsd_pages.sh b/find_fsd_pages.sh new file mode 100755 index 0000000..31a9641 --- /dev/null +++ b/find_fsd_pages.sh @@ -0,0 +1,24 @@ +#!/bin/bash + + +readonly WIKI_BASE_URL=https://directory.fsf.org/wiki +readonly BLACKLIST_URL=https://git.parabola.nu/blacklist.git/plain +readonly BLACKLIST_FILE=blacklist.txt + + +wget $BLACKLIST_URL/$BLACKLIST_FILE +[ ! -f ./$BLACKLIST_FILE ] && echo "download failed" && exit 1 + + +readonly PACKAGES=$(grep '^\s*[^:#]*:.*' ./$BLACKLIST_FILE | \ + sed 's/^\s*\([^:#]*\):.*/\1/ ; s/^./\U&/g ; s/-./\U&/g ; s/-/_/g') + +for package in $PACKAGES +do status=$(curl -s -o /dev/null -w "%{http_code}" $WIKI_BASE_URL/$package) + if [ "$status" == '200' ] + then echo "$package entry exists" + elif [ "$status" == '404' -o "$status" == '301' ] + then echo "$package entry not found" + else echo "$package unknown response" + fi +done |