Blob


1 MANPAGES = ../kamictl/kamictl.8 \
2 ../kamid/9p.7 \
3 ../kamid/kamid.8 \
4 ../kamid/kamid.conf.5 \
5 ../kamiftp/kamiftp.1 \
6 ../kamiproxy/kamiproxy.1
8 PAGES = index.gmi install.gmi tutorial.gmi caveats.gmi
10 TITLE_caveats.gmi = caveats
11 TITLE_index.gmi = home
12 TITLE_install.gmi = install guide
13 TITLE_tutorial.gmi = tutorial
15 SUBST_GEM = ./subst MANEXT=txt EXT=gmi
16 SUBST_WWW = ./subst MANEXT=html EXT=html
18 .PHONY: all dirs manpages server-www serve-gemini upload clean titles
20 all: dirs manpages pages
21 cp style.css www/
23 dirs:
24 mkdir -p gemini
25 mkdir -p www
27 manpages:
28 .for m in ${MANPAGES}
29 ./mdoc2html.sh $m www/${m:T}.html
30 man -O width=65 -Tutf8 -l $m | col -b > gemini/${m:T}.txt
31 .endfor
33 pages:
34 .for p in ${PAGES}
35 ${SUBST_GEM} $p > gemini/$p
37 ${SUBST_WWW} TITLE=${TITLE_${p}:Q} header.html > www/${p:.gmi=.html}
38 ${MAKE} titles | ./menu.pl "${p:.gmi=.html}" >> www/${p:.gmi=.html}
39 ${SUBST_WWW} $p | ./gem2html >> www/${p:.gmi=.html}
40 cat footer.html >> www/${p:.gmi=.html}
41 .endfor
43 serve-www:
44 python3 -m http.server --directory www 8888
46 serve-gemini:
47 gmid -p 1966 ./gemini
49 upload:
50 rsync --delete -a www/ op:sites/kamid.omarpolo.com
51 rsync --delete -a gemini/ op:gemini/kamid.omarpolo.com
53 clean:
54 rm -rf gemini www
56 titles:
57 .for p in ${PAGES}
58 @printf "%s %s\n" "${p:.gmi=.html}" ${TITLE_${p}:Q}
59 .endfor