kiln
12
Makefile
Normal file
|
@ -0,0 +1,12 @@
|
|||
host = minimally.online
|
||||
|
||||
build: content/* templates/* config.toml web.json
|
||||
rm -rf build
|
||||
kiln build
|
||||
|
||||
publish: build
|
||||
rsync -ru build/html/ $(host):/srv/html/
|
||||
rsync -ru build/gmi/ $(host):/srv/gmi/
|
||||
|
||||
clean:
|
||||
rm -rf build
|
8
build/gmi/index.gmi
Normal file
|
@ -0,0 +1,8 @@
|
|||
# minimally.online
|
||||
|
||||
hosts the following services:
|
||||
=> https://board.minimally.online board. (Lemmy)
|
||||
=> https://git.minimally.online git. (Forgejo)
|
||||
|
||||
=> /animated-x4.gif
|
||||
|
Before Width: | Height: | Size: 674 B After Width: | Height: | Size: 674 B |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1,010 B After Width: | Height: | Size: 1,010 B |
21
build/html/index.html
Normal file
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" dir="ltr" style=''>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
<meta name="color-scheme" content="dark light">
|
||||
<style>p,pre,ul,blockquote,h1,h2,h3{margin-top:0;margin-bottom:0;overflow-wrap:break-word;}p:empty{padding-bottom:20px;}a{display:block;}pre{overflow-y:auto;}img,audio,video{display:block;max-width:100%;}body{margin:0 auto;padding:0.5rem;max-width:48rem;hyphens:manual;}p{font-family:georgia, times, serif;font-size:1.25rem;line-height:1.5;text-indent:0rem;}a{font-size:1.25rem;font-style:normal;font-family:georgia, times, serif;line-height:1.5;text-decoration:underline;}pre{padding:1rem;font-family:consolas, monaco, monospace;font-size:1rem;line-height:1;}h1{font-family:avenir, helvetica, arial, sans-serif;font-size:3rem;line-height:1.25;}h2{font-family:avenir, helvetica, arial, sans-serif;font-size:2.25rem;line-height:1.25;}h3{font-family:avenir, helvetica, arial, sans-serif;font-size:1.5rem;line-height:1.25;}ul{padding-left:1rem;list-style-type:circle;font-size:1.25rem;font-family:georgia, times, serif;line-height:1.25;}blockquote{margin-left:0;margin-right:0;padding-left:0.5rem;border-left-width:0.5rem;border-left-style:solid;font-family:georgia, times, serif;font-size:1.25rem;font-style:italic;line-height:1.25;}html,body,h1,h2,h3,p,a,ul,blockquote,pre::selection{color:#000000;background-color:#FFFFFF;}blockquote{border-color:#000000;}pre,::selection,a:hover{color:#FFFFFF;background-color:#000000;}@media (prefers-color-scheme: dark){html,body,h1,h2,h3,p,a,ul,blockquote,pre::selection{color:#FFFFFF;background-color:#000000;}blockquote{border-color:#FFFFFF;}pre,::selection,a:hover{color:#000000;background-color:#FFFFFF;}}</style>
|
||||
<title>minimally.online</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>minimally.online</h1>
|
||||
<p></p>
|
||||
<p>hosts the following services:</p>
|
||||
<a href="https://board.minimally.online">board. (Lemmy)</a>
|
||||
<a href="https://git.minimally.online">git. (Forgejo)</a>
|
||||
<p></p>
|
||||
<img src="/animated-x4.gif"></img>
|
||||
<p></p>
|
||||
</body>
|
||||
</html>
|
||||
|
27
config.toml
Normal file
|
@ -0,0 +1,27 @@
|
|||
title = "minimally.online"
|
||||
|
||||
[[tasks]]
|
||||
input = [".png", ".jpg", ".gif", ".mp4", ".webm", ".mp3", ".txt"]
|
||||
static_dir = "public"
|
||||
output_dir = "build/html"
|
||||
|
||||
[[tasks]]
|
||||
input = [".gmi"]
|
||||
template = ".gmi"
|
||||
output = ".gmi"
|
||||
output_dir = "build/gmi"
|
||||
|
||||
[[tasks]]
|
||||
input = [".gmi"]
|
||||
template = ".gmi"
|
||||
output = ".html"
|
||||
postprocess = "gmi-web --config web.json"
|
||||
output_dir = "build/html"
|
||||
|
||||
[[tasks.feeds]]
|
||||
input_dir = "log"
|
||||
title = "TDC log"
|
||||
template = "atom.xml"
|
||||
output = "log/atom.xml"
|
||||
|
||||
|
8
content/_index.gmi
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
title: minimally.online
|
||||
---
|
||||
hosts the following services:
|
||||
=> https://board.minimally.online board. (Lemmy)
|
||||
=> https://git.minimally.online git. (Forgejo)
|
||||
|
||||
=> /animated-x4.gif
|
199
gmi-web.css
|
@ -1,199 +0,0 @@
|
|||
p,
|
||||
pre,
|
||||
ul,
|
||||
blockquote,
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
p:empty {
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
|
||||
a {
|
||||
display: block;
|
||||
}
|
||||
|
||||
pre {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
img,
|
||||
audio,
|
||||
video {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
:root {
|
||||
--foreground: black;
|
||||
--background: white;
|
||||
|
||||
--body-width: 48rem;
|
||||
--hyphens: manual;
|
||||
|
||||
--serif: georgia, times, serif;
|
||||
--sans-serif: avenir, helvetica, arial, sans-serif;
|
||||
--mono: consolas, monaco, monospace;
|
||||
|
||||
--p-family: var(--serif);
|
||||
--p-size: 1.25rem;
|
||||
--p-height: 1.5;
|
||||
--p-indent: 0rem;
|
||||
|
||||
--a-family: var(--serif);
|
||||
--a-size: var(--p-size);
|
||||
--a-height: 1.5;
|
||||
--a-decoration: underline;
|
||||
--a-style: normal;
|
||||
|
||||
--pre-family: var(--mono);
|
||||
--pre-size: 1rem;
|
||||
--pre-height: 1;
|
||||
|
||||
--h1-family: var(--sans-serif);
|
||||
--h1-size: 3rem;
|
||||
--h1-height: 1.25;
|
||||
|
||||
--h2-family: var(--sans-serif);
|
||||
--h2-size: 2.25rem;
|
||||
--h2-height: 1.25;
|
||||
|
||||
--h3-family: var(--sans-serif);
|
||||
--h3-size: 1.5rem;
|
||||
--h3-height: 1.25;
|
||||
|
||||
--ul-family: var(--serif);
|
||||
--ul-size: var(--p-size);
|
||||
--ul-height: 1.25;
|
||||
--ul-style: circle;
|
||||
|
||||
--quote-family: var(--serif);
|
||||
--quote-size: var(--p-size);
|
||||
--quote-height: 1.25;
|
||||
--quote-style: italic;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0 auto;
|
||||
padding: 0.5rem;
|
||||
max-width: var(--body-width);
|
||||
hyphens: var(--hyphens);
|
||||
}
|
||||
|
||||
p {
|
||||
font-family: var(--p-family);
|
||||
font-size: var(--p-size);
|
||||
line-height: var(--p-height);
|
||||
text-indent: var(--p-indent);
|
||||
}
|
||||
|
||||
a {
|
||||
font-size: var(--a-size);
|
||||
font-style: var(--a-style);
|
||||
font-family: var(--serif);
|
||||
line-height: var(--a-height);
|
||||
text-decoration: var(--a-decoration);
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 1rem;
|
||||
font-family: var(--pre-family);
|
||||
font-size: var(--pre-size);
|
||||
line-height: var(--pre-height);
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-family: var(--h1-family);
|
||||
font-size: var(--h1-size);
|
||||
line-height: var(--h1-height);
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: var(--h2-family);
|
||||
font-size: var(--h2-size);
|
||||
line-height: var(--h2-height);
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: var(--h3-family);
|
||||
font-size: var(--h3-size);
|
||||
line-height: var(--h3-height);
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 1rem;
|
||||
list-style-type: var(--ul-style);
|
||||
font-size: var(--ul-size);
|
||||
font-family: var(--ul-family);
|
||||
line-height: var(--ul-height);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
padding-left: 0.5rem;
|
||||
border-left-width: 0.5rem;
|
||||
border-left-style: solid;
|
||||
font-family: var(--quote-family);
|
||||
font-size: var(--quote-size);
|
||||
font-style: var(--quote-style);
|
||||
line-height: var(--quote-height);
|
||||
}
|
||||
|
||||
/* foreground and background colors */
|
||||
html,
|
||||
body,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
p,
|
||||
a,
|
||||
ul,
|
||||
blockquote,
|
||||
pre::selection {
|
||||
color: var(--foreground);
|
||||
background-color: var(--background);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-color: var(--foreground);
|
||||
}
|
||||
|
||||
pre,
|
||||
::selection,
|
||||
a:hover {
|
||||
color: var(--background);
|
||||
background-color: var(--foreground);
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
html,
|
||||
body,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
p,
|
||||
a,
|
||||
ul,
|
||||
blockquote,
|
||||
pre::selection {
|
||||
color: var(--background);
|
||||
background-color: var(--foreground);
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-color: var(--background);
|
||||
}
|
||||
|
||||
pre,
|
||||
::selection,
|
||||
a:hover {
|
||||
color: var(--foreground);
|
||||
background-color: var(--background);
|
||||
}
|
||||
}
|
BIN
public/animated-x4.gif
Normal file
After Width: | Height: | Size: 674 B |
BIN
public/animated-x8.gif
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
public/animated.gif
Normal file
After Width: | Height: | Size: 1,010 B |
77
tags
Normal file
|
@ -0,0 +1,77 @@
|
|||
!_TAG_EXTRA_DESCRIPTION anonymous /Include tags for non-named objects like lambda/
|
||||
!_TAG_EXTRA_DESCRIPTION fileScope /Include tags of file scope/
|
||||
!_TAG_EXTRA_DESCRIPTION pseudo /Include pseudo tags/
|
||||
!_TAG_EXTRA_DESCRIPTION subparser /Include tags generated by subparsers/
|
||||
!_TAG_FIELD_DESCRIPTION epoch /the last modified time of the input file (only for F\/file kind tag)/
|
||||
!_TAG_FIELD_DESCRIPTION file /File-restricted scoping/
|
||||
!_TAG_FIELD_DESCRIPTION input /input file/
|
||||
!_TAG_FIELD_DESCRIPTION name /tag name/
|
||||
!_TAG_FIELD_DESCRIPTION pattern /pattern/
|
||||
!_TAG_FIELD_DESCRIPTION typeref /Type and name of a variable or typedef/
|
||||
!_TAG_FIELD_DESCRIPTION!XML uri /uri associated with name prefix/
|
||||
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
|
||||
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
|
||||
!_TAG_KIND_DESCRIPTION!Ant P,property /properties(global)/
|
||||
!_TAG_KIND_DESCRIPTION!Ant i,antfile /antfiles/
|
||||
!_TAG_KIND_DESCRIPTION!Ant p,project /projects/
|
||||
!_TAG_KIND_DESCRIPTION!Ant t,target /targets/
|
||||
!_TAG_KIND_DESCRIPTION!HTML C,stylesheet /stylesheets/
|
||||
!_TAG_KIND_DESCRIPTION!HTML I,id /identifiers/
|
||||
!_TAG_KIND_DESCRIPTION!HTML J,script /scripts/
|
||||
!_TAG_KIND_DESCRIPTION!HTML a,anchor /named anchors/
|
||||
!_TAG_KIND_DESCRIPTION!HTML c,class /classes/
|
||||
!_TAG_KIND_DESCRIPTION!HTML h,heading1 /H1 headings/
|
||||
!_TAG_KIND_DESCRIPTION!HTML i,heading2 /H2 headings/
|
||||
!_TAG_KIND_DESCRIPTION!HTML j,heading3 /H3 headings/
|
||||
!_TAG_KIND_DESCRIPTION!HTML t,title /titles/
|
||||
!_TAG_KIND_DESCRIPTION!JSON a,array /arrays/
|
||||
!_TAG_KIND_DESCRIPTION!JSON b,boolean /booleans/
|
||||
!_TAG_KIND_DESCRIPTION!JSON n,number /numbers/
|
||||
!_TAG_KIND_DESCRIPTION!JSON o,object /objects/
|
||||
!_TAG_KIND_DESCRIPTION!JSON s,string /strings/
|
||||
!_TAG_KIND_DESCRIPTION!JSON z,null /nulls/
|
||||
!_TAG_KIND_DESCRIPTION!Make I,makefile /makefiles/
|
||||
!_TAG_KIND_DESCRIPTION!Make m,macro /macros/
|
||||
!_TAG_KIND_DESCRIPTION!Make t,target /targets/
|
||||
!_TAG_KIND_DESCRIPTION!XML i,id /id attributes/
|
||||
!_TAG_KIND_DESCRIPTION!XML n,nsprefix /namespace prefixes/
|
||||
!_TAG_KIND_DESCRIPTION!XML r,root /root elements/
|
||||
!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/
|
||||
!_TAG_OUTPUT_FILESEP slash /slash or backslash/
|
||||
!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/
|
||||
!_TAG_OUTPUT_VERSION 0.0 /current.age/
|
||||
!_TAG_PARSER_VERSION!Ant 0.0 /current.age/
|
||||
!_TAG_PARSER_VERSION!HTML 0.0 /current.age/
|
||||
!_TAG_PARSER_VERSION!JSON 0.0 /current.age/
|
||||
!_TAG_PARSER_VERSION!Make 0.0 /current.age/
|
||||
!_TAG_PARSER_VERSION!XML 0.0 /current.age/
|
||||
!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/
|
||||
!_TAG_PROC_CWD /home/specter/Code/MDO-website/ //
|
||||
!_TAG_PROGRAM_AUTHOR Universal Ctags Team //
|
||||
!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/
|
||||
!_TAG_PROGRAM_URL https://ctags.io/ /official site/
|
||||
!_TAG_PROGRAM_VERSION 6.0.0 /p6.0.20221218.0/
|
||||
!_TAG_ROLE_DESCRIPTION!Ant!antfile imported /imported/
|
||||
!_TAG_ROLE_DESCRIPTION!HTML!class attribute /assigned as attributes/
|
||||
!_TAG_ROLE_DESCRIPTION!HTML!script extFile /referenced as external files/
|
||||
!_TAG_ROLE_DESCRIPTION!HTML!stylesheet extFile /referenced as external files/
|
||||
!_TAG_ROLE_DESCRIPTION!Make!makefile included /included/
|
||||
!_TAG_ROLE_DESCRIPTION!Make!makefile optional /optionally included/
|
||||
0 web.json /^ ".mp4",$/;" s array:video
|
||||
0 web.json /^ "mp3"$/;" s array:audio
|
||||
0 web.json /^ "png",$/;" s array:image
|
||||
1 web.json /^ ".webm"$/;" s array:video
|
||||
1 web.json /^ "jpg",$/;" s array:image
|
||||
2 web.json /^ "gif"$/;" s array:image
|
||||
audio web.json /^ "audio": [$/;" a
|
||||
background web.json /^ "background": "#FFFFFF",$/;" s
|
||||
build Makefile /^build: content\/* templates\/* config.toml web.json$/;" t
|
||||
clean Makefile /^clean:$/;" t
|
||||
foreground web.json /^ "foreground": "#000000",$/;" s
|
||||
host Makefile /^host = minimally.online$/;" m
|
||||
html web.json /^ "html": "en",$/;" s
|
||||
image web.json /^ "image": [$/;" a
|
||||
minimally.online index.html /^ <h1>minimally.online<\/h1>$/;" h
|
||||
minimally.online index.html /^ <title>minimally.online<\/title>$/;" j
|
||||
publish Makefile /^publish: build$/;" t
|
||||
video web.json /^ "video": [$/;" a
|
16
templates/_default/atom.xml
Normal file
|
@ -0,0 +1,16 @@
|
|||
{{ `<?xml version="1.0" encoding="utf-8"?>` | safeHTML }}
|
||||
<feed xmlns="http://www.w3.org/2005/Atom">
|
||||
<id>talon.computer/log</id>
|
||||
<title>{{ .Title }}</title>
|
||||
<updated>{{ site.Generated.Format "2006-01-02T15:04:05Z07:00" }}</updated>
|
||||
<link href="{{ .URL | safeURL }}" rel="alternate"/>
|
||||
{{ range .Pages }}<entry>
|
||||
<id>{{ .URL }}</id>
|
||||
<title>{{ .Title }}</title>
|
||||
{{ if .Params.summary }}<summary>{{ .Params.summary }}</summary>
|
||||
{{ end -}}
|
||||
<updated>{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}</updated>
|
||||
<link href="https://talon.computer{{ .URL | safeURL }}" rel="alternate"/>
|
||||
</entry>
|
||||
{{ end -}}
|
||||
</feed>
|
3
templates/index.gmi
Normal file
|
@ -0,0 +1,3 @@
|
|||
# {{ .Title }}
|
||||
|
||||
{{ .Content }}
|