all repos — eureka @ bccea6d1d8158bb539cce97f08299c04860388b6

static site generator based on the 100r.co engine

small changes to accomodate the site reorg; v1.1
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmO/tJsACgkQO3+8IhRO
Y5gg9hAAiwCBnfBw4YsOr1FznDpfmV0XLuigCNnEnw2ta+nrbzIfVyo9YDi3/5Mt
nOPOC8i9SpzloAg2EZ8m/KW3bjZaRqvrXaZqkNA36WouL7I0hhPUFpaw8BhZ8B3k
yuxsdwbHOS5TBcM81UWUKbgQzTx6tWe8ZvdqxOfOIQQiv2s1RDFwAssj0esR17np
EJR+pQAp9qUdwXp0rL36ElxHWpS2Jh9HCkAXMyZgvk4h6mXv/kXwVSVMPuNrIK3z
6V/r9g4ZwOnSkV3JCTWMl0sccS4+QX27riQmWUcVSZ2Xh6wp+5Lku9ydBvYCtAE6
8T2rO07vPk7rClRACn5oUax0tIujS5ytFnmtGILzxZw2aLNwK7xi6QhdBS2i6OX+
AmLMTsLWBT/z0X++L8akM9KgpZ0P2FobwIjVxjDjIG4rc+YjBnNjNACS5vBURl17
txKqm1w0eR4zAc9WqfsS7GDOG9oRGDcSFA5Xgmn0VIY4QuRVrZCepUvccT10PiSC
Jax8HComcvOcw8/C2zdh6e/ITi2Qc2BonbAJZfOChNN3kU6ckDZRdJh9d+XDB2YO
HRUsdLSErBZodyrUfeK05iUMsDXZ8HyaSpJzLb6NrjCmoI6boGyg1sZXVUlH5mnh
73uCRkvPMCf3P4QFOnMzXoJg0LXGQ9nIjb0mW/I05iSrCEcpcb8=
=sYFo
-----END PGP SIGNATURE-----
commit

bccea6d1d8158bb539cce97f08299c04860388b6

parent

eb80d36ef6442f1a90e60a49faec8e6f01fa40a4

3 files changed, 53 insertions(+), 42 deletions(-)

jump to
M config.def.hconfig.def.h

@@ -1,13 +1,14 @@

-#define DESC "lair of drkste aka nilix: artist, programmer, philosopher" +#define DESC "lair of drkste aka nilix: software artisan, digital philosopher" #define LEXICON_SIZE 1024 -#define MAINCSS "/new.css" -#define FOOTER \ - "<a href='/git/'><img src='/img/git.svg' alt='visit the nilFM hack " \ - "lab.'/></a>&nbsp;\n" \ - "<a rel='me' href='https://cafe.nilfm.cc/u/nilix'><img src='/img/honk.svg' " \ - "alt='visit me on the Fediverse.'/></a>&nbsp;\n" \ - "<a href='https://webring.xxiivv.com'><img src='/img/webring.svg' " \ - "alt='visit the Webring.'/></a><br/>\n" \ +#define MAINCSS "/nilfm.css" +#define FOOTER \ + "<a href='/git/'><img src='/img/git.svg' " \ + "alt='nilFM hack " \ + "lab'/></a>&nbsp;\n" \ + "<a href='https://webring.xxiivv.com'><img src='/img/webring.svg' " \ + "alt='xxiivv webring'/></a>&nbsp;\n<a " \ + "href='https://lightcrystal.systems'><img " \ + "src='/img/lightcrystal_bw_small.svg' alt='lightcrystal.systems'/><br/>\n" \ "<a href='/sitemap.html'>sitemap</a><br/>\n" #define LICENSE \ "<a rel='license' " \

@@ -16,22 +17,23 @@ "legalcode.txt'>CC-BY-NC 4</a><br/>\n" \

