35 lines
511 B
Makefile
35 lines
511 B
Makefile
PARALLEL_DOWNLOADS= 8
|
|
|
|
|
|
.PHONY: default
|
|
default: get-feeds build
|
|
|
|
|
|
.PHONY: build
|
|
build: index.gmi
|
|
|
|
|
|
.PHONY: get-feeds
|
|
get-feeds:
|
|
rm downloaded.gmi
|
|
@make sorted.gmi
|
|
|
|
|
|
index.gmi: \
|
|
header.gmi \
|
|
sorted.gmi \
|
|
footer.gmi \
|
|
|
|
cat $+ > "$@"
|
|
|
|
|
|
sorted.gmi: downloaded.gmi
|
|
cat "$<" | sort -k 2 -r | uniq | head -100 > "$@"
|
|
|
|
|
|
downloaded.gmi:
|
|
> "$@"
|
|
xargs -a feeds.txt -P ${PARALLEL_DOWNLOADS} -n 1 ./gcat \
|
|
| grep -P '^=> gemini://\S+\s+\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d\+\d\d:\d\d\s*,[^,]+,\s*\S+' \
|
|
>> "$@"
|