Blob


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