"<a href='/legal_disclaimer.html'>opinions are my own</a>" #define SITEROOT "../www/" #define TAG_BODY_SIZE 4096 -#define CONTACT \ - "contact: <a href='mailto:nilix@nilfm.cc'>nilix@nilfm.cc</a> (<a " \ - "href='keys.html'>keys</a>)<br/>\n" \ +#define CONTACT \ + "contact: <a href='mailto:nilix@nilfm.cc' " \ + "class='mono'>nilix@nilfm.cc</a> [<a " \ + "href='/serv/90587A740FA4FFA0971575383B7FBC22144E6398.asc' " \ + "class='mono'>0x90587A740FA4FFA0</a>]<br/>\n" \ "" #define DOMAIN "https://nilfm.cc" -#define FRONTCSS "/front.css" -#define ABOUT \ - "Derek Stevens &lt;<a " \ - "href='mailto:nilix@nilfm.cc'>nilix@nilfm.cc</a>&gt;<br/>\n" \ - "artist, programmer, philosopher<br/><br/>\n" \ - "verify my signature: <a " \ - "href='/serv/90587A740FA4FFA0971575383B7FBC22144E6398.asc'>signing public " \ - "key</a><br/>\n" \ - "send me an encrypted message: <a " \ - "href='/serv/F5672E001CC962BE3B6C8887C65B677280C66DE5.asc'>encryption " \ - "public key</a>\n" \ - "" -#define LOGO "<img src='/img/nilfm_blackHole_96.png' alt='blackHole://server'/>" +#define FRONTCSS "/nilfm.css" +#define ABOUT \ + "Derek Stevens &lt;<a " \ + "href='mailto:nilix@nilfm.cc'>nilix@nilfm.cc</a>&gt;<br/>\n" \ + "software artisan, digital philosopher<br/><br/>\n" \ + "[<a " \ + "href='/serv/90587A740FA4FFA0971575383B7FBC22144E6398.asc' " \ + "class='mono'>0x90587A740FA4FFA0" \ + "</a>]\n" +#define LOGO "<img src='/img/nilfm_blackHole_128.png' alt='blackhole://nilFM'/>" #define NAME "nilFM" +#define TWTXT "/twtxt.txt" +#define SEPARATEH1 0
M deploy.shdeploy.sh

@@ -1,3 +1,9 @@

+#!/bin/sh + DEST="nilix@lynx.uberspace.de:~/lib/nilfm/" -rsync -avK --delete ../ ${DEST} +if [ -z "$1" ]; then + rsync -avK --delete ../ ${DEST} +elif [ "$1" = "--resync" ]; then + rsync -avk --delete ${DEST} ../ +fi
M main.cmain.c

@@ -69,20 +69,23 @@ return -1;

} int gettwtxt(FILE* f) { + char buf[1024] = {0}; char line[256]; char datebuf[16] = {0}; char msgbuf[240] = {0}; char *l, *d, *m; - FILE* twtxt = fopen(SITEROOT "twtxt.txt", "r"); + FILE* twtxt = fopen(SITEROOT TWTXT, "r"); scat(buf, "<div id='twtxtFeed'><h2>recent activity:</h2>\n<table>\n"); if (!twtxt) { - error("Get twtxt feed", "no twtxt.txt"); - return 0; + return 1; } else { int i = 0; while (fgets(line, 256, twtxt) && i < 3) { + if (*line == '#') { + continue; + } l = line; while (*l != 'T') { ccat(datebuf, *l++);

@@ -107,7 +110,7 @@ }

i++; } fclose(twtxt); - scat(buf, "</table><a href='/twtxt.txt'>see all</a>\n"); + scat(buf, "</table><a href='" TWTXT "'>see all</a>\n"); scat(buf, "</div>\n"); fputs(buf, f); return 1;

@@ -540,7 +543,7 @@ }

if (target < 0) { return error("Missing link", s); } - fprintf(f, "<a href='./%s.html' class='local'>", scsw(stlc(s), ' ', '_')); + fprintf(f, "<a href='/%s.html' class='local'>", scsw(stlc(s), ' ', '_')); fprintf(f, "%s</a>", scsw(stlc(s), '_', ' ')); l->refs[target]++; return 1;

@@ -677,17 +680,14 @@ ismetanav(name) ? "home" : name);

fputs("</head>\n", f); fputs("<body>\n", f); /* header */ - fputs("<header>\n", f); - if (ismetanav(name)) { - fputs("<h1>" LOGO "</h1>\n", f); - } else { - fputs("<a href='/'><h1>" LOGO "</h1></a>\n", f); - } - - fputs("</header>\n", f); - /* about (main page only) */ - if (ismetanav(name)) { - fputs("<div id='about'>" ABOUT "</div>\n", f); + if (SEPARATEH1) { + fputs("<header>\n", f); + if (ismetanav(name)) { + fputs("<h1>" LOGO "</h1>\n", f); + } else { + fputs("<a href='/'><h1>" LOGO "</h1></a>\n", f); + } + fputs("</header>\n", f); } /* nav */ fputs("<nav>\n", f);

@@ -704,6 +704,8 @@ if (!fpinject(f, l, srcpath))

printf(">>> Building failed: %s\n", name); fputs("\n</main>", f); } else { + /* about & twtxt (main page only) */ + fputs("<div id='about'>" ABOUT "</div>\n", f); gettwtxt(f); } /* footer */

@@ -797,6 +799,7 @@ free(d);

fprintf(siteMap, "</ul>\n"); fclose(siteMap); fclose(build(fopen(dstpath, "w"), l, "sitemap", srcpath)); + remove("map.htm"); printf("Created sitemap\n"); }