From 3ed25b5b3f74ca178c521ede40e365d98609f894 Mon Sep 17 00:00:00 2001 From: c0dev0id Date: Tue, 27 Dec 2022 22:04:45 +0100 Subject: [PATCH] All the code --- .gitignore | 11 + Makefile | 120 + config | 11 + scripts/mkphotoindex.sh | 36 + scripts/mkphotos.sh | 90 + scripts/mkuugcalendar.sh | 16 + scripts/reposync.sh | 30 + scripts/tikz.lua | 65 + site/.zod/config | 47 + site/asciidoctor.css | 2068 +++++++++++++++++ site/blog.md | 17 + site/blog.meta | 2 + .../2019-04-27-manage-dotfiles-with-git.md | 58 + ...19-10-17-LineageOS-on-Motorola-Z2-Force.md | 42 + .../2019-10-24-building-an-openbsd-kernel.md | 47 + site/blog/2020-05-17-browser-dark-mode.md | 55 + site/blog/2020-11-14-openbsd-fde.md | 32 + .../2021-01-09-mutt-inline-patch-macro.md | 74 + site/blog/2021-05-19-gnupg-quickstart.md | 213 ++ site/blog/2021-09-26-memory-management.md | 69 + site/code.meta | 2 + site/code.sh | 37 + site/code/favicon.png | Bin 0 -> 1192 bytes site/code/logo.png | Bin 0 -> 7535 bytes site/code/style.css | 153 ++ site/favicon.ico | Bin 0 -> 15406 bytes site/favicon.png | Bin 0 -> 1192 bytes site/global.meta | 1 + site/gpg.txt | 122 + site/helpers.awk | 38 + site/images/404.png | Bin 0 -> 61464 bytes site/images/bun.jpg | Bin 0 -> 23151 bytes site/images/icons/arrow-right.svg | 3 + site/images/icons/attachment.svg | 3 + site/images/icons/cc0.svg | 98 + site/images/icons/github-square.svg | 3 + site/images/icons/github.svg | 3 + site/images/irc.png | Bin 0 -> 12399 bytes site/images/me.jpg | Bin 0 -> 61908 bytes site/index.adoc | 20 + site/main.layout | 38 + site/netcitizen/index.adoc | 94 + site/netcitizen/index.meta | 1 + site/proza-l.woff2 | Bin 0 -> 13620 bytes site/proza-li.woff2 | Bin 0 -> 14588 bytes site/proza-r.woff2 | Bin 0 -> 13756 bytes site/site.css | 481 ++++ 47 files changed, 4200 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 config create mode 100644 scripts/mkphotoindex.sh create mode 100644 scripts/mkphotos.sh create mode 100644 scripts/mkuugcalendar.sh create mode 100755 scripts/reposync.sh create mode 100644 scripts/tikz.lua create mode 100644 site/.zod/config create mode 100644 site/asciidoctor.css create mode 100644 site/blog.md create mode 100644 site/blog.meta create mode 100644 site/blog/2019-04-27-manage-dotfiles-with-git.md create mode 100644 site/blog/2019-10-17-LineageOS-on-Motorola-Z2-Force.md create mode 100644 site/blog/2019-10-24-building-an-openbsd-kernel.md create mode 100644 site/blog/2020-05-17-browser-dark-mode.md create mode 100644 site/blog/2020-11-14-openbsd-fde.md create mode 100644 site/blog/2021-01-09-mutt-inline-patch-macro.md create mode 100644 site/blog/2021-05-19-gnupg-quickstart.md create mode 100644 site/blog/2021-09-26-memory-management.md create mode 100644 site/code.meta create mode 100644 site/code.sh create mode 100644 site/code/favicon.png create mode 100644 site/code/logo.png create mode 100644 site/code/style.css create mode 100644 site/favicon.ico create mode 100644 site/favicon.png create mode 100644 site/global.meta create mode 100644 site/gpg.txt create mode 100644 site/helpers.awk create mode 100644 site/images/404.png create mode 100644 site/images/bun.jpg create mode 100644 site/images/icons/arrow-right.svg create mode 100644 site/images/icons/attachment.svg create mode 100644 site/images/icons/cc0.svg create mode 100644 site/images/icons/github-square.svg create mode 100644 site/images/icons/github.svg create mode 100644 site/images/irc.png create mode 100644 site/images/me.jpg create mode 100644 site/index.adoc create mode 100644 site/main.layout create mode 100644 site/netcitizen/index.adoc create mode 100644 site/netcitizen/index.meta create mode 100644 site/proza-l.woff2 create mode 100644 site/proza-li.woff2 create mode 100644 site/proza-r.woff2 create mode 100644 site/site.css diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..679e84c --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +site/photos/*.html +site/photos/*/*.html +site/photos/*/mid +site/photos/*/thm +photos/*.html +photos/*/*.html +photos/*/mid +photos/*/thm +www/* +code/* +site/uugcal/* diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..eb81376 --- /dev/null +++ b/Makefile @@ -0,0 +1,120 @@ +WWW = ${PWD}/www +SITE = ${PWD}/site +SCRIPTS = ${PWD}/scripts +LOCAL = /var/www/htdocs +REMOTE = sdk@codevoid.de:/home/www/htdocs/shagen + +# do everything by default +all: build-and-upload-all + @echo "done." + +# Create the photo galleries and create the index and preview html +# pages in site/, so they get parsed in the compile step +PHOTODIRS != find photos/* -maxdepth 0 -mindepth 0 -type d +photos: ${PHOTODIRS} + mkdir -p ${SITE}/photos + cd photos && sh ${SCRIPTS}/mkphotoindex.sh > index.html + find photos -type f -not -name "*.html" -exec install -D {} www/{} \; + find photos -type f -name "*.html" -exec install -D {} site/{} \; + +optimize: + find photos -name "*.jpg" -type f -exec jpegoptim -w 12 --all-progressive --strip-all "{}" + + +calendar: + mkdir -p ${SITE}/uugcal + cd ${SITE}/uugcal && sh ${SCRIPTS}/mkuugcalendar.sh > index.html + +${PHOTODIRS}: + cd "$@" && sh ${SCRIPTS}/mkphotos.sh > index.html + +# invoke zod and compile the website into the www/ dir +compile: + mkdir -p ${WWW} + zod ${SITE} ${WWW} + +# after mixing different generators in the compile step, let's tidy and +# indent the output properly (XXX is there a tool that does _only_ +# indent?) +tidy: + find ${WWW} -type f -name "*.html" \ + -exec tidy -q -i -m -c -w 120 -f /dev/null {} \; + find ${WWW} -type f -name "*.html" \ + -exec sed -i '/.*meta name="generator".*/d' {} \; + +# create gzip variants of text files, so they can be served by httpds +# gzip-static extension +gzip: + find ${WWW} -type f \ + \( -name "*.html" -o -name "*.css" \) \ + -exec gzip -kf9 {} \; + +# set permissions so the web server can read the file +fixperms: + doas chown -R sdk:www ${WWW} + doas chmod -R ugo+wrX,go-w ${WWW} + +# we can upload to the local and the remote webserver at the same time +upload-local: stagit + doas rsync -a --delete ${WWW}/ ${LOCAL}/ +upload-remote: stagit + doas rsync -a --delete -e ssh ${WWW}/ ${REMOTE}/ +upload-all: upload-local upload-remote + +build: + make clean; \ + make photos; \ + make stagit; \ + make calendar; \ + make compile; \ + make tidy; \ + make fixperms; + +build-and-upload-all: + make build; \ + make upload-all; + +# deploy to the local webserver for preview +local: + make build; \ + make upload-local; +remote: + make build; \ + make upload-remote + +# clean up temporary files and everything that can be regenerated very fast +clean: + rm -rf ${WWW}/photos + rm -rf ${SITE}/photos + rm -f photos/index.html + rm -f photos/*/*.html + rm -rf ${SITE}/uugcal + rm -rf ${WWW} + +# clean and also delete all generated images +realclean: clean + rm -rf photos/*/{thm,mid} + + +### TARGETS BELOW ARE ONLY FOR CONVENIENCE + +stagit: + scripts/reposync.sh + +git-add: + find site/photos -type f \ + -not -name "*.html" \ + -not -path "*/thm/*" \ + -not -path "*/mid/*" \ + -exec git add "{}" + + +# watch files and rebuild automatically +notify: + ulimit -n 1024; \ + find ${SITE} ${SCRIPTS} -not -path "*/photos/*" -type f \ + | inotifywait -m -e modify --fromfile - \ + | while read line; \ + do \ + make; \ + done + +.PHONY: ${PHOTODIRS} ${REPOS} diff --git a/config b/config new file mode 100644 index 0000000..0c4ce33 --- /dev/null +++ b/config @@ -0,0 +1,11 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = false + logallrefupdates = true +[remote "origin"] + url = git@github.com:c0dev0id/website.git + fetch = +refs/heads/*:refs/remotes/origin/* +[branch "main"] + remote = origin + merge = refs/heads/main diff --git a/scripts/mkphotoindex.sh b/scripts/mkphotoindex.sh new file mode 100644 index 0000000..b2a57f4 --- /dev/null +++ b/scripts/mkphotoindex.sh @@ -0,0 +1,36 @@ +#!/bin/sh -e + +echo "

My Photos

" +[ -f index.txt ] && cat index.txt + + +makelink() { + _text="$(echo "$1" | sed 's/-/ /g;s/_/ - /g;s/\(....\) \(..\) \(..\)/\1-\2-\3/')" + echo "
  • ${_text}
  • " +} + +echo "

    Events:

    " + +echo "" + +echo "

    Collections:

    " + +echo "" diff --git a/scripts/mkphotos.sh b/scripts/mkphotos.sh new file mode 100644 index 0000000..77d2000 --- /dev/null +++ b/scripts/mkphotos.sh @@ -0,0 +1,90 @@ +#!/bin/sh -e + +## settings + +DIR="$(basename "$PWD")" +TITLE="$(basename "$PWD" |sed 's/unlisted-//g' | cut -d"_" -f2- | tr '-' ' ')" + +mkdir -p thm mid + +echo "

    $TITLE

    " +[ -f index.txt ] && cat index.txt + +echo "

    " +echo "" +echo "" + +_count=0 +find * -maxdepth 0 -mindepth 0 -type f \( -iname "*.jpg" \ + -o -iname "*.jpeg" \ + -o -iname "*.png" \ + -o -iname "*.gif" \ + \) \ + | sort -r | while read _file +do + _file_thm="thm/${_file%%.*}.jpg" + _file_mid="mid/${_file%%.*}.jpg" + _file_html="${_file%%.*}.html" + _file_descr="${_file%%.*}.txt" + + # increase file counter + _count=$(( _count + 1)) + + if [ ! -f "${_file_thm}" ] + then + convert -quality 73 \ + -sharpen 2x2 \ + -auto-orient \ + -define jpeg:size=440x440 \ + "$_file" \ + -thumbnail 220x220^ \ + -gravity center \ + -extent 220x220 \ + "${_file_thm}" \ + >/dev/null 2>&1 & + fi + + if [ ! -f "${_file_mid}" ] + then + convert -quality 83 \ + -sharpen 2x2 \ + -auto-orient \ + -define jpeg:size=1440x2400 \ + "$_file" \ + -thumbnail 720x1600 \ + "${_file_mid}" \ + >/dev/null 2>&1 & + fi + if [ ! -f "${_file_html}" ] + then + echo "

    $TITLE

    " > "${_file_html}" + echo "

    File: ${_file} (Open Original)

    " >> "${_file_html}" + echo "

    " >> "${_file_html}" + [ -f "${_file_descr}" ] && cat "${_file_descr}" >> "${_file_html}" + echo "

    Back to Index

    " >> "${_file_html}" + fi + + echo "" + if [ $(( _count % 3 )) -eq 0 ] + then + echo "" + fi + + while [ $(pgrep convert | wc -l) -ge 15 ] + do sleep 0.3; done + +done +echo "" +echo "
    " +echo "

    " + +echo "

    Back to the gallery index

    " +echo "section: photos" > dir.meta + +wait + +# it looks like wait doesn't catch processes spawned +# in a subshell. So we check explicitely for running +# convert processes. XXX +while [ $(pgrep convert | wc -l) -ge 1 ] +do sleep 1; done diff --git a/scripts/mkuugcalendar.sh b/scripts/mkuugcalendar.sh new file mode 100644 index 0000000..b859d89 --- /dev/null +++ b/scripts/mkuugcalendar.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +REM=$(curl -s "https://raw.githubusercontent.com/c0dev0id/dotfiles/main/.reminders/uugrn.rem") +rm -f uugrn-calendar.* + +echo "$REM" | remind -b1 -p24 - 2>/dev/null | rem2pdf > uugrn-calendar.pdf +echo "$REM" | remind -b1 -p24 - 2>/dev/null | rem2html --nostyle --tableonly > uugrn-calendar.html +echo "$REM" | remind -b1 -p24 - 2>/dev/null | rem2ics > uugrn-calendar.ics + +echo "

    UUGRN Calendar

    " +echo "" + diff --git a/scripts/reposync.sh b/scripts/reposync.sh new file mode 100755 index 0000000..9a098cb --- /dev/null +++ b/scripts/reposync.sh @@ -0,0 +1,30 @@ +#!/bin/sh -e + +add_repo() {( + _dir="$(basename "$1")" + if [ -d "code/${_dir}" ] + then + ( cd code/${_dir} && git pull ) + else + ( cd code && git clone "https://$1" ) + fi + + _fulldir=$(readlink -f "code/${_dir}") + mkdir -p www/code/${_dir} + cp site/code/*.{css,png} www/code/${_dir}/ + cd www/code/${_dir} + stagit -u https://stefanhagen.de/code ${_fulldir} +)} + +mkdir -p code +add_repo "github.com/c0dev0id/dotfiles" +add_repo "github.com/c0dev0id/mkpicindex" +add_repo "github.com/c0dev0id/mystuff" +add_repo "github.com/c0dev0id/website" +add_repo "github.com/c0dev0id/xpick" +add_repo "github.com/luakit/luakit" + + +_repos="$(find code/* -mindepth 0 -maxdepth 0 -type d)" + +stagit-index ${_repos} > www/code/index.html diff --git a/scripts/tikz.lua b/scripts/tikz.lua new file mode 100644 index 0000000..0d1e64b --- /dev/null +++ b/scripts/tikz.lua @@ -0,0 +1,65 @@ +local system = require 'pandoc.system' + +local tikz_doc_template = [[ +\documentclass{standalone} +\usepackage[pdftex]{graphics} +\usepackage[pdftex]{graphicx} +\usepackage{xcolor} +\usepackage{tikz} +\begin{document} +\nopagecolor +%s +\end{document} +]] + +local function tikz2image(src, filetype, outfile) + system.with_temporary_directory('tikz2image', function (tmpdir) + system.with_working_directory(tmpdir, function() + local f = io.open('tikz.tex', 'w') + f:write(tikz_doc_template:format(src)) + f:close() + os.execute('pdflatex tikz.tex >/dev/null 2>&1') + if filetype == 'pdf' then + os.rename('tikz.pdf', outfile) + else + os.execute('pdf2svg tikz.pdf ' .. outfile .. '>/dev/null 2>&1') + end + end) + end) +end + +extension_for = { + html = 'svg', + html4 = 'svg', + html5 = 'svg', + latex = 'pdf', + beamer = 'pdf' } + +local function file_exists(name) + local f = io.open(name, 'r') + if f ~= nil then + io.close(f) + return true + else + return false + end +end + +local function starts_with(start, str) + return str:sub(1, #start) == start +end + + +function RawBlock(el) + if starts_with('\\begin{tikzpicture}', el.text) then + local filetype = extension_for[FORMAT] or 'svg' + local fbasename = pandoc.sha1(el.text) .. '.' .. filetype + local fname = system.get_working_directory() .. '/' .. fbasename + if not file_exists(fname) then + tikz2image(el.text, filetype, fname) + end + return pandoc.Para({pandoc.Image({}, fbasename)}) + else + return el + end +end diff --git a/site/.zod/config b/site/.zod/config new file mode 100644 index 0000000..17b3246 --- /dev/null +++ b/site/.zod/config @@ -0,0 +1,47 @@ +; This is an example zodiac configuration file +; A line starting with a `;` is a comment and is ignored. + +; The `parse` section is for page templates that will not be converted to +; HTML via an external utility. +; +; [parse] +; extension,extension +; extension +; ... +; + + +; [parse] +; htm +; html + + +; The `parse_convert` section is for page templates that will be converted +; to HTML via an external utility. +; +; By default, page templates with the `md` extension are piped through the +; built-in awk implementation of Markdown. +; +; [parse_convert] +; extension,extension command +; extension command +; ... + + +[parse_convert] +sh sh +md discount +adoc asciidoctor -r asciidoctor-diagram -a data-uri -a allow-uri-read -a svg-embed -a diagram-svg-type=inline -a showtitle -a icons=image -a icontype=svg -a iconsdir=site/images/icons -s - +tex pandoc --embed-resources --lua-filter scripts/tikz.lua +; md,markdown discount +; txt asciidoc -s - + + +; The `ignore` section is for patterns that zodiac will ignore when +; searching the project directory. Ignored files will not be parsed or +; copied to the target directory. +; +; [ignore] +; pattern +; pattern +; ... diff --git a/site/asciidoctor.css b/site/asciidoctor.css new file mode 100644 index 0000000..4b0a83d --- /dev/null +++ b/site/asciidoctor.css @@ -0,0 +1,2068 @@ +/* This is (was) the default asciidoctor.css file from + * https://github.com/asciidoctor/asciidoctor + * + * XXX Frankly, I'm just fiddling around here so it doesn't interfere with the + * site layout too much. I'd would rather not have it at all and gradually pick + * what is needed into the site.css. + */ + +abbr { + font-size: 0.9em; +} + +abbr[title] { + cursor: help; + border-bottom: 1px dotted #dddddf; + text-decoration: none; +} + +b, +strong { + font-weight: bold; + line-height: inherit; +} + +strong strong { + font-weight: 400; +} + +code, +kbd, +pre { + font-size: 1em; +} + +code { + font-weight: 400; +} + +pre { + line-height: 1.45; + text-rendering: optimizeSpeed; + white-space: pre-wrap; +} + +dfn { + font-style: italic; +} + +em, +i { + font-style: italic; + line-height: inherit; +} + +em em { + font-style: normal; +} + +hr { + border: solid #dddddf; + border-width: 1px 0 0; + clear: both; + height: 0; + margin: 1.25em 0 1.1875em; +} + +mark { + background: #ff0; + color: #000; +} + +p { + line-height: 1.6; + margin-bottom: 1.25rem; + text-rendering: optimizeLegibility; +} + +q { + quotes: "\201C" "\201D" "\2018" "\2019"; +} + +small { + font-size: 60%; + line-height: inherit; +} + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img, +object[type^="image/"], +svg { + display: inline-block; + height: auto; + max-width: 100%; + vertical-align: middle; +} + +img { + border: 0; + -ms-interpolation-mode: bicubic; +} + +object { + max-width: 100%; +} + +svg:not(:root) { + overflow: hidden; +} + +figure { + margin: 0; +} + +audio, +video { + display: inline-block; +} + +audio:not([controls]) { + display: none; + height: 0; +} + +.left { + float: left !important; +} + +.right { + float: right !important; +} + +.text-left { + text-align: left !important; +} + +.text-right { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +.text-justify { + text-align: justify !important; +} + +.hide { + display: none; +} + +.subheader, +.admonitionblock td.content > .title, +.audioblock > .title, +.exampleblock > .title, +.imageblock > .title, +.listingblock > .title, +.literalblock > .title, +.stemblock > .title, +.openblock > .title, +.paragraph > .title, +.quoteblock > .title, +table.tableblock > .title, +.verseblock > .title, +.videoblock > .title, +.dlist > .title, +.olist > .title, +.ulist > .title, +.qlist > .title, +.hdlist > .title { + line-height: 1.45; + color: #7a2518; + font-weight: 400; + margin-top: 0; + margin-bottom: 0.25em; +} + +p aside { + font-size: 0.875em; + line-height: 1.35; + font-style: italic; +} + +ul li ul, +ul li ol { + margin-left: 1.25em; + margin-bottom: 0; +} + +ul.circle { + list-style-type: circle; +} + +ul.disc { + list-style-type: disc; +} + +ul.square { + list-style-type: square; +} + +ul.circle ul:not([class]), +ul.disc ul:not([class]), +ul.square ul:not([class]) { + list-style: inherit; +} + +ol li ul, +ol li ol { + margin-left: 1.25em; + margin-bottom: 0; +} + +dl dt { + margin-bottom: 0.3125em; + font-weight: bold; +} + +dl dd { + margin-bottom: 1.25em; + margin-left: 1.125em; +} + +blockquote { + margin: 0 0 1.25em; + padding: 0.5625em 1.25em 0 1.1875em; + border-left: 1px solid #ddd; +} + +blockquote, +blockquote p { + line-height: 1.6; + color: rgb(0 0 0 / 0.85); +} + +@media screen and (min-width: 768px) { + h1 { + font-size: 2.75em; + } + + h2 { + font-size: 2.3125em; + } + + h3, + #toctitle, + .sidebarblock > .content > .title { + font-size: 1.6875em; + } + + h4 { + font-size: 1.4375em; + } +} + +table { + background: #fff; + border: 1px solid #dedede; + border-collapse: collapse; + border-spacing: 0; + margin-bottom: 1.25em; + word-wrap: normal; +} + +table thead, +table tfoot { + background: #f7f8f7; +} + +table thead tr th, +table thead tr td, +table tfoot tr th, +table tfoot tr td { + padding: 0.5em 0.625em 0.625em; + font-size: inherit; + color: rgb(0 0 0 / 0.8); + text-align: left; +} + +table tr th, +table tr td { + padding: 0.5625em 0.625em; + font-size: inherit; + color: rgb(0 0 0 / 0.8); +} + +table tr.even, +table tr.alt { + background: #f8f8f7; +} + +table thead tr th, +table tfoot tr th, +table tbody tr td, +table tr td, +table tfoot tr td { + line-height: 1.6; +} + +h1 strong, +h2 strong, +h3 strong, +#toctitle strong, +.sidebarblock > .content > .title strong, +h4 strong, +h5 strong, +h6 strong { + font-weight: 400; +} + +.center { + margin-left: auto; + margin-right: auto; +} + +.stretch { + width: 100%; +} + +.clearfix::before, +.clearfix::after, +.float-group::before, +.float-group::after { + content: ""; + display: table; +} + +.clearfix::after, +.float-group::after { + clear: both; +} + +:not(pre).nobreak { + word-wrap: normal; +} + +:not(pre).nowrap { + white-space: nowrap; +} + +:not(pre).pre-wrap { + white-space: pre-wrap; +} + +:not(pre):not([class^=L]) > code { + font-size: 0.9375em; + font-style: normal !important; + letter-spacing: 0; + padding: 0.1em 0.5ex; + word-spacing: -0.15em; + background: #f7f7f8; + border-radius: 4px; + line-height: 1.45; + text-rendering: optimizeSpeed; +} + +pre code, +pre pre { + color: inherit; + font-size: inherit; + line-height: inherit; +} + +pre > code { + display: block; +} + +pre.nowrap, +pre.nowrap pre { + white-space: pre; + word-wrap: normal; +} + +.keyseq { + color: rgb(51 51 51 / 0.8); +} + +kbd { + display: inline-block; + color: rgb(0 0 0 / 0.8); + font-size: 0.65em; + line-height: 1.45; + background: #f7f7f7; + border: 1px solid #ccc; + border-radius: 3px; + box-shadow: 0 1px 0 rgb(0 0 0 / 0.2), 0 0 0 0.1em #fff inset; + margin: 0 0.15em; + padding: 0.2em 0.5em; + vertical-align: middle; + position: relative; + top: -0.1em; + white-space: nowrap; +} + +.keyseq kbd:first-child { + margin-left: 0; +} + +.keyseq kbd:last-child { + margin-right: 0; +} + +.menuseq, +.menuref { + color: #000; +} + +.menuseq b:not(.caret), +.menuref { + font-weight: inherit; +} + +.menuseq { + word-spacing: -0.02em; +} + +.menuseq b.caret { + font-size: 1.25em; + line-height: 0.8; +} + +.menuseq i.caret { + font-weight: bold; + text-align: center; + width: 0.45em; +} + +b.button::before, +b.button::after { + position: relative; + top: -1px; + font-weight: 400; +} + +b.button::before { + content: "["; + padding: 0 3px 0 2px; +} + +b.button::after { + content: "]"; + padding: 0 2px 0 3px; +} + +p a > code:hover { + color: rgb(0 0 0 / 0.9); +} + +body > div[id] { + margin: 0 auto; + max-width: 62.5em; + position: relative; + padding-left: 0.9375em; + padding-right: 0.9375em; + width: 100%; +} + +body > div[id]::before, +body > div[id]::after, +#content #footnotes::before { + content: ""; + display: table; + clear: both; +} + +#content { + margin-top: 1.25em; + margin-bottom: 0.625em; +} + +#content::before { + content: none; +} + +#header > h1:first-child { + color: rgb(0 0 0 / 0.85); + margin-top: 2.25rem; + margin-bottom: 0; +} + +#header > h1:first-child + #toc { + margin-top: 8px; + border-top: 1px solid #dddddf; +} + +#header > h1:only-child, +body.toc2 #header > h1:nth-last-child(2) { + border-bottom: 1px solid #dddddf; + padding-bottom: 8px; +} + +#header .details { + border-bottom: 1px solid #dddddf; + line-height: 1.45; + padding-top: 0.25em; + padding-bottom: 0.25em; + padding-left: 0.25em; + color: rgb(0 0 0 / 0.6); + display: flex; + flex-flow: row wrap; +} + +#header .details span:first-child { + margin-left: -0.125em; +} + +#header .details span.email a { + color: rgb(0 0 0 / 0.85); +} + +#header .details br { + display: none; +} + +#header .details br + span::before { + content: "\00a0\2013\00a0"; +} + +#header .details br + span.author::before { + content: "\00a0\22c5\00a0"; + color: rgb(0 0 0 / 0.85); +} + +#header .details br + span#revremark::before { + content: "\00a0|\00a0"; +} + +#header #revnumber { + text-transform: capitalize; +} + +#header #revnumber::after { + content: "\00a0"; +} + +#content > h1:first-child:not([class]) { + color: rgb(0 0 0 / 0.85); + border-bottom: 1px solid #dddddf; + padding-bottom: 8px; + margin-top: 0; + padding-top: 1rem; + margin-bottom: 1.25rem; +} + +#toc { + border-bottom: 1px solid #e7e7e9; + padding-bottom: 0.5em; +} + +#toc > ul { + margin-left: 0.125em; +} + +#toc ul.sectlevel0 > li > a { + font-style: italic; +} + +#toc ul.sectlevel0 ul.sectlevel1 { + margin: 0.5em 0; +} + +#toc ul { + list-style-type: none; +} + +#toc li { + line-height: 1.3334; + margin-top: 0.3334em; +} + +#toc a { + text-decoration: none; +} + +#toc a:active { + text-decoration: underline; +} + +#toctitle { + color: #7a2518; + font-size: 1.2em; +} + +@media screen and (min-width: 768px) { + #toctitle { + font-size: 1.375em; + } + + body.toc2 { + padding-left: 15em; + padding-right: 0; + } + + #toc.toc2 { + margin-top: 0 !important; + background: #f8f8f7; + position: fixed; + width: 15em; + left: 0; + top: 0; + border-right: 1px solid #e7e7e9; + border-top-width: 0 !important; + border-bottom-width: 0 !important; + z-index: 1000; + padding: 1.25em 1em; + height: 100%; + overflow: auto; + } + + #toc.toc2 #toctitle { + margin-top: 0; + margin-bottom: 0.8rem; + font-size: 1.2em; + } + + #toc.toc2 > ul { + font-size: 0.9em; + margin-bottom: 0; + } + + #toc.toc2 ul ul { + margin-left: 0; + padding-left: 1em; + } + + #toc.toc2 ul.sectlevel0 ul.sectlevel1 { + padding-left: 0; + margin-top: 0.5em; + margin-bottom: 0.5em; + } + + body.toc2.toc-right { + padding-left: 0; + padding-right: 15em; + } + + body.toc2.toc-right #toc.toc2 { + border-right-width: 0; + border-left: 1px solid #e7e7e9; + left: auto; + right: 0; + } +} + +@media screen and (min-width: 1280px) { + body.toc2 { + padding-left: 20em; + padding-right: 0; + } + + #toc.toc2 { + width: 20em; + } + + #toc.toc2 #toctitle { + font-size: 1.375em; + } + + #toc.toc2 > ul { + font-size: 0.95em; + } + + #toc.toc2 ul ul { + padding-left: 1.25em; + } + + body.toc2.toc-right { + padding-left: 0; + padding-right: 20em; + } +} + +#content #toc { + border: 1px solid #e0e0dc; + margin-bottom: 1.25em; + padding: 1.25em; + background: #f8f8f7; + border-radius: 4px; +} + +#footer { + max-width: none; + background: rgb(0 0 0 / 0.8); + padding: 1.25em; +} + +#footer-text { + color: rgb(255 255 255 / 0.8); + line-height: 1.44; +} + +.sect1, .sect0 { + padding: 0; +} + +div#preamble { + padding: 0; +} + +@media screen and (min-width: 768px) { + +#content h1 > a.anchor, +h2 > a.anchor, +h3 > a.anchor, +#toctitle > a.anchor, +.sidebarblock > .content > .title > a.anchor, +h4 > a.anchor, +h5 > a.anchor, +h6 > a.anchor { + position: absolute; + z-index: 1001; + width: 1.5ex; + margin-left: -1.5ex; + display: block; + text-decoration: none !important; + visibility: hidden; + text-align: center; + font-weight: 400; +} + +#content h1 > a.anchor::before, +h2 > a.anchor::before, +h3 > a.anchor::before, +#toctitle > a.anchor::before, +.sidebarblock > .content > .title > a.anchor::before, +h4 > a.anchor::before, +h5 > a.anchor::before, +h6 > a.anchor::before { + content: "\00A7"; + font-size: 0.85em; + display: block; + padding-top: 0.1em; +} + +#content h1:hover > a.anchor, +#content h1 > a.anchor:hover, +h2:hover > a.anchor, +h2 > a.anchor:hover, +h3:hover > a.anchor, +#toctitle:hover > a.anchor, +.sidebarblock > .content > .title:hover > a.anchor, +h3 > a.anchor:hover, +#toctitle > a.anchor:hover, +.sidebarblock > .content > .title > a.anchor:hover, +h4:hover > a.anchor, +h4 > a.anchor:hover, +h5:hover > a.anchor, +h5 > a.anchor:hover, +h6:hover > a.anchor, +h6 > a.anchor:hover { + visibility: visible; +} + +#content h1 > a.link, +h2 > a.link, +h3 > a.link, +#toctitle > a.link, +.sidebarblock > .content > .title > a.link, +h4 > a.link, +h5 > a.link, +h6 > a.link { + color: #ba3925; + text-decoration: none; +} + +#content h1 > a.link:hover, +h2 > a.link:hover, +h3 > a.link:hover, +#toctitle > a.link:hover, +.sidebarblock > .content > .title > a.link:hover, +h4 > a.link:hover, +h5 > a.link:hover, +h6 > a.link:hover { + color: #a53221; +} + +details, +.audioblock, +.imageblock, +.literalblock, +.listingblock, +.stemblock, +.videoblock { + margin-bottom: 1.25em; +} + +details { + margin-left: 1.25rem; +} + +details > summary { + cursor: pointer; + display: block; + position: relative; + line-height: 1.6; + margin-bottom: 0.625rem; + outline: none; + -webkit-tap-highlight-color: transparent; +} + +details > summary::-webkit-details-marker { + display: none; +} + +details > summary::before { + content: ""; + border: solid transparent; + border-left-color: currentColor; + border-width: 0.3em 0 0.3em 0.5em; + position: absolute; + top: 0.5em; + left: -1.25rem; + transform: translateX(15%); +} + +details[open] > summary::before { + border: solid transparent; + border-top-color: currentColor; + border-width: 0.5em 0.3em 0; + transform: translateY(15%); +} + +details > summary::after { + content: ""; + width: 1.25rem; + height: 1em; + position: absolute; + top: 0.3em; + left: -1.25rem; +} + +.admonitionblock td.content > .title, +.audioblock > .title, +.exampleblock > .title, +.imageblock > .title, +.listingblock > .title, +.literalblock > .title, +.stemblock > .title, +.openblock > .title, +.paragraph > .title, +.quoteblock > .title, +table.tableblock > .title, +.verseblock > .title, +.videoblock > .title, +.dlist > .title, +.olist > .title, +.ulist > .title, +.qlist > .title, +.hdlist > .title { + text-rendering: optimizeLegibility; + text-align: left; + font-size: 1rem; + font-style: italic; +} + +table.tableblock.fit-content > caption.title { + white-space: nowrap; + width: 0; +} + +.admonitionblock > table { + border-collapse: separate; + border: 0; + background: none; + width: 100%; +} + +.admonitionblock > table td.icon { + text-align: center; + width: 80px; +} + +.admonitionblock > table td.icon img { + max-width: none; +} + +.admonitionblock > table td.icon .title { + font-weight: bold; + text-transform: uppercase; +} + +.admonitionblock > table td.content { + padding-left: 1.125em; + padding-right: 1.25em; + border-left: 1px solid #dddddf; + color: rgb(0 0 0 / 0.6); + word-wrap: anywhere; +} + +.admonitionblock > table td.content > :last-child > :last-child { + margin-bottom: 0; +} + +.exampleblock > .content { + border: 1px solid #e0e0dc; + margin-bottom: 1.25em; + padding: 1.25em; + background: #fffef7; + border-radius: 4px; + box-shadow: 0 1px 4px #e0e0dc; +} + +.sidebarblock { + border: 1px solid #dbdbd6; + margin-bottom: 1.25em; + padding: 1.25em; + background: #f3f3f2; + border-radius: 4px; +} + +.sidebarblock > .content > .title { + color: #7a2518; + margin-top: 0; + text-align: center; +} + +#content #toc > :first-child, +.exampleblock > .content > :first-child, +.sidebarblock > .content > :first-child { + margin-top: 0; +} + +#content #toc > :last-child, +.exampleblock > .content > :last-child, +.exampleblock > .content > :last-child > :last-child, +.exampleblock > .content .olist > ol > li:last-child > :last-child, +.exampleblock > .content .ulist > ul > li:last-child > :last-child, +.exampleblock > .content .qlist > ol > li:last-child > :last-child, +.sidebarblock > .content > :last-child, +.sidebarblock > .content > :last-child > :last-child, +.sidebarblock > .content .olist > ol > li:last-child > :last-child, +.sidebarblock > .content .ulist > ul > li:last-child > :last-child, +.sidebarblock > .content .qlist > ol > li:last-child > :last-child { + margin-bottom: 0; +} + +.literalblock pre, +.listingblock > .content > pre { + border-radius: 4px; + overflow-x: auto; + padding: 1em; + font-size: 0.8125em; +} + +@media screen and (min-width: 768px) { + .literalblock pre, + .listingblock > .content > pre { + font-size: 0.90625em; + } +} + +@media screen and (min-width: 1280px) { + .literalblock pre, + .listingblock > .content > pre { + font-size: 1em; + } +} + +.literalblock pre, +.listingblock > .content > pre:not(.highlight), +.listingblock > .content > pre[class=highlight], +.listingblock > .content > pre[class^="highlight "] { + background: #f7f7f8; +} + +.literalblock.output pre { + color: #f7f7f8; + background: rgb(0 0 0 / 0.9); +} + +.listingblock > .content { + position: relative; +} + +.listingblock code[data-lang]::before { + display: none; + content: attr(data-lang); + position: absolute; + font-size: 0.75em; + top: 0.425rem; + right: 0.5rem; + line-height: 1; + text-transform: uppercase; + color: inherit; + opacity: 0.5; +} + +.listingblock:hover code[data-lang]::before { + display: block; +} + +.listingblock.terminal pre .command::before { + content: attr(data-prompt); + padding-right: 0.5em; + color: inherit; + opacity: 0.5; +} + +.listingblock.terminal pre .command:not([data-prompt])::before { + content: "$"; +} + +.listingblock pre.highlightjs { + padding: 0; +} + +.listingblock pre.highlightjs > code { + padding: 1em; + border-radius: 4px; +} + +.listingblock pre.prettyprint { + border-width: 0; +} + +.prettyprint { + background: #f7f7f8; +} + +pre.prettyprint .linenums { + line-height: 1.45; + margin-left: 2em; +} + +pre.prettyprint li { + background: none; + list-style-type: inherit; + padding-left: 0; +} + +pre.prettyprint li code[data-lang]::before { + opacity: 1; +} + +pre.prettyprint li:not(:first-child) code[data-lang]::before { + display: none; +} + +table.linenotable { + border-collapse: separate; + border: 0; + margin-bottom: 0; + background: none; +} + +table.linenotable td[class] { + color: inherit; + vertical-align: top; + padding: 0; + line-height: inherit; + white-space: normal; +} + +table.linenotable td.code { + padding-left: 0.75em; +} + +table.linenotable td.linenos { + width: 0.01%; +} + +table.linenotable td.linenos, +pre.pygments .linenos, +pre.rouge .linenos { + border-right: 1px solid; + opacity: 0.35; + padding-right: 0.5em; + user-select: none; +} + +pre.pygments span.linenos, +pre.rouge span.linenos { + display: inline-block; + margin-right: 0.75em; +} + +.quoteblock { + margin: 0 1em 1.25em 1.5em; + display: table; +} + +.quoteblock:not(.excerpt) > .title { + margin-left: -1.5em; + margin-bottom: 0.75em; +} + +.quoteblock blockquote, +.quoteblock p { + color: rgb(0 0 0 / 0.85); + font-size: 1.15rem; + line-height: 1.75; + word-spacing: 0.1em; + letter-spacing: 0; + font-style: italic; + text-align: justify; +} + +.quoteblock blockquote { + margin: 0; + padding: 0; + border: 0; +} + +.quoteblock blockquote::before { + content: "\201c"; + float: left; + font-size: 2.75em; + font-weight: bold; + line-height: 0.6em; + margin-left: -0.6em; + color: #7a2518; + text-shadow: 0 1px 2px rgb(0 0 0 / 0.1); +} + +.quoteblock blockquote > .paragraph:last-child p { + margin-bottom: 0; +} + +.quoteblock .attribution { + margin-top: 0.75em; + margin-right: 0.5ex; + text-align: right; +} + +.verseblock { + margin: 0 1em 1.25em; +} + +.verseblock pre { + font-size: 1.15rem; + color: rgb(0 0 0 / 0.85); + font-weight: 300; + text-rendering: optimizeLegibility; +} + +.verseblock pre strong { + font-weight: 400; +} + +.verseblock .attribution { + margin-top: 1.25rem; + margin-left: 0.5ex; +} + +.quoteblock .attribution, +.verseblock .attribution { + font-size: 0.9375em; + line-height: 1.45; + font-style: italic; +} + +.quoteblock .attribution br, +.verseblock .attribution br { + display: none; +} + +.quoteblock .attribution cite, +.verseblock .attribution cite { + display: block; + letter-spacing: -0.025em; + color: rgb(0 0 0 / 0.6); +} + +.quoteblock.abstract blockquote::before, +.quoteblock.excerpt blockquote::before, +.quoteblock .quoteblock blockquote::before { + display: none; +} + +.quoteblock.abstract blockquote, +.quoteblock.abstract p, +.quoteblock.excerpt blockquote, +.quoteblock.excerpt p, +.quoteblock .quoteblock blockquote, +.quoteblock .quoteblock p { + line-height: 1.6; + word-spacing: 0; +} + +.quoteblock.abstract { + margin: 0 1em 1.25em; + display: block; +} + +.quoteblock.abstract > .title { + margin: 0 0 0.375em; + font-size: 1.15em; + text-align: center; +} + +.quoteblock.excerpt > blockquote, +.quoteblock .quoteblock { + padding: 0 0 0.25em 1em; + border-left: 0.25em solid #dddddf; +} + +.quoteblock.excerpt, +.quoteblock .quoteblock { + margin-left: 0; +} + +.quoteblock.excerpt blockquote, +.quoteblock.excerpt p, +.quoteblock .quoteblock blockquote, +.quoteblock .quoteblock p { + color: inherit; +} + +.quoteblock.excerpt .attribution, +.quoteblock .quoteblock .attribution { + color: inherit; + font-size: 0.85rem; + text-align: left; + margin-right: 0; +} + +p.tableblock:last-child { + margin-bottom: 0; +} + +td.tableblock > .content { + margin-bottom: 1.25em; + word-wrap: anywhere; +} + +td.tableblock > .content > :last-child { + margin-bottom: -1.25em; +} + +table.tableblock, +th.tableblock, +td.tableblock { + border: 0 solid #dedede; +} + +table.grid-all > * > tr > * { + border-width: 1px; +} + +table.grid-cols > * > tr > * { + border-width: 0 1px; +} + +table.grid-rows > * > tr > * { + border-width: 1px 0; +} + +table.frame-all { + border-width: 1px; +} + +table.frame-ends { + border-width: 1px 0; +} + +table.frame-sides { + border-width: 0 1px; +} + +table.frame-none > colgroup + * > :first-child > *, +table.frame-sides > colgroup + * > :first-child > * { + border-top-width: 0; +} + +table.frame-none > :last-child > :last-child > *, +table.frame-sides > :last-child > :last-child > * { + border-bottom-width: 0; +} + +table.frame-none > * > tr > :first-child, +table.frame-ends > * > tr > :first-child { + border-left-width: 0; +} + +table.frame-none > * > tr > :last-child, +table.frame-ends > * > tr > :last-child { + border-right-width: 0; +} + +table.stripes-all > * > tr, +table.stripes-odd > * > tr:nth-of-type(odd), +table.stripes-even > * > tr:nth-of-type(even), +table.stripes-hover > * > tr:hover { + background: #f8f8f7; +} + +th.halign-left, +td.halign-left { + text-align: left; +} + +th.halign-right, +td.halign-right { + text-align: right; +} + +th.halign-center, +td.halign-center { + text-align: center; +} + +th.valign-top, +td.valign-top { + vertical-align: top; +} + +th.valign-bottom, +td.valign-bottom { + vertical-align: bottom; +} + +th.valign-middle, +td.valign-middle { + vertical-align: middle; +} + +table thead th, +table tfoot th { + font-weight: bold; +} + +tbody tr th { + background: #f7f8f7; +} + +tbody tr th, +tbody tr th p, +tfoot tr th, +tfoot tr th p { + color: rgb(0 0 0 / 0.8); + font-weight: bold; +} + +p.tableblock > code:only-child { + background: none; + padding: 0; +} + +p.tableblock { + font-size: 1em; +} + +ol { + margin-left: 1.75em; +} + +ul li ol { + margin-left: 1.5em; +} + +dl dd:last-child, +dl dd:last-child > :last-child { + margin-bottom: 0; +} + +li p, +ul dd, +ol dd, +.olist .olist, +.ulist .ulist, +.ulist .olist, +.olist .ulist { + margin-bottom: 0.625em; +} + +ul.checklist, +ul.none, +ol.none, +ul.no-bullet, +ol.no-bullet, +ol.unnumbered, +ul.unstyled, +ol.unstyled { + list-style-type: none; +} + +ul.no-bullet, +ol.no-bullet, +ol.unnumbered { + margin-left: 0.625em; +} + +ul.unstyled, +ol.unstyled { + margin-left: 0; +} + +li > p:empty:only-child::before { + content: ""; + display: inline-block; +} + +ul.checklist > li > p:first-child { + margin-left: -1em; +} + +ul.checklist > li > p:first-child > .fa-square-o:first-child, +ul.checklist > li > p:first-child > .fa-check-square-o:first-child { + width: 1.25em; + font-size: 0.8em; + position: relative; + bottom: 0.125em; +} + +ul.checklist > li > p:first-child > input[type=checkbox]:first-child { + font: inherit; + margin: 0 0.25em 0 0; + padding: 0; +} + +ul.inline { + display: flex; + flex-flow: row wrap; + list-style: none; + margin: 0 0 0.625em -1.25em; +} + +ul.inline > li { + margin-left: 1.25em; +} + +.unstyled dl dt { + font-weight: 400; + font-style: normal; +} + +ol.arabic { + list-style-type: decimal; +} + +ol.decimal { + list-style-type: decimal-leading-zero; +} + +ol.loweralpha { + list-style-type: lower-alpha; +} + +ol.upperalpha { + list-style-type: upper-alpha; +} + +ol.lowerroman { + list-style-type: lower-roman; +} + +ol.upperroman { + list-style-type: upper-roman; +} + +ol.lowergreek { + list-style-type: lower-greek; +} + +.hdlist > table, +.colist > table { + border: 0; + background: none; +} + +.hdlist > table > tbody > tr, +.colist > table > tbody > tr { + background: none; +} + +td.hdlist1, +td.hdlist2 { + vertical-align: top; + padding: 0 0.625em; +} + +td.hdlist1 { + font-weight: bold; + padding-bottom: 1.25em; +} + +td.hdlist2 { + word-wrap: anywhere; +} + +.literalblock + .colist, +.listingblock + .colist { + margin-top: -0.5em; +} + +.colist td:not([class]):first-child { + padding: 0.4em 0.75em 0; + line-height: 1; + vertical-align: top; +} + +.colist td:not([class]):first-child img { + max-width: none; +} + +.colist td:not([class]):last-child { + padding: 0.25em 0; +} + +.thumb, +.th { + line-height: 0; + display: inline-block; + border: 4px solid #fff; + box-shadow: 0 0 0 1px #ddd; +} + +.imageblock.left { + margin: 0.25em 0.625em 1.25em 0; +} + +.imageblock.right { + margin: 0.25em 0 1.25em 0.625em; +} + +.imageblock > .title { + margin-bottom: 0; +} + +.imageblock.thumb, +.imageblock.th { + border-width: 6px; +} + +.imageblock.thumb > .title, +.imageblock.th > .title { + padding: 0 0.125em; +} + +.image.left, +.image.right { + margin-top: 0.25em; + margin-bottom: 0.25em; + display: inline-block; + line-height: 0; +} + +.image.left { + margin-right: 0.625em; +} + +.image.right { + margin-left: 0.625em; +} + +a.image { + text-decoration: none; + display: inline-block; +} + +a.image object { + pointer-events: none; +} + +sup.footnote, +sup.footnoteref { + font-size: 0.875em; + position: static; + vertical-align: super; +} + +sup.footnote a, +sup.footnoteref a { + text-decoration: none; +} + +sup.footnote a:active, +sup.footnoteref a:active { + text-decoration: underline; +} + +#footnotes { + padding-top: 0.75em; + padding-bottom: 0.75em; + margin-bottom: 0.625em; +} + +#footnotes hr { + width: 20%; + min-width: 6.25em; + margin: -0.25em 0 0.75em; + border-width: 1px 0 0; +} + +#footnotes .footnote { + padding: 0 0.375em 0 0.225em; + line-height: 1.3334; + font-size: 0.875em; + margin-left: 1.2em; + margin-bottom: 0.2em; +} + +#footnotes .footnote a:first-of-type { + font-weight: bold; + text-decoration: none; + margin-left: -1.05em; +} + +#footnotes .footnote:last-of-type { + margin-bottom: 0; +} + +#content #footnotes { + margin-top: -0.625em; + margin-bottom: 0; + padding: 0.75em 0; +} + +div.page-break { + display: none; +} + +div.unbreakable { + page-break-inside: avoid; +} + +.big { + font-size: larger; +} + +.small { + font-size: smaller; +} + +.underline { + text-decoration: underline; +} + +.overline { + text-decoration: overline; +} + +.line-through { + text-decoration: line-through; +} + +.aqua { + color: #00bfbf; +} + +.aqua-background { + background: #00fafa; +} + +.black { + color: #000; +} + +.black-background { + background: #000; +} + +.blue { + color: #0000bf; +} + +.blue-background { + background: #0000fa; +} + +.fuchsia { + color: #bf00bf; +} + +.fuchsia-background { + background: #fa00fa; +} + +.gray { + color: #606060; +} + +.gray-background { + background: #7d7d7d; +} + +.green { + color: #006000; +} + +.green-background { + background: #007d00; +} + +.lime { + color: #00bf00; +} + +.lime-background { + background: #00fa00; +} + +.maroon { + color: #600000; +} + +.maroon-background { + background: #7d0000; +} + +.navy { + color: #000060; +} + +.navy-background { + background: #00007d; +} + +.olive { + color: #606000; +} + +.olive-background { + background: #7d7d00; +} + +.purple { + color: #600060; +} + +.purple-background { + background: #7d007d; +} + +.red { + color: #bf0000; +} + +.red-background { + background: #fa0000; +} + +.silver { + color: #909090; +} + +.silver-background { + background: #bcbcbc; +} + +.teal { + color: #006060; +} + +.teal-background { + background: #007d7d; +} + +.white { + color: #bfbfbf; +} + +.white-background { + background: #fafafa; +} + +.yellow { + color: #bfbf00; +} + +.yellow-background { + background: #fafa00; +} + +span.icon > .fa { + cursor: default; +} + +a span.icon > .fa { + cursor: inherit; +} + +.admonitionblock td.icon [class^="fa icon-"] { + font-size: 2.5em; + text-shadow: 1px 1px 2px rgb(0 0 0 / 0.5); + cursor: default; +} + +.admonitionblock td.icon .icon-note::before { + content: "\f05a"; + color: #19407c; +} + +.admonitionblock td.icon .icon-tip::before { + content: "\f0eb"; + text-shadow: 1px 1px 2px rgb(155 155 0 / 0.8); + color: #111; +} + +.admonitionblock td.icon .icon-warning::before { + content: "\f071"; + color: #bf6900; +} + +.admonitionblock td.icon .icon-caution::before { + content: "\f06d"; + color: #bf3400; +} + +.admonitionblock td.icon .icon-important::before { + content: "\f06a"; + color: #bf0000; +} + +.conum[data-value] { + display: inline-block; + color: #fff !important; + background: rgb(0 0 0 / 0.8); + border-radius: 50%; + text-align: center; + font-size: 0.75em; + width: 1.67em; + height: 1.67em; + line-height: 1.67em; + font-style: normal; + font-weight: bold; +} + +.conum[data-value] * { + color: #fff !important; +} + +.conum[data-value] + b { + display: none; +} + +.conum[data-value]::after { + content: attr(data-value); +} + +pre .conum[data-value] { + position: relative; + top: -0.125em; +} + +b.conum * { + color: inherit !important; +} + +.conum:not([data-value]):empty { + display: none; +} + +dt, +th.tableblock, +td.content, +div.footnote { + text-rendering: optimizeLegibility; +} + +p, +td.content, +span.alt, +summary { + letter-spacing: -0.01em; +} + +p strong, +td.content strong, +div.footnote strong { + letter-spacing: -0.005em; +} + +.sidebarblock p, +.sidebarblock dt, +.sidebarblock td.content, +p.tableblock { + font-size: 1em; +} + +.print-only { + display: none !important; +} + +@page { + margin: 1.25cm 0.75cm; +} + +@media print { + * { + box-shadow: none !important; + text-shadow: none !important; + } + + html { + font-size: 80%; + } + + a { + color: inherit !important; + text-decoration: underline !important; + } + + a.bare, + a[href^="#"], + a[href^="mailto:"] { + text-decoration: none !important; + } + + a[href^="http:"]:not(.bare)::after, + a[href^="https:"]:not(.bare)::after { + content: "(" attr(href) ")"; + display: inline-block; + font-size: 0.875em; + padding-left: 0.25em; + } + + abbr[title] { + border-bottom: 1px dotted; + } + + abbr[title]::after { + content: " (" attr(title) ")"; + } + + pre, + blockquote, + tr, + img, + object, + svg { + page-break-inside: avoid; + } + + thead { + display: table-header-group; + } + + p, + blockquote, + dt, + td.content { + font-size: 1em; + orphans: 3; + widows: 3; + } + + h2, + h3, + #toctitle, + .sidebarblock > .content > .title { + page-break-after: avoid; + } + + body > div[id] { + max-width: none; + } + + #toc, + .sidebarblock, + .exampleblock > .content { + background: none !important; + } + + #toc { + border-bottom: 1px solid #dddddf !important; + padding-bottom: 0 !important; + } + + body.book #header { + text-align: center; + } + + body.book #header > h1:first-child { + border: 0 !important; + margin: 2.5em 0 1em; + } + + body.book #header .details { + border: 0 !important; + display: block; + padding: 0 !important; + } + + body.book #header .details span:first-child { + margin-left: 0 !important; + } + + body.book #header .details br { + display: block; + } + + body.book #header .details br + span::before { + content: none !important; + } + + body.book #toc { + border: 0 !important; + text-align: left !important; + padding: 0 !important; + margin: 0 !important; + } + + body.book #toc, + body.book h1.sect0, + body.book .sect1 > h2 { + page-break-before: always; + } + + .listingblock code[data-lang]::before { + display: block; + } + + div.page-break { + display: block; + page-break-after: always; + } + + #footer { + padding: 0 0.9375em; + } + + .hide-on-print { + display: none !important; + } + + .print-only { + display: block !important; + } + + .hide-for-print { + display: none !important; + } + + .show-for-print { + display: inherit !important; + } +} + +@media amzn-kf8, print { + #header > h1:first-child { + margin-top: 1.25rem; + } + + .sect1 + .sect1 { + border: 0; + } + + #footer { + background: none; + } + + #footer-text { + color: rgb(0 0 0 / 0.6); + font-size: 0.9em; + } +} + +@media amzn-kf8 { + body > div[id] { + padding: 0; + } +} diff --git a/site/blog.md b/site/blog.md new file mode 100644 index 0000000..ad92f47 --- /dev/null +++ b/site/blog.md @@ -0,0 +1,17 @@ +# Blog + +These are my blog posts + +* 2021-09-26 [Memory management, virtual and residential memory](/blog/2021-09-26-memory-management.html) +* 2021-01-09 [Mutt inline patch handling](/blog/2021-01-09-mutt-inline-patch-macro.html) +* 2020-11-14 [OpenBSD Full Disk Encryption (FDE) Setup](/blog/2020-11-14-openbsd-fde.html) +* 2020-05-17 [Dark-Mode in Browsers](/blog/2020-05-17-browser-dark-mode.html) +* 2019-10-24 [Building an OpenBSD Kernel](/blog/2019-10-24-building-an-openbsd-kernel.html) +* 2019-10-17 [LineageOS on the Motorola Z2 Force](/blog/2019-10-17-LineageOS-on-Motorola-Z2-Force.html) +* 2019-04-27 [Manage dotfiles with git](/blog/2019-04-27-manage-dotfiles-with-git.html) + +*Note that the $ and # in my blog posts have meaning.* +
    +$ run this command as user
    +# run this command as root (or prepend doas/sudo)
    +
    diff --git a/site/blog.meta b/site/blog.meta new file mode 100644 index 0000000..4ceb086 --- /dev/null +++ b/site/blog.meta @@ -0,0 +1,2 @@ +title: Blog +section: blog diff --git a/site/blog/2019-04-27-manage-dotfiles-with-git.md b/site/blog/2019-04-27-manage-dotfiles-with-git.md new file mode 100644 index 0000000..a27d99c --- /dev/null +++ b/site/blog/2019-04-27-manage-dotfiles-with-git.md @@ -0,0 +1,58 @@ +# Manage dotfiles with git + +I'm managing my dotfiles with git. My method serves me well for a few +years already and so I think it's time to write it down. + +If you think git, you might think of a dotfile repository and dozens of +symlinks into the home directory. This is precisely what kept me from +using git until I discovered bare repositories. + +Create your dotfile repository with the `--bare` parameter + +
    +git init --bare ${HOME}/.cfg
    +
    + +This creates only a folder for git control files, which normally reside +inside the `.git` folder within the repository. + +You can now tell git to use `${HOME}` as your work-tree directory. This +makes git handle your home directory like all the files would be within +the git repository. Now you can: + +
    +git --git-dir=${HOME}/.cfg/ --work-tree=${HOME} add .vimrc
    +git --git-dir=${HOME}/.cfg/ --work-tree=${HOME} commit -m "my .vimrc"
    +
    + +If course it is silly to type out such a long command every time you +want to interract with your dotfiles. So why not create an alias? + +
    +alias config='git --git-dir=${HOME}/.cfg/ --work-tree=${HOME}'
    +
    + +Put this in your `~/.bashrc` or `~/.kshrc` and you can now use the command +`config` in the same way you usually use git. + +
    +config add .vimrc
    +config commit -m "my vimrc"
    +
    + +Maybe you have been brave and typed `config status` already. This will +list the content of your whole home directory as "untracked files". This +is not what we want. We can run `git config` and tell it to stop doing +this. But of course we must run our git, which is called `config`. + +
    +config config --local status.showUntrackedFiles no
    +
    + +Now git status will only check what's being tracked. So if you add +your vimrc file and later change it, `config status` will show it, +`config diff` will diff it... + +You can now use the power of git with your new `config` command. + +The solution is not perfect, but it comes pretty close... diff --git a/site/blog/2019-10-17-LineageOS-on-Motorola-Z2-Force.md b/site/blog/2019-10-17-LineageOS-on-Motorola-Z2-Force.md new file mode 100644 index 0000000..47a3012 --- /dev/null +++ b/site/blog/2019-10-17-LineageOS-on-Motorola-Z2-Force.md @@ -0,0 +1,42 @@ +# LineageOS on Motorola Z2 Force + +Whenever there is a major LineageOS Update, chances are that I forgot +the flashing process. So here are the notes. + +Disclaimer: Due to the missing tools to flash from OpenBSD, I use my +work computer, which runs windows. + +*Required Downloads:* + +* [Android Platform Tools](https://dl.google.com/android/repository/platform-tools-latest-windows.zip) + (contains adb and fastboot) +* [Motorola Smart Assistant](https://support.lenovo.com/us/en/downloads/ds101291) (contains USB drivers for fastboot) + +*Prepare:* + +- Install motorola smart assistant +- Extract platform-tools make sure you're in the platform tools + directory or that they are in your $PATH. + +*Update steps:* + +- > Boot into bootloader (power+down) +- $ fastboot flash boot_a <lineageos_recovery>.img +- $ fastboot flash boot_b <lineageos_recovery>.img +- > Boot into bootloader (power+down) -> Boot Recovery +- > Factory Reset -> Wipe data / factory reset + Wipe System +- > Apply update -> adb sideload +- $ adb sideload <lineageos>.zip +- $ adb sideload <addons>.zip +- > Reboot + +$ == commandline activity
    +> == phone activity + +*Notes:* + +* "adb devices" works without USB drivers +* "fastboot devices" shows nothing if USB drivers are not installed +* This phone has two boot areas and therefore "fastboot flash boot" will + fail. The areas "boot_a" and "boot_b" must be used instead. If "boot_a" + and "boot_b" are flashed differently, booting will fail. diff --git a/site/blog/2019-10-24-building-an-openbsd-kernel.md b/site/blog/2019-10-24-building-an-openbsd-kernel.md new file mode 100644 index 0000000..8e2ed26 --- /dev/null +++ b/site/blog/2019-10-24-building-an-openbsd-kernel.md @@ -0,0 +1,47 @@ +# Building an OpenBSD Kernel + +I'm running OpenBSD-current for a while in order to support my port. +It's only one port at the moment, but that's a start, right? + +Anyway... every once in a while I stumble over a patch on the OpenBSD +mailing list I want to try and this requires me to apply the patch and +build the Kernel with it. But how? + +Well, the documentation is where +[where you would expect it](https://www.openbsd.org/faq/faq5.html#Custom). + +*Download the kernel source* + +
    +# cd /usr
    +# cvs -qd anoncvs@anoncvs.ca.openbsd.org:/cvs checkout -P src
    +
    + +*Update the kernel source (if you downloaded it a while ago)* + +
    +# cd /usr/src
    +# cvs -q up -Pd
    +
    + +*Configure Kernel* + +
    +# cd /usr/src/sys/arch/amd64/conf
    +# cp GENERIC.MP MYKERNEL
    +# config MYKERNEL
    +
    + +*Build and install kernel (amd64)* + +
    +# cd /sys/arch/amd64/compile/MYKERNEL
    +# make clean
    +# make
    +# make install # the old kernel is /obsd now
    +
    + +That's it. Reboot. + +This is ONLY the Kernel. If you need to build the whole system, please +consult the OpenBSD documentation. The manpage release(8) is a good start. diff --git a/site/blog/2020-05-17-browser-dark-mode.md b/site/blog/2020-05-17-browser-dark-mode.md new file mode 100644 index 0000000..0fba212 --- /dev/null +++ b/site/blog/2020-05-17-browser-dark-mode.md @@ -0,0 +1,55 @@ +# Browser Dark Mode + +Dark Mode luckily has become a thing also in the non-unix world. Finally +browsers can be used with dark interfaces and websites can have +alternative color schemes. + +However, in other operating systems, there is a global toggle for dark +mode, which also switches the browser into it. This is not the case on +linux and unix systems. + +## Chrome / Chromium / Iridium + +Chrome and Chromium starting with version 73 can be tought to start in +dark mode: + +
    +$ chrome --enable-features=WebUIDarkMode --force-dark-mode
    +
    + +Then go to chrome://settings/?search=themes and switch the theme to +"Classic". + +## Firefox + +Firefox learned the dark mode in release 70. + + 0. Go to "about:config" + 1. Enter "ui.systemUsesDarkTheme" into the search bar + 2. Click "Number" and then "+" + 3. Enter "1" and click the check mark + +Right click on a free spot in the icon bar and select "customize". At +the bottom left of the screen, you can switch to a dark theme. + +Note: If you've set privacy.resistFingerprinting to "true" the CSS dark +mode switching won't work. Kudus to +[@andinus@tilde.zone](https://tilde.zone/@andinus) for figuring this out. + +There you go, both browsers are in dark mode now. The UI should be dark +and also websites that support the `@media (prefers-color-scheme: dark)` +directive should make use of it. + +You can test it on my webpage ([https://codevoid.de](https://codevoid.de)). The +light version has a light gray background and a blue font. The dark version has +a dark gray background and an orange font. + +## vim-browser (vimb) + +
    +$ echo "set dark-mode=true" >> ${HOME}/.config/vimb/config
    +
    + +## luakit + +Open `:settings` and check `application.prefer_dark_mode` diff --git a/site/blog/2020-11-14-openbsd-fde.md b/site/blog/2020-11-14-openbsd-fde.md new file mode 100644 index 0000000..c16ca16 --- /dev/null +++ b/site/blog/2020-11-14-openbsd-fde.md @@ -0,0 +1,32 @@ +# OpenBSD FDE Setup + +This is a condensed version of [OpenBSD FDE +FAQ](https://www.openbsd.org/faq/faq14.html#softraid). + +Boot installer, drop to shell with "s" + +
    +# cd /dev && sh MAKEDEV sd0
    +# dd if=/dev/urandom of=/dev/rsd0c bs=1m
    +# fdisk -iy -g -b 960 sd0 # GPT / without -g and -b for MBR
    +# disklabel -E sd0
    +
    + +Note, switch to kbd en before setting the password as this is +what you have on the boot prompt. + +
    +# bioctl -c C -l sd0a softraid0
    +# dd if=/dev/zero of=/dev/rsd1c bs=1m count=1
    +
    + +Ctrl+D to restart the installer. Choose sd1 as install target. + +If sd1 is not present: + +
    +# cd /dev && sh MAKEDEV sd1
    +
    + +When the installer later asks about installing with MBR or GPT layout, +choose MBR. Even if you boot via UEFI/GPT. diff --git a/site/blog/2021-01-09-mutt-inline-patch-macro.md b/site/blog/2021-01-09-mutt-inline-patch-macro.md new file mode 100644 index 0000000..363f1a0 --- /dev/null +++ b/site/blog/2021-01-09-mutt-inline-patch-macro.md @@ -0,0 +1,74 @@ +# Mutt inline patch handling + +Developers like to send diffs inline in emails. They do this, because it's fast +and easy to read through them, comment on them and also to apply them. Some +version control systems also take over the email text into the patch description +as well. + +Up to now, my workflow was manual. I had to save the email somewhere, then open +a terminal, cd to the direcory the patch shall be applied in and call the patch +utility with the path to the saved email as argument. + +No more. + +This mutt macro takes the current visible email and copies it to a temporary +file (/tmp/mutt-patch.diff). Then it executes the portpatch.sh shell script. All +with one push on ctrl+s while looking at the email. + +The macro must be written in one line and ^S can be entered with the keyboard +sequence ctrl+v ctrl+s: + +
    +macro pager ^S "<shell-escape>rm -f /tmp/mutt-patch.diff<enter><copy-message>/tmp/mutt-patch.diff<enter><enter-command>echo 'Saved as /tmp/mutt-patch.diff'<enter><shell-escape> ~/.mutt/scripts/portpatch.sh /tmp/mutt-patch.diff<enter>"
    +
    + +The portpatch.sh script: + +
    +#!/bin/sh
    +# needs converters/qprint
    +clear
    +
    +echo '---------------------------------------------------------------------'
    +grep -E 'Subject: |^Index|^RCS|^diff --git|^file +|^[-+]{3} ' "${1}"
    +echo '---------------------------------------------------------------------'
    +
    +printf "Apply patch on path [defaults to /usr/ports]? "
    +read -r _path
    +
    +printf "Fix quoted-printable mangeled patch? [y/N]: "
    +read -r _qprint
    +
    +case ${_qprint} in
    +    [y|Y]) _catcmd="qprint -d"; ;;
    +        *) _catcmd="cat"; ;;
    +esac
    +
    +printf "Strip? [0]: "
    +read -r _strip
    +
    +${_catcmd} "${1}" | doas patch -Ep${_strip:=0} -d ${_path:=/usr/ports}
    +cd ${_path} && ksh
    +
    + +The script shows some relvant bits from the email patch that are handy +to determine on which path the patch shall be applied. + +Next it allows the user to enter a different path. I mostly use /usr/ports, so +this is the default. Then the patch is applied and a ksh shell is opened for +further work. + +Quitting the shell brings me back to mutt to work on the next email. + +Sometimes someone sends a mangled patch encoded in quoted-printable. My script +allows to fix this with qprint. + +Git diffs mostly need strip 1 to cut off the a/ b/ in front of the file path, so +the script is asking for that too. For most patches on ports@, the defaults are +fine and hitting enter 2 times works as intended. + +*...and if everyone would generate patches from the /usr/ports root, it wouldn't +even be necessary to enter the path.* + +This is quite friggin handy. + diff --git a/site/blog/2021-05-19-gnupg-quickstart.md b/site/blog/2021-05-19-gnupg-quickstart.md new file mode 100644 index 0000000..5d82ff3 --- /dev/null +++ b/site/blog/2021-05-19-gnupg-quickstart.md @@ -0,0 +1,213 @@ +# GnuPG Quickstart + +I love GPG and the way it works. I know there are many that complain +about it because it has flaws. My stance on this is that I prefer +battle-tested software with known flaws to something with unknown flaws. + +Anyway, this should get you started with GnuPG + +## Prerequisites + +Install gpg and pinentry. + +
    +# pkg_add gnupg pinentry
    +
    + +## You need a Key + +If you want to lock and unlock stuff, you need a key. This is how you +get to one: + +
    +$ gpg --generate-key
    +
    + +Hop through the wizard until you see these lines: + +
    +pub   rsa3072 2021-05-19 [SC] [expires: 2023-05-19]
    +      BA696588D9A04AD9F70DA33EC54733F6DBECC2C1
    +uid                      John Doe <j.doe@example.com>
    +sub   rsa3072 2021-05-19 [E] [expires: 2023-05-19]
    +
    + +If you see an error like: + gpg: agent_genkey failed: Permission denied + +Add the following entry and try again. + +
    +$ echo "allow-loopback-pinentry" >> ~/.gnupg/gpg-agent.conf
    +
    + +Congratulations, you got yourself a GPG Key. This long gibberish is your +full GPG Key ID. Most of the time, you can simply use the last 8 +characters. So the short version of this GPG Key is DBECC2C1. + +You can set it as default key, so it's used to encrypt stuff when no +explicit key is given. + +
    +$ echo "default-key DBECC2C1" >> ~/.gnupg/gpg.conf
    +
    + +## Share the key with your people + +If you want someone to be able to encrypt something for you, send him or +her the output of: + +
    +$ gpg --export -a DBECC2C1
    +
    + +You can also use your email address instead of the Key ID, if you have +only one key with it. This key is public. So put it on some webspace and +add a link to your email header or signature. + +## Upload the key so people can find it (optional) + +You can also upload your key to a key server. For this, configure a +keyserver: + +
    +$ echo "keyserver hkps://keys.openpgp.org" >>  ~/.gnupg/gpg.conf
    +
    + +Then send your key to it: + +
    +$ gpg --send-keys DBECC2C1
    +
    + +## You got a key from someone + +Add a key from someone else to gnupg, so you can use it to encrypt data +for this person. If the key is on your harddrive, use: + +
    +$ gpg --import <pubkeyfile.asc>
    +
    + +The file ending here is kind of undefined. Some call it .asc, .gpg, .pub +or .key. If the key is on a key server, you can import it like so: + +
    +$ gpg --recv-key 52BE43BA
    +
    + +This would import my key. You can look at it now with: + +
    +$ gpg --list-keys 52BE43BA
    +
    + +## Encrypt a file + +This encrypts the file plain.txt with the public key DBECC2C1. + +
    +$ gpg --encrypt -r DBECC2C1 file.txt
    +
    + +Now you have file.txt.gpg, which is the encrypted version + +## Decrypt a file + +GnuPG automaticall figures out what key it can use to decrypt a file. So +this will output the content of file.txt on the terminal. If you want +to save the output in a file, add -o file.txt. + +
    +$ gpg -d file.txt.gpg 
    +$ gpg -d file.txt.gpg -o file.txt
    +
    + +## Choose a better password prompt (optional) + +You can change the way gpg asks for the password: + +
    +$ cat ~/.gnupg/gpg-agent.conf
    +[...]
    +pinentry-program /usr/local/bin/pinentry-curses
    +[...]
    +
    + +Options are: + + - pinentry (sometimes also called pinentry-tty) + - pinentry-curses + - pinentry-gtk2: pkg_add pinentry-gtk2 + - pinentry-gnome3: pkg_add pinentry-gnome3 + - pinentry-dmenu: https://github.com/ritze/pinentry-dmenu + +*Note: If you use a console pinentry program and want to use gpg with a +GUI tool (like thunderbird), the password prompt will be invisible and +gpg/thunderbird will freeze.* + +Makes sense, doesn't it? + +## Start GPG Agent for password caching (optional) + +Put this in your .kshrc or .bashrc: + +
    +export GPG_TTY=$(tty)
    +gpg-connect-agent /bye
    +
    + +## Make a Backup (not so optional) + +There is no handholding cloud or support team you can call when you +messed up or deleted your key. So back it up safely. + +Either you backup your ~/.gnugp directory, or you export the secret +keys and backup them safely. + +
    +$ gpg --export-secret-keys -a DBECC2C1 > gpg_key_backup.sec
    +
    + +Seriously, don't skip this step. + +## Configure Mutt (optional) + +Install mutt with the gpgme flavor. Gpgme is the "new way" of handling +gpg in mutt. + +
    +# pkg_add mutt--gpgme
    +
    + +If you're not on OpenBSD, check with `mutt -v` if it was compiled with +the `--enable-gpgme` option. Then enable it in mutt. + +
    +$ cat ~/.muttrc
    +[...]
    +crypt_use_gpgme = yes
    +[...]
    +
    + +In the mutt compose view, you can now select Security Options. + +
    +        From: c0dev0id <c0@example.com>
    +          To: j.doe@example.com
    +          Cc:
    +         Bcc:
    +     Subject: Hello my friend
    +    Reply-To:
    +         Fcc: =Sent
    +    Security: Sign, Encrypt (PGP/MIME)
    +     Sign as: <default>
    +
    + +You can change the setting with the key "p", which should bring up a +selection menu. + + PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear? + +*That's it! GPG is not difficult. You need to know a few bits, but these are not +more difficult than many other things we do on a daily basis.* diff --git a/site/blog/2021-09-26-memory-management.md b/site/blog/2021-09-26-memory-management.md new file mode 100644 index 0000000..dc02446 --- /dev/null +++ b/site/blog/2021-09-26-memory-management.md @@ -0,0 +1,69 @@ +Disclaimer: I'm trying to learn this stuff. Now a year later, I think +I got some terminology wrong. The process address space is not one, but +many pages. How many depends on the page size. + +# Memory management, virtual and residential memory + +Memory management is a complex topic and most can be left for the kernel +to handle. But having a fundamental idea about where memory is +allocated greatly helps in understanding top(1) and the memory footprint +of applications. + +## Process memory address space (page) + +When a process starts up, the kernel assigns it a so called memory page. +The page size depends on the architecture. On amd64 it's 2^64 - 1 bytes. + +Every memory allocation this process performs, returns a pointer to some +place within this page. Forcing a pointer outside this page, will cause +a SEGFAULT. + +
    +char *w = 1; // segfault
    +char *w = malloc(12); // returns pointer within page
    +
    + +# Memory allocation (virtual memory) + +Let's say we allocatate 2G of memory: + +
    +char *m = malloc(2*1073741824); // 2*1G in bytes
    +
    + +This will grab 2G of consecutive address space within the process memory. +At this point, the memory is likely available but not guaranteed. The +allocation shows up in top(1) as "SIZE" or on linux as "VIRT"ual memory. +This memory is not actually used. So nothing has been written to the +physical RAM chip in your computer. + +# Using memory (residential memory) + +Once memory gets used, it will actually use up space on your RAM chip. + +
    +memset(m, 'u', 1073741824);
    +
    + +Now we've written the character "u" to the first 1G of our allocated +memory. If we look at top(), we'll see something like this: + +
    +  PID      TID PRI NICE  SIZE   RES STATE     WAIT      TIME    CPU COMMAND
    +96621   569318   3    0 2048M 1027M sleep/12  ttyin     0:01  1.66% ./a.out
    +                          ^     ^
    +        allocated memory -'     `- used (written) memory
    +
    + +Note 1: When memory is swapped to disk, it leaves the residential bucket and +can be seen as swap->used. + +Note 2: Stack memory will also show up as residential when used. Unused stack +memory will *not* show up as virtual memory. + +Note 3: Residential memory includes shared memory as well. If you see 10 +chrome processes which are consuming 300MB of residential memory each, this +does *not* mean that chrome as a whole is using 3000MB. + +TODO: Find out how the shared memory part of RES can be seen on OpenBSD. +(Linux has SHR in top) diff --git a/site/code.meta b/site/code.meta new file mode 100644 index 0000000..afc4ec3 --- /dev/null +++ b/site/code.meta @@ -0,0 +1,2 @@ +title: Code +section: code diff --git a/site/code.sh b/site/code.sh new file mode 100644 index 0000000..5a1d89a --- /dev/null +++ b/site/code.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +_distpath="$PWD/www/distfiles" +mkdir -p "$_distpath" + +_repopath="/home/sdk/www/repo" + +out() { printf ' %s%s\n' "$1"; } + +out "

    Source Code Repositories

    " +out "

    Stuff I wrote or regularly contribute to

    " + +repo() { + NAME="$1" + LINK="$2" + DESC="$3" + out " " + out " $NAME" + out " $DESC" + out " " +} + +out "" +out " " +out " " +out " " +out " " + + +repo "xpick" "https://github.com/c0dev0id/xpick" "Command line color picker with hex, xterm and rgb support" +repo "mkpicindex" "https://github.com/c0dev0id/mkpicindex" "Image gallery generator with shell tools (static + js version)" +repo "luakit" "https://github.com/luakit/luakit" "Fast, small, webkit based browser framework extensible by Lua" +repo "mystuff" "https://github.com/c0dev0id/mystuff" "My OpenBSD ports" +repo "dotfiles" "https://github.com/c0dev0id/dotfiles" "My Dotfiles" + + +out "
    RepositoryDescription
    " diff --git a/site/code/favicon.png b/site/code/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..3212266a3f3e608fadb196da7d5144a7285b1a65 GIT binary patch literal 1192 zcmV;Z1XufsP)HLiZ+3hDqoEtr5dHZFR-TB04-yEE0b>X(#@NVWSZ-qFKJH zwDi*QsQ@rMjCPTSUkG`AYJ`VlDgm(9{vW`dI^MZpPiWEMkWH`UeOQfg(WR zTQi}%qUY-}5+blN@CnRW@Dhwh^8hNzWTH<$fS^}ngaIgA9Pz^uCHCZ(A|?Bv#Q;k4 zk|434fknX^Z`mUjiy@QR<8b~qXuEV+{#u+cfH|HDRF`C7hf(*rT+(2F{KW9-bDX{*Rarb{I0th0!vso?_N)o7o;L{Uop~EMckbiYCgqhrN{AZ(q2Imb!B_etZBuX zh$LYWntQ?s#8~V!LM&HjDbn5#$M>fiu{JUpGDioTF5idTf+I*s&ldzxU#{ZBeVIJR zWNCmeYU|IUUvCN{=fGNW?*d<+5e7SO&DhOS>EBXts1jR}Rq$|^qvp^q?944enzB$3 zK*QG`qoGNI^&3*);pT$xXb&sxiJAM6Uv$g_AT2%&E2yOEdKrruga66o8?0vc+1s$v z>ft6Q;=T@Af5``(+eL)W z*1WLPA3GDHu;j%}(6qE$o(1DO*0kHoN{p(a4AeJXz=rtjv1P$T0AM!!{d}mdbo1IU zO2UaUemi#VoIj%5K|c|Drrrb885t+L9~AP`NMo|9g9@TzBHTGv8w8+(HK(!EoZkFY zjn&FH*3*w{ENjJCdmcT~o+~Ch9L()>W+!!p*=;`+ru+>YmE}}Lrw$$f0000 literal 0 HcmV?d00001 diff --git a/site/code/logo.png b/site/code/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6cbfa28b2d9cbbd564e49f16adc04bc98ff0e755 GIT binary patch literal 7535 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 literal 0 HcmV?d00001 diff --git a/site/favicon.png b/site/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..3212266a3f3e608fadb196da7d5144a7285b1a65 GIT binary patch literal 1192 zcmV;Z1XufsP)HLiZ+3hDqoEtr5dHZFR-TB04-yEE0b>X(#@NVWSZ-qFKJH zwDi*QsQ@rMjCPTSUkG`AYJ`VlDgm(9{vW`dI^MZpPiWEMkWH`UeOQfg(WR zTQi}%qUY-}5+blN@CnRW@Dhwh^8hNzWTH<$fS^}ngaIgA9Pz^uCHCZ(A|?Bv#Q;k4 zk|434fknX^Z`mUjiy@QR<8b~qXuEV+{#u+cfH|HDRF`C7hf(*rT+(2F{KW9-bDX{*Rarb{I0th0!vso?_N)o7o;L{Uop~EMckbiYCgqhrN{AZ(q2Imb!B_etZBuX zh$LYWntQ?s#8~V!LM&HjDbn5#$M>fiu{JUpGDioTF5idTf+I*s&ldzxU#{ZBeVIJR zWNCmeYU|IUUvCN{=fGNW?*d<+5e7SO&DhOS>EBXts1jR}Rq$|^qvp^q?944enzB$3 zK*QG`qoGNI^&3*);pT$xXb&sxiJAM6Uv$g_AT2%&E2yOEdKrruga66o8?0vc+1s$v z>ft6Q;=T@Af5``(+eL)W z*1WLPA3GDHu;j%}(6qE$o(1DO*0kHoN{p(a4AeJXz=rtjv1P$T0AM!!{d}mdbo1IU zO2UaUemi#VoIj%5K|c|Drrrb885t+L9~AP`NMo|9g9@TzBHTGv8w8+(HK(!EoZkFY zjn&FH*3*w{ENjJCdmcT~o+~Ch9L()>W+!!p*=;`+ru+>YmE}}Lrw$$f0000 literal 0 HcmV?d00001 diff --git a/site/global.meta b/site/global.meta new file mode 100644 index 0000000..ee19823 --- /dev/null +++ b/site/global.meta @@ -0,0 +1 @@ +site_title: Stefan Hagen diff --git a/site/gpg.txt b/site/gpg.txt new file mode 100644 index 0000000..41e1f54 --- /dev/null +++ b/site/gpg.txt @@ -0,0 +1,122 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=ZR0P +-----END PGP PUBLIC KEY BLOCK----- diff --git a/site/helpers.awk b/site/helpers.awk new file mode 100644 index 0000000..5ba1cf9 --- /dev/null +++ b/site/helpers.awk @@ -0,0 +1,38 @@ +{ helpers = "yes" } + +function load_helpers() { + data["page_title"] = page_title() + data["section_blog"] = section_blog() + data["section_code"] = section_code() + data["section_photos"] = section_photos() + data["page_css"] = page_css() +} + +function page_title( title) { + if (data["title"]) { + title = data["title"] " - " data["site_title"] + } else { + title = data["site_title"] + } + return title +} +function section_blog(section) { + if (data["section"] == "blog") { + return " class=\"section\"" + } +} +function section_code(section) { + if (data["section"] == "code") { + return " class=\"section\"" + } +} +function section_photos(section) { + if (data["section"] == "photos") { + return " class=\"section\"" + } +} +function page_css(css) { + if (data["page_css"]) { + return "\n " + } +} diff --git a/site/images/404.png b/site/images/404.png new file mode 100644 index 0000000000000000000000000000000000000000..ae118bee79ee2998361fa426f929cd0acfb406e8 GIT binary patch literal 61464 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 literal 0 HcmV?d00001 diff --git a/site/images/bun.jpg b/site/images/bun.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3fe0807b0700f4495edf01305f0b52d7bbc65da1 GIT binary patch literal 23151 zcmbSyWmH^Imt_$MF2RCRxCVkd6olXbg1ft0aEd~Ly9ZBjcXxMpcPF@8F?>DKy?SQ# zH($@(wa%+r@70gm>)m_q-DmIfy70OT_z6IShev>akBESPfP{pIjEaMXih_blfQ5~L zLqZ57B_SjxCZl4eC8PL6NlZ+~P5+67m4kx=NXsk8!zRGY&cOzQgoK2Of{KrZhR;S$ zOwRWIJYG8hn20dZFww9u6o7Y_FtC^~uRSnX007K;n1369|21IV!NR?VM?geEM)?4E z2LlWH4i5JHdpNkaUxMGB0pKv-W0A9pz+)>IAW%5qu=&RPL8Sar*@>$-c}~S{=;()p z{1FeIfRLJomX4l*gOiJ!hnG+EtC+Ziq?ELhvWlvjx`w8av5BdfxrL?E4`&xwH+K*J zp8Nxza)va)k>^YRM{i>j(?YU}D78k@ShdwTo&2L^|xre|j7<`)*1 zHn+BScK7xV4v#J_udZ)y@9rNSVF0lI6VBW9e**eXcrf4ayn};-g+urU9+-EoZvl%5 z_nw>;9!o?4!N38Vg3T8Z=S$3=%1$IocExjCL&r(vk5n9+)EEDN^lym%dw~4@zYzTg zp#Q-0x&%Olg?W2nu$TZ4-~k#+_Z$6g^DJni`HE937Yi|G5sTE<2d?tDk8y_SITt+b zh#(Ta*V5gw)G=MMNDbF<>S|P!sd-Ig^JVJq7SiN0L5BcT$IAS#lk#k;_+g$RnV+hj zZufaVuAJn~m<9lJ2Dv$68xcprLa?5Chzhr}_Ao8lljd5m!BK{PoRlNn`{1EJK#wCY zMy4-J8SOzBQubR)pgsX}T+GPNJNdWqjG{4S#!TwG%S!m8sSk-52?O1!enMzJ13Nk* zDiSaNAmN<9xK^lDtZs?`^$;g|m}f2Y;-9ijNEywkj;lkzevSf_y5J~UuoiMwZZ*yS zbe8?V5!<`374=|)#~{?&zpc)B%}=KFgW-&(h@s!`|QUU&! zwEs8s$CS04l&$@YTGpx;i{59hl$iCyPhP+tQV_#-Ed=9;kIL7MtP49J!Cm|jc;No0 z_YXa7Ws(?}2ix+L%A_Tim<|6`a$Q3FMQZF#{$%Wmu(JN8GC2m?JK) zfFGA2&00o+A-q}AIIAtKW3NvEW+E>aN#jz zu{<~jcCTLP+FHdaOE6WC*sZ}Rl`_);@;Ixw-^02JT(hWXcm-JRK;6n1(40o>)~FoH zizS_&i}r78WAuyZT?F41QbFS%VwlkgFLmj7Ya?ZhpgldIZnI}C?M(YuA8s_1L07n` zx4}K$#z8~C>*-xiGIAdVM+~yi_lEME-5nJ`m9;*e(S z5VL~$5PG##ZB?MXI1<}SK7k0m}SIoZ%n--#Qa5E(3eV1uKesIDM}1NhIOCb0=Y(suJxVyp}t zL?`^_*gpw=c~W(W%7d8e(8cuF(?6`tms_ZPtmwr}$U@u>aUVQ9xj6;1tKhGUIn@Q% z=UH%RiWT?`y^oMkn*H?{w^lZp!l(q}A~fZaMh|!*EO)iAgIH15ju=WBAzC-!Hbxrb{2_t}iVxaWPD*CF69?xt(x<6%rM&|9*5N)N z@*=eA)}NOL+>m{ww=K;T{4l@=CELr5>QLiimd(hc3V#I*(`R=)cY=mWwTHCJjkrP^ z9kMOwN<%&oeuX}x5_@ZNA1cEYn6P5ksT_rKRXk&G3{=xd>2f-&l55)-EX<)d8#Q{* z;_ukM0^~K9b4<{4)!!j@!pEr*o0!_ysI-0=S=8ZxbhwM2s4!CI@(1832*3aLkhQYD zb49^1iko@F&s=sF`!WFp0?k_-lC>X!Yp9rj_N>NE!jVCoSl$Zv+K&D!Ny(#)r z&l1kasNyGk{m^5lsE!?P+>`9cgnbBhiNqt?V^r#1!1z)76X)02$x1aG> z152$6@=r6djD9WqF<7Od$Xs8ZZiI@R?9n(tfdOt~spT@TMPsABcg9MAn%6qOUKEBL zS6c$D(-A&z(6%N`a#&dK@fkeg`4YIh%OiMC$Pn|dN7Tp*V_HjH({!fIP4gF|uEDgv zb#Z7Ae5?4H!Y5BReQ{yhz()_D2UTU{7R`6KU~g3kZ77^ly&>;YhG5|$xNar@*rKcS z%os~nNEVK%+gaqsZeEjiJmh;cK?)2VcPE!4`$ zo9*FvV5A_13;#z9=WX5KT6T?=+a|I`r)xhVzq{qA;YaH~aYRRWtUNo`x}Fh>z{N38 z)<<@>Oo+6Q{!5otXi50fh1D!D`epVNKxnfdrT0}M8MaTvuwmc+B+@GTTq21iJ5N4k zQ)+O${RWiaUN~n*T;WQDkIR7bgY!@qD~#Kz;i(WGnEVPjR+QV7W@039rswUi=%vOL zH_%>>Jb6DKz^p}JEyFa6erGofts#Jqf=J-uW6 zr0f=eds4oM2J?6r4TX!^vCL_MIluNfsf}enisQbai4+G}Mv)XRxnxs^{~9z8c}RK; zJu4R?&}bM&Z-k#qTRntirh zDI`%^fdqJv?iIx5_At}5-`9IgUhnmA&b7Mk^ zEaIM!j0D_n=$&N+^N@xV^fTll?}mc=+xhwjb8bTT-!^#<6A_a`@UR#cB`J4(k@Kn* z=6fN=A)ON9Bp41i@Gbeh88}J8nPWje64|&gpZ-9PAyFPf3YF7H>*7uv3Sv^f)iiQ7 zz_Amyz!q<EYHULR#?{enHG3G*`6+{PGazHi{~E;=%0j+e9$u{q@-v?K2=N9k0fYh z`z7W@{#dIG`&`>zyeXq96!9V3PcH0qee+>n#c7Kl#h{Lho#h07`>HtHGg&&fMkMFn zNM^F*iK!|XvR~6+_B<}%jXTl3(}U#h*#G<6#r^gJ;g+p{n&bWl5n`j+5Th4H!mHl6 z@DOK`_P_l;5IM`)m@qks;t(={WTRJrFOB?>tSHk-n&^I02n1K}C9y?ryO%$tKl5{Q z8>p{3=i>b^Fosg$nrd>)SHY}7ro_V1;r3vB%J~(5T;dGo$oNe0Y>d0bRI<+fT-QG- zaj$Hq+zPt9yb(Bh zSiK|{CnBJnhj+WCrKDV{IJ9(glv@KPKg^_K*DP$;-n;cJ5%tY@2|B#bT4DTDMfY+p z)(2UFeF$y;H17eI&0ofGD`32veLE_2tQyOfbQ{V1Y3!r<)1RB$SAft$F}92L7Iz;GVpbr9S|Kdq5+l%tYXIzcIq8k**75KI zg&v!ti|+*NnGQ|03Ap&Ua&f88u(D1B?^khGEQ~$~tu}yrp?4={DQ0Jx9+0ukV4fIjE8yM7=Kxs^ zU5Yf(>>>VvFBtvh2WSAdgvrsB{+BwaGn&-fs{yjT0@@(y68~Z~>u?8_Qq(yVtcdOn zv~&`ICm=0gaDcIe3&=Y2GqjKw0(B(5wZo%{W_7znq+m z4=-T*-Xrgqc?rX-E(yE>YF+`G>an9#mv{-otf#VULF5b;wi+4GqaEm_DdkhP?}LgZ zT_FcDU4AcW+)(A$@JrsVqVQO70D!IRa7h+g${W}>r?KF;EP*U2bpRqf6%af>l+K-N z=rK02p|l3x6QO5{j5m~x-b8SV)qSixhGR%WwAm&AZh%KM1Mb)ow5%QY?7AM(Rb{2m zDP93MF53>Iy-@%te3OhkoH^G|VCBOI|447UTxPCH+eJ3rNxZkFhjsdnfnJofgzt^FB=ia1+h1o&7q%vMJ6{2b#>6vq-oP1VA*jo%UP zWpY~RrC4Zb$ttyAGZe`zVeG5IJDvUt0#GC!n#TH{CzWL8Qv4Xn4r>;K^-8FU^n7=d zN=~1;_4bM~-Rczp(9t1awq7_`DzbTKc)mK8yX7X9mxn3y-`#K(ol!owK($qRrPoLermGuf7_q9jxh9#k4Q(;b(g zpqii*p%a8Ppf5fLM_{UEnr#2iGKzYzglZxh+j3Tqkn8Pt1f?6^n=(TP?HI@mo${o` zPre=Z(3@g9>%ypS&UKS20LjzcA70__uQ9N^AUxxUj!UDi8_$kmb!=sgPEXm~?471? z$8#SGM0%^(POb%HQT4^`auH+C;W+@)#W1BwP*1Gw$!e{Vw`Wl=4*+~bvr@y(vZT-J zb!9~B`MK1VPy1|DBY{QHlvWH7xh<7*m>qGeGYB(>*-xUp2F}%+v`U`o*B(Qcu*80xj zD2M_6S!l*y1XL}HCWIAxG~N}}{5#oGjuxRFIYgz?l^|DWXew4)@m)BFj0PH z%w+Yg zm5ZLwq?G8opw$K+CTc_lTb>t%k$Z(IjCS82x3TFZEP+W^SN zcgft?xXFcwDc~tzCv=qb3`11njDK*9xj*6xvFL)HDkO>odsWWLJ>W!dpgr^?}(->pLKqc)m7VeLxIgKy`tR({6v1gpRm^3PAl z`0!TlcaoFV>3wRP@lVc12qZ1Zx#ZuioKX|ojv@wEe~Dyb)ADS+l=##p zwZ5ChVx9Jb%7=A5C5(tz;+d-Ho@vj^5b7fDdJJ|F&WDZ5RK9!g5?9_3^v|`TGlJQ_)Gb?C*;xUN{WxXUeU7zl z@_TjI6?~(`1j7$tqDPuzoTgFPcsu(XrgM!g32XNnPKaeWTT`(JRjEyWL8@2r*2||$ zrPV&$NC_wuVqmXv`cT*0Yu)W??YbZYci!@R0t=Hi6r+Av{z?%@6@efo)`2tao^P>G z6O5E6hVMsBYktyka%#_@zMrzmE&CyCl8xu_ZBAkaCb+@(x*RaT8R6o<{q;^Dj;^#eV`h?RSX;SpHhfhwbc1 z;n1)*!$y_YPX(6o4EAPF()x2A7+KI%sc(xUx@NEdZfKni1FbxLRD8{s$s)zYT!EN0 z?PfluJyCfBuo9KRQJ^!}D^m7>N459rwWdFM>uUM6+^6>75-?ENuW!rRx_ds}E-9lh z@5QhMNNB@!Lcg>W%g&_qeJMftx~lAQhdU+WY2yfTW~hXox<4074(+jpeVa~F$j}ih zcM3uO@(QS8^^MAPY$MCOtNfZDjRNeCx_CZzi-w`vz|h>bD?=OIsoM8j0rM-SP83;b zB^+dhjx79_m5l$Rvdah&uDzTs2Zs9ut*V5Xx znJ{|!3z4>JWNV)M=*(nZXHd(d8z`@rYls~eCx*lAkdxR`H~1-uwFGpG^dO(#>RdN> zv9SCBL!@!#hPJWHRWe@GQOi~fAK)lo@pkY&CaVT3I#+%PzM>yA-IRb7?*A?do!WC+ z>$lh>Qk%Xm$d7@^FlDc>T?EoS!!w#Br-!jphYWI16!6$|O5BO@Ddfk$+-2akkKw4+ zvDj&a@7Gzl3i0h9u`AOwo@WuuFr{QXt$mt>)ZU9lems_a_R4;-K%YObj2pA?m?KW{ zj&OM@y`jkPTXFzG{l80XO6C$oDZNnw-@!cyAA%te^T1ID)(O>A1IPc@eca^%1l^$z zP2c=(T78|dx-iORQIdGO!Q=+Gqq>rT(WGlI;|sc;0-jS8Xx}R-sR>^Y6OZ;l)!l?2yUl2cGk0aDtjnlp$-lZ7 z5e3>TY`~6Np4K8}*zoO95x7M7kmlo%b2)i`_z^mEdn6ih^myQlNiO~!U&s{OUzz9Jvprq2TS6lW#hW@lV8^TjjkIzEk#er4RdQ2C~^efqRVgBl}qI6M3Wj( zX0$|yJ$Qhfl#aNd6g89k?Xg7Wid3t+?)&znn`(AY0jnXqHcBg2?ZFRqHH!HJCWeq} zhM`1;2(2ex-PH){fKvP`DGk!%TXCR=Io`qmy=+1MvzIVrL*kjS54eTi*1wyA^9pbw ze{oU(lH7-9d=A=t2MMqm3xA1k&X|~pnUai}?7zuzC;lx#?sMQ23nGl_Bou&>owpDs z{wdU@nu=8$Qum>ZQWm^YSUa4rn|JKBDTG%x%s%;mAOLAnZP`!VG~$N;J0G)%T8^o( zM9&^~5fzZBP-SubvSrM_v?@PLeky$MrtQRk5a~SD-4@Dq%3t|)CNy@DC4MiB=n{bY&lHb z+oo2#C9qBMiCz#cX}YK^^rOiI>c?kT&Wx=D=$5`E!Zj?lYg@-^Jjs-za@VNZ`GbpNqE{ zzn2tChsCwa{&>h#-bG$epYzkS^_tyUeYgL0jy6<1)Mr7!9;1BX26tR-ft2bToLCA> zD%3oK{h92hFVsFUk4D>Bij?!IdI;f<3TRU|L0}7Ko`#%fkQkR`=2&Lwi)!PJ5YD-^ zH*I}Giu{K|LcQ2duja+umNYYlh8?vAH~tPn(~w-7mcV|6#BZ34B8@KF;RxDyw3pZU z2kU4YIyAeq{QJhdDkk3>?*LBs^GcqcXg}ZYfKJQYjdWd1Qa#;@eh6J@@~FtKhV9u6 z>^+NRA0*yh^pnQrXII-&+e8y%{4N)|kZnsxPk`0zekXZ{{JZBDPd9cfA9z|Py|<^n zo>sy!13qQx;%Lo?=y8VpV(w0){6gxlSwX0yT`e8jKic4Cw5$NE#mSBda(d#B8O zFUp-dF$ZU?Qgd|_zcCKTMS|e*KC?TgOc;yPf94bOG!++3*nJ06K+_;8Q3rL?VpWK#mpM}ARO)8lS<^WJ-U8n{wTQVPJH%E2p_>#zM(D|Iu{HedZ) zjy_CpOsZA2(ciD@-pPBc6aMHm8GdqQ1nOz=W9;f`y62zCX-v|itST+6moA!o1?ah7 zRGZHqINZ7jZTK-xLkUE-!Gc1Ac@po_<1Zg#SB5RihFD;_F~?!^L1V2s>KZ}ox00}r z4@R6+)nay-u@Z>>jb))NB8m#NJQ``oDB^dac6&^#o1u$&4UVdugI%ux5pD0cYU>(V ztrQ84HgA$qG?Kyl_Bv1Q-=gTk&pLc8kY{O7IXob$a98w<1GS|*XjU1uJa&dT^F zKi7*x-$U&OFrIGx8K;@E%*Oety!bUQ*d*`bV{OsuQa@E)xkG^ZBO5)r9KXMx#9TwV z$CRXPGLd`=0fH(e0E&Asxp+kA;)|o|tCD6LXBkH$FAN~o*Ed^gurX3-s&)xqmM6|H z9w*T2ft_oc6%l6;j7r##&)XT(_CrU^N?6Tt9FsD1lsc1AH2-Iu;Gf+b&SGH$@VV?STs(NrOx}BbKc5d~s?mx^jt(?0 z19Yv>-UYR>b5uow0;S#~ypE^&ERrmc#OAH1X~v@eHEq=dn2ZnJQU=%rJ#*uNuf zlmv^PA&};cKWesepLdJ7$JT|@Fh1Z?aJKHNE0ceWx8&X%_~(;li@S(_A7}$D0hnOH z9nM)75;syk{EjOi>J=V+pO2B(`?;6WHaYq0^`%t7 zJpeHBHOZA~^m1ZTq%zT_}PxH#efRHekSkO@PYSKH`<+Aj6k*2K-fn{T8|%XIG4 zm`9WV@h@M(MuMI0?11LV${}I6b)J@1vCD{chwZnEnp?6q zZdkdW?(wlnR&U|}z$J4VMJB!SNC6z{H0Ksy^9ej-5_kS~x;M*l^Zy=+ai3tRuqwC2@)<)XZuaEAHtvpQqARPjYZ|Y`Xe9jNh zJuSTv7%??a!e+K;kA7ig_8u{5=1mc8jsGFC;HieNHOfWs*#ui#^3ONXb1eqOtlwfzZI^svoWz`Z2r?o0+RVJ|Un)3h6r5sDkdu2$A?Wm4&~r-5&0}eaDc4WDy_+yVL1D;l#H;eN|IOgO zY4tfYABXm|>Wbgftag3Ga{O9WoTF`G;U~;Z8fA!$mGjHjkrS2<0vb|RROxE@Q z#Ky>uyP)SKb>Ve7%$zmxnAMdH{59&N_L#nwvw6CU#RFvuMS6_pEu_c&@6b2~NwUPf zAAX2y8piqs!8z5~69B%H$X3S9UTAvO`Vw_|=51uVo5LO!oQs1i*~at2AeGB@q$4cH zGv~RS1$pRIFW$O-M4oE$=VuU2+1(@9Et-u9GEF=U>Xz{OE5IWpEb{>7fp z7tZ8>(K(GMa;?msxeokdHb?8B`5Jy5S9z{^)lNV5;`9*OX6TM5 z8j>=#=56Z73tAV3q$_3!ejG5}{6zK&DD%a8n0NF-)0cx()|@?EW^SsMdeM_q!`hjd z*@BIP+XoaI9^~25chX(VnZuo zosK`cnh}V{Rvr{YMVetIvk5|7baRpj#ivkmqF~e>bGHBzUmYIsA+P>WQ!M%IKSO$> zs+I5eIJKZ9eJFHpqHx(?V{H3)`=~NBH8)Aj7N7HwI~3!bMAlLo(!d7!GFq%FL=}$ll2F*f(zj$rr0R<0&TM9Yz{R(=5znsi^+Q_CgF4 z=d?S4eRyl`?`*rvZszo$Ddl;u?CtP!h)CVEoh_9hsrra?+s=}E?Y8N&DbxGg4_ zsN2&3z8-X;SqnP1lF~ z%@ub$FKFs(oiLZB$XD75tiP27S9v zVfRueo$b1Z7-&F=P>@)0jxbqTvCFA}vt{^Vel+ z%JaIX^m~!JrPl{DHTC+>mp;4;o*1`H8Eds0OLIj_b=g!~ti-}w93)9AcSb82H5mZ~ zcY^gw_k(|^0#vP*TU-N~ieCXyxKNeYc7h*%_h7E;&jm~JyD1kQ47NhbV6n|ig2TtI zhZL2ABy)I4B8DNsPN-4n8PmR2@JHo?*-LI8JDTc?x*DYB4bC+6{n+TJG`}fMVfzZhGsM?(*=nLBD8vLx zsri8t8F*`zZ0{52RK~wZ?iK0PrIxA7m^fa2sbc2N#&Nz=C7}=BXt6mrlbth+eM>PJ zIthov_y~{5;GjE<=_rG_7N(rJXQm<}m?S>aLPx$g8xBkuCDJf_2 zxgRt03g>Xd=US#4N{{nTS=IkiXUq?mS{`+BuT|Hnk{p6H zMP?+@DuCJ;-JD13u+Ku&RuQ@?2qO?0AwGu9Ur<`}XEe87u)=w}tSo!iN5+ocs)3%z z_OZ8}i$;rNUPMN_EOm>(OLR+6dTiY8)+CHdp6%t3dZ)>M0kz=fSVs~cXJqMPC_TF{ z%0C<>DyQWXwX##(v{{jP`7|v-y&2>!Gt8g2Ynq;zTKKaqzC$l1V5vX60uW&fiT8Q> z*rjR`7E6)YOF0p3T?q3d{?;6FY3pifaj{{hGE0>4K@-LXFT%RdD-qPtCBD~K_3LI4u(fP z#iq8Iz(wjy1;_i^6h>E^`K*IOQJfk#i}Al&7>j71)QB)47js6BYV;(1Ic?0%Gm-Od zrCH*&;m>(&W72*OSMOj3`xSW*C}&RFKDl8{Q|MtXae?-uEkM^FtVU|uL)tK>1t7(i zQ>%lV;TPWfL-p24YpcP)uC78U=l3{27`M=P)5NPKr%9uOi3cDX_^XeK<5_P0y0ZDw zjdc}*hVey%+)v#CpX-&@VabNtYY=?5X-(?#K&y2kZ<#}}{se8KBmd)LrI6n$=)Ot2 zBUa*4p{1IFNor>;-`{|=k^5T+dNqyn8 zqD?S8bd~%Ck0?3#Fa4Z{TW=?BZq$T zKx8O8B1slFTreKEhAn?DNjtkLqq*djxZ583h4=A<0H}1LCwv(F%lbP@H-*M-l%&8@m6i?`l&i?ZNZiK=gntTKD&bcEwhfF# zyTA)fdCGC~#d>gH?w@HTwue46DK1t zzF024@%N38Hw18Bw$TDQkCLXa4j*;`;NNwp1cH2)PKJZ5iitP`6>=@`y`>S3^+YEX z2o)mxU)e$a~z`7bm`sZ(*zay4Lne( zhZyt^?oa+zQgM(A&qZTfGMTq&mC?L2(ha{SPt6R`*n^Cm6ES!pqSXUta10DX@z>Fb zJyXwb4GA_~$n=g|5fVY^g?ldZqoP4CclZ?$;W{CYHp0k(l~Y+~e^H@tZ|_celf)fN zChNT{8A_X?A%kSB`;nODFHq5KD9vsNP*}^RE!~Oh zDanrjhE)5HMtp@qnqv?_pCd*YVCL}8w6)E=HJ8gp!QU7<=$Cx;N$(@yYuo|t`>6+J z8_N0#TZr38Rmli|*qG(Vr-qHFRN|QFlvLYutOD&Hb3Wu8CXN&AFOHT58EyBbl2(SkpmG;Bt!Wd0#&v88X zad11x5QUe-)a@Aj?G8=67D$YY39pXGzIby0sPX@~*JL8MfnzPHERi7^SU}wXz}N#& z*Iuj&zbcEV;D2X%4^WNl!i{`SDWouPCzMw@DfaFku3~}mK5w!a0rqWYZvFA>H@f8e z-8Q&<=t&aD#X|)=bC^buzFnK{;X|$K6Jg3-`HCPK3Ds ztMX3bLF=LL72q?UelOaSxsc>HcK8a|(y@P$>IfKzm=V#$uFs^lF9&c#Kf!_YddNeYG@TzDuh1UM9vFKl> z5yk52_i(W|`eqf!Qeps)^=B%2y9wuxdm%V;Q!ivwwYwxFGbdH)kuYb_ z>dT$)k{z*^hR&CL8Xi}<;+G!11cc3K@89!Nn6fC<{W!s+n8-&ZNTNQ%LP2oAKe$)& zT@jif3@x{8EfZBwet?ncflewiMx{0KffwG^{`q*wyMO45{svM{s^9RB#T$&!?V-H401VzYdBLtq63SgdhEvw9(Vx;n=4lbm% zObuTJz&7jq-Ya{^_lO|)=UvDL4{3Hfv%dn&7W>#K#ajUE!>nYnZX|rj#tYYcj8Rk1 z_CZ}S$4l2T`P9<_iFLzC30uU49lIgK=d6B=r4i2qv$s{JfXzU}TaI3XYh^V&%;m4f zF%|qCnYmnZ8`@n|ummT<=x*C^Lq{m+u9&g!9T^Q=-I@Q`U;0|HVvwN(+Gqb{%24Cw z!GG%KMZjJBfY?cZixW*>Z?5vCP_Y3PKQAy+bN;&(2J#_SVvx=33{1TbMtsAt5C(}H zpmQgZ1$T1i{Ds|>H_lXE?^m3rH|f+jcHG7o99>$VtUUhX?18oOA(Me#rNvx$C|7OIC}ZKB z3cy=lwe*@q*Vgt~80NaFTD>3ol}&L^bl1eHmUF2XhSBC=5#9ld^0xcT~3J74c&>Bub)26TyqQlvqz}x`tB?734p{9kB1R({m!(CMEV* zpv2ppOgMvVTXP$1i2F(?*pcp~Kwg1%cKgNfogcl9qym#A$Eo&U%>4F2cgHOuTBbI{)#BZoz1JA-q-O2vCF8{1F0R|GY zrOk1yk=0G9ik5s!JS1XBUJiH&h80Sta+*HW)p{$iV(PeY_jv?H2;|o6w>pbCUG`{H zMf@d@-e2)QR)Ny2J&@8iIrG-c)Z}0l|IonAwDNwhc247)~wN?P_=06|gFr;u?gzg2cP}HV{h8>u4x_?*;DIL|Ue9bp?-^CT& zE!J46VOov`i-~BE{8Nklf41JM{k`F?d2>dQv6CE8)C(dv=tI7M2>*xyv}n*s^C#;8FNx`{uoaW4S*;ty(6us~BwlFCb0_6DZ*(7K) zoYYHtf4zA*cjDG!eFXEn2uq+GAykQXf9vbw?3ymKiSqOwjBzqBu@QD*2>{yy^JeHV zOnF70Z9eY>v2d^vBP4zqL1LoZ$!uah977y+$LL~=!wB065|Fn%jLr4bn4(?xUr-Wp5Z7UeC?)T z7Dje9$VI)VR)lmU0Q`4(S9)_*j^7TxoA-xF&FAvA%o~Utnix{{Z&QLUi($Vukp<4* zuwi_MLwOALE#8w5Jd#vTBukMhj>w2Ge8dDlqCGGo%bYWOo7+y z%8k+9vgEk6AWOr{RhE3Pm<_W@6!HPeV1>BS;$kv{LNeD5&CP9@v+3}oL*MEjUn8*0!PKMJRcjqzodD88?}LE$y6YDpZ(scaYw ziD@&A@!*T0yQQ>%v$w+QpF6hNEX9*&)*DL4bJ&QkXc(_o(79H%Z@FCg#2V&HDzKXE z@ZH0#jDM@;YD;H|dM(bjKN0J#mF+vI^n01ZeA3m?e4La=bKd24q{IpH>=My&t(wq7 z;SGtRjjoJd%^x-`&0s1QVo6snjICy;Q(57HF-a9FANB1C=e+64Bo<#~BY-^%&jG`3 zK=Gdz#YEc)U1{bCWL(OaJkj- z=FpqGKC){w`JA#3gQOYz-r=6`s<^>>+?5LKyM4G+ox+`WU5SRH@csWuEq7i=-MjSi z%=h4l!FYMHd?cj0qKN>tba>ZZx&G8;M7b*c_M|#EQS=J%N(4l8x_T#^38BuK&erG% z-R}4coy117CaNvT@tYAmTW)=g-25xrcjR#OjSBQur4P{bBmdwkr`lR4KUD?YhDgI(c> z;|VheDt+tIVStylx)2)uWAN5S`bB-m?UyiR3<@PK54CTf$kBTtP>7ThU$@m}x}};? zz>3W@D6O`m#!9HZpx3Mb_scL}a2MZZABJu7?A5qOB^+UEZkIfKwzUqraN^ zz7&7Z^Wy;TE1*3v59>bKIa3NGNd@r&R)QQNL7jDO zKzLkU4KjJX zJvEOLN?35@D^D6Je_4oqH$?#>an9;4 ztPL9Rjh5`@uA4_S&$iiMr{% zjL-jQwW_|9Xh+&8FdaGcEzD)k%kRWG#$2H)r!Y{;MlO2=Fbr5#{J6ZjM3^Uq~1nb%R&yH z<99%g`U`|532%Wx?itU1UzcL(Zt$zUYh1v&Q7#eQ<6Et1S%^3S(t*2QB2SM@W&Mz} zgFUPqx%0%BgKLAT%ddR`E`Q*@utU0|L~w;aGKP)Vhw<~tUN|U~8p@y>Fx!g@;fk5# zULgOv-r#?o>)lW126EsQB6hsLDFm}ytrOR1ytsy|oS~wn@ap0QgKowaUGaYzy+uw+ z_;-uMy|S z3-SM)U(frHu=gp&BY$|T;G^NAb8ddNc>ftgtgtds24h zO6l%(VAF4${QROdKCsjda`rJDtoRe&Vm>3M%brEf3E}DzL0bn+niXcf5>WISnpnG{veLTF{DvVWLC zJh%P<$8YpHfAVGW?{=*+85M(yay5@-FE(cs1t?^Ihms;Ja^-|u`VvRXi$=;{Dp79u zw|Tz=H;iiBt1jMBD3U+gn{VB;ox^X;OM%ii2X_I z(g;U$ZID9l0JaiyGi3_UOd04h0||F&z{hdpc_7=*-w@Nq=`VKam!p(H+DLq6*9;(N zD+qO?R8ZP3)vnymwo|M4Tv9t9e?f>F7d5D$l>HH*K-2%6$jwxfmOY2T>&@)890&Zp z&)Ipg?qr)4z3m$W^+b$eZHGj7Dc8hEhS!4GouaMaK zfV11LtzR>j<6Axu?+1p|Z)A?+7pYXeclRTlgrC*oB-4nCL=6OYdE$qE_i~kG!c1KY zN!IdRZ<_#h8LbZENvcbqu+~Gpm;PQ<_|P=jTyVdnS57&fU7T~jQvy&RGkv; z0Q~uQ?p`-WTgRZNM!Ux5#GQgVXX19OySy}`2%|LxfPE+4(}_wcKZ8UGu^TAdmp8Jf zJ>H3UoVYti3ZXgF%ReWNNZKY^oBr|>VX(NpFVsFogW`KF$|7hVyJ1|lN>0GM_Mo}q z@vge);a|;6w9G6gzYQ8C{G6YqDCk7iOYaO$x%i4~3Thx$tg0|WiV(6ANd1ezoKyn~%yOA%!ESY^7#xW25sLw=fU&rnWlq*>nyoN?L- zKzBkuQ3wIr#u`nQQHYX>f(7|vr_Y?e#g$kor1vt=Qpy*kjEKsWIuD3c&kxH8vpN*M zG1Hf>56F=54+qrby<;<3+|pk%Fd`KssqE5ilA?mRcl`9L z0~1InV?(TaQ6B6A_$U=T-5mJ+@+{?c!lWvaAKKeBb`?RTp*AEdh5JYK%9We_IMf%| zPi*{Q0D{eUp;o_ngB9jc{Z4Jlw5N4j4xQIC*_S~s4XuRr2ff%Rb#KX#XA{)gl(!9% zs@3TkWE=d#M15<|`+7}f%ci3{kU2RucFN*;bf)seB*Y!1Pa54v-S~Muf3k=NhC~>qa23IOHoSqwuCeCfdb}RxtKFG=X9l(|ngBJGo(Bu5yS~J+VHV6li9OND57XbP^ zeoqiLLp!SxQq>-b1#`OSb0HW8FT-5d?H(tY+m#4CWhtR;c%hg7{E${tr_BV^d6<<1 zBtSaHPYrCfdVL(Hzb{Rt#(qNvxzy!!6^a<~_WB@2EDS$NGP!SYsVBL^aqeJ<>?7YX z{)kUauVcP=g{XZpe89i&td_Ycp(2rldfZS5ve+y!d#LYkIf4hW& zFaJ-s`H}743bvAKcnWO8JBJzP=kkE}iZHa=iwG3)emJ725M6PIBJJ2ftlXyil%;$=| zT4B7{^ZbdF_AsB_dr#jG!b0dDlXYz*YdTL7jUc?WnIIVcY^gUshjv?h_}WRB*B>Uoav%4`7ek;tOe#z}NdA{?485t2^_z!|fsJ!S1-k4H6b znQs$<4Oejq^2h1XEcX2HIeB;?+W@mfy^%LzQ}3{IXXp8-#CxY=rFqJUS+^Jy1sOZ6 z|MxT;wGnAV23?eeupR@xPZZUKvsL#MD!aAze#PH2tuAzU;WF~xhVfcGZBi{J6RlGA z?x|IL5=^?EyKZjB+;$Rrs&?Wcq#kUGkuPbV7p33$#*3>fLh0`y)pDk`4LdsM?lqqA z`MG$1K`ha&BHgdpweqVzmvfqol;QIKk~-}%hb2-v2G;XxfhoF34%>5&RB85{DO&;N zA3zT8MlEZFgeYa5Cq+!M&(E2|bAORxzNgeWK9RoRw85s9n4-bB7ua&^PzIH{i$< z*J<%^TFHgx6yPE9G-ZyB+5E17EQb&W2Gr$46(`4~*AlIssq-fIRugQ^-|4GUdTKb} zew{Rsy<~WCWd;o!FBw9ZH!1sqnTUW&6mLCXMrv*B$3tOJgM+7%gyscXcL1hg?=V$i zEm6&TCA-23#g6o9)Rk75wuo2z=BW;C?^$9@UJxDBU9uq$BMJ9%l*{xCG%UR@Uk78% z1a31z^jXp+9K(dG_-69%J>0$nvl0w_ z!>g%w+DmIud=MxsU(Hg%SHU9V@LYyRX5CtK$Hb)WEcitxq9Ou_d9!!9mRn!ofq^&SGJoU!&dzs779)@3gnFTxf&#TJa$hSP-x zGDe6G2??_;qsGRQs`AX71d2QHTB&{-Z|W2kg%qrQn@m_|VH1P5h{3=S8*zUv5176O z{HpqdJt9~;9^Ei~PnA{=Oq7@Pl)E`aj%Pm8=tViUJZ=Pi-hbEB-{moJEECKlaKl=x z8sXu;LH65)3l~8B7Da~}W6qn&VI_qQ1U$pDLYk zq2H63EaO2R9-3mJ*Hh&3MT-=W6_~@e<3-ozNBiOel%V`+v1~-&5LljXw718z#OI~E zr%V0Vwh!ux5Owk1!uZjQyHHuxX$9I2`)ccU#jt^0>U{0C+SFl5C_4H^W$ycTAJ02L z_6WSfaoRN$ysBWkd^#?|b$fOShfX61Q`Z=j4BWHImJoH?>x24z+hx>q{WK||Mb2+R zAcb;z;e_lP9ATGMHx4l;2L?~fD7o-Iq;O$h(x+TUmP^6>MZhnQqZU>7-)6MD8!Rh6DGh$Ve;&*_H0{p9A z0@05~EOB&A0L_ha!j($!vmU~bBJJ8$V`2Oco(3+3Vc)z z?pJuLAdr}L)N#(@@;4-H^T#%ooF1Bzt5P=}e_uhO4oSf)$)KJTD*fE2|Jn;V(lYm8 zjwvvTEm~30#$q6wKA)>{>p{(K92M-LU*$>?K6m342N1aa((0@LJNDhHL4fQ6R3oDT z#)v`B$AZ(02hHaUE9r_4X|W!cHtFOSjzNgit++A`4gP~f`s`#|nE+5xdH?$2e$-qP z^TT)ihqAywl1Otf{ZSnnBnz6dl*8*7c>uuR&%TB7Jm_Lhgq-1c^ybO@PihHtxBf9% z72kWap&3q<+S1##JeoCiD5tvfYB#w7%XD=)+Ui@PqV(HA>U})%1H0}3=W}}jo8*JW z2P}56*}|RMvkTYLj3~$U@haO)g^4voBdh442Z0$tLw=`3Jg)eA-COuf4nN`-W;wMv zd`#)9(}LO6BEy^N;`}iT_kERJs5tB?EI|gdlTe?$d85~KbQbh{AtZ#DGN1j$lPn;I zGMlJypGAaGKtiaxEP-6e9)ItoRmwHVOgWr(Q34eykrgRzzi(@Ey)S)hkKZlxlym|H zV=kmYT~dx>Dr=fYiHePR{($32Z|{5iCZ+R)1H!%Bg?Tf`-Ws?rCt4popzQU&zyOa7j4g6h~y+g@M&>KuSQ%ubuE)& zSjdbs1iZiby8#C3a1$H7u=#ZD56gQyryPpoPYBw))?+n#lML|jL6O{W()NgvYDmO< zZFQr_X-?tFfvS=(QVYS&Y1T#!gKUzQKIpqC6KtE-oZA#FD2heB`>Sts2bkN-oWYVf z1_;!`o;4QsMSO1hw7=1w)owO~;D4DvxLs0NQBd1t&pFo?kiKqUhEwU`_*&!tuiyFK zCJi2E>$AX^RVI_r(ZXOJ+?GIsI8X>eI-{14)}w{2zcUyOAT>T3MB#K8WR=P_d?ga3 z87h8ryF>3lzQ(tP>Cu@T(bV;I;W26ydY%;sZwWxS=31q5B|R`f8?zLhNt7um==DoK z((SS|QCvM^t<6+QvP^zitV$@?U7}AwSMRK%G+vQv`rh!&-w}`Hzx7kwOLSj<8Lh|5_H;4c=KYTP zKuU(!(XsX!pgZ2VHg&TYvfu1{s|f$cS$9JzTJi$tkY}*MmXTR*VLr(7iUF)O`JM@< z=Q3sDGM=N|yvS8wc&KrX&5HFxLCWn8@ht$G+Gqq~=so8!+y&NNWlmR+hL<^NNi1cE z6VWu|eFUTV$qYbqEEPtjEr@)FPpVHXqn?mbmoR8}9LWg`(62#X3C5N|S(S7q21&@# z@wE3fo6uK?T(9!B)|if{`O`N`zlGT`9bfhU&^HZ%`rN~xc}V?E#ufS4ajVA|4DCo7 zzh|#_TF zd3B{NTkA%)_$SS4x<7pMUH;Lts5+2EXI`6bcL?=yWs&{$r+C4-1kok26!AT(W-yvr zCC%z!skPlF_LGknCcDUDqH}n87d3^RqDVzmO%oAN;6H zu1$55I#IVJy9t`N9s|j@KS`z61LG$@67eJ})+qLM@peRL=7sVOS|`s5)OzaySmX(z zIUFaeZ?L;znt5^WyZ&p1lXf6TW%TALeU7Zf9pG2Li3tvbQ9<`h$?Zq63MzQaZY$LZ zRMfjea9!wB*owovsuA1hAcYp;WVOV1DDXZjkfu(Hee_H}ds)USo*~FMcT`W0L36SM zHpRPmtcOYpW*QHr@~Hp5j9)cb%yQ9VF)naHQepoY!i^71Jw;w5fc9-iaO?7F3s*Xw zFZFmP!R>~{cA{%#FKgS^8derYV|UwX6Ybi;cvksC ziYzSR0bvWKw58Ovzi_cK+ofkEJ|<+mFkfK1!waGI0>yTj)zi`&=Z2jsUHsHb*^T1& zKq{E+O + + diff --git a/site/images/icons/attachment.svg b/site/images/icons/attachment.svg new file mode 100644 index 0000000..f114ce8 --- /dev/null +++ b/site/images/icons/attachment.svg @@ -0,0 +1,3 @@ + + + diff --git a/site/images/icons/cc0.svg b/site/images/icons/cc0.svg new file mode 100644 index 0000000..195592b --- /dev/null +++ b/site/images/icons/cc0.svg @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/site/images/icons/github-square.svg b/site/images/icons/github-square.svg new file mode 100644 index 0000000..8d2921e --- /dev/null +++ b/site/images/icons/github-square.svg @@ -0,0 +1,3 @@ + + + diff --git a/site/images/icons/github.svg b/site/images/icons/github.svg new file mode 100644 index 0000000..91803e3 --- /dev/null +++ b/site/images/icons/github.svg @@ -0,0 +1,3 @@ + + + diff --git a/site/images/irc.png b/site/images/irc.png new file mode 100644 index 0000000000000000000000000000000000000000..ae6162374ef9d780e98ddf063931fd1fe5d6a33a GIT binary patch literal 12399 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 literal 0 HcmV?d00001 diff --git a/site/images/me.jpg b/site/images/me.jpg new file mode 100644 index 0000000000000000000000000000000000000000..989c246c01f71fb639fbda120eb361d479c3c19d GIT binary patch literal 61908 zcmbTd1y~zjw=X;)ffV=R4#g?%5@_+_?zB*}I24CK3lth$N-2e4#i2M9FYXR4(&ADy zxRx*f_nh;d``mk<@B8ju$(~u6?Ae*MXZDicTDkvmzYGwmDXA&}AP@kkpkKiK3dmj2 z&(RJ5G&BG%0015Um>_BZ6V0K!0BRtbfAhK^4gmbG;~3~K1p)LHAVW9PC`SPDuj2sV zir)W2=#l?*{=fEu{DS^3MzcfE+Ez6adq(Dbu277X!ec#gGHA1cU^H1qEp_WPu0&{1CsG zfCw#y*#G!J`oB8;$5?Ft8jI-D#nPXq+)@U-Uy%bxO0miJ9RTqI3^)cH3}OZ_h(Tat z(0w<+fSz1T(7)(kr=d6Ksf1u+K_6h_;G#R!p>F~R490+fF){zSOi=JYQw<@;Bw-Se z$0F5v4rTTr6AVktdBCDj)k&^9al|V0!ZREj=OG0p6*b!~!Y+u^hJ2*OddHcNf_45yS^EM(f>Roh9QgTXa+K2Ry8M%4+1z!q_ zic6|%YU}D78k@d-@9OU9?du;HoSd4TnVtLbbADxYZGB^NYkTJp>iFdJ?EK>L>iQqK z(D(K~#6oZXL$d!#F7yKh!hk@)5a>U0fiQgk5u6x;$s~Y9BCi8|?m@~d81{fnAu*?_ z6Pray_lW$3=LF6}R^b&k)IXyAOS1oef`$KIN%n8S{#&jE;0b{7F9Ks=fHA>fFeVlz zny?;V{X-9M9{h`N{*&xDbqbh;h%!;Nvs`XHYfdg`)JL;5iaMEukOT zfR#R0r)aP2IV@4A^;l~IM$w%QC`;?>j^2s)7^=EA7X8x8;=s`3gxI<}CTmu$hYLMX z@95twQh6_6=LP2gkKURTkML-b*@9Cow05R7|hQ zw({yE#%2%_UyQM0Li;LAY2Ks%)+r?{jCUR`P^Wqx4rLb!)QY7hf8o#kwSs1>>G*2b z?7Zslo{M-7;3&b!6_?88Q*zMFg|OW$d*n4{3Z%twATj=zhsWTWGG0<I{b{L|-S#xD|q=wo!Dg;@*Z&P6Pf0%*7U>-vA$IwucH$^+&3K5j@%*x`HS?k zPi&0W@z^_d(vA2%6{C)d3VPxeh_OkQKp!k*Gj-d=$_3gdCae0V<8w>m>~n(4UQryPx&|D zlFw|!Hxo!RsS$MLh%J#<&!gxZK!qDSzst2KOkeO#F5H}oFe`P3bAXkE5C+?SQq=n) z2B+rQn3sK2rSC5k^%3g^wc8vR!!{USOl@t-)u2wm{rI-Qhv#EXiowXt<<})jx>!<^ zSLq54U{wYNQGXGRMB`&;K?!-V$RnM2{1L#JNxnmR>gOB!rV@`_xS;=`9v(po=%ojo za|Nv1RhN=RyIIc6xep^l=$>pKvaTw$dOrA4`y{3l!3o?0=KPAlHaQ|IR+M$NwUe9g zhZ*4k+R*+`;uft(1tsr2m%r>0;Ripy5%YVtYr2HgX#!)&?^uBbg66)RJRho&9VeV^ zH;{W-%IQ5;onk(E$w*%dx_P|39TE55(Hg6hIxOs0E5RtaG{PRe2)|Ei_`C!@sx^W| zw)y2!JA^?+`x{4^!Cd*JOib5+1X-j-H+`c-*+;hu*%>CrJyT$mq^L2q>P?nRX-*y9 zAb$X2j(=>^9Gfht%)g>~LJjT_7RQ0n5nC;!$Jv!RCHDEpp(ZWuIAlwLtd>B@5i|nu zlIg%O|4$mnuBsxy$(+YKSHLM#`e-LpMKp^83~TBq|IEFABIv*8NWTHY&2owu>G+}K ze+VOIODXx_m0fOUVNu$vvWD=`)!fMG3qabKQ^vDXA+fFP0zGw7ikH zVv-Xwdv*G@W)QgQiYv=wJy^@ZEs#kCπLzbAUz&?lId^ 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 +++++ +As you may have guessed from the URL, my name is Stefan Hagen. I'm a software developer based in south-west Germany. I'm living in a small town called https://en.wikipedia.org/wiki/Hockenheim[Hockenheim,role=external,window=_blank] together with my wife Jessica and two cats named http://stefanhagen.de/photos/Chloe-%26-June/[Chloe and June]. + +I'm the head of the https://www.uugrn.org[Unix User Group Rhein-Neckar,role=external,window=_blank] and you can meet me at our local events https://fixme.uugrn.org[FIXME,role=external,window=_blank] and https://stammtisch.uugrn.org[Stammtisch,role=external,window=_blank] (regular table). + +I'm also developing for my favorite https://www.openbsd.org[Operating System,role=external,window=_blank] by https://en.wikipedia.org/wiki/Porting[porting software,role=external,window=_blank] and occationally http://www.oxide.org/cvs/sdk.html[fixing a bug,role=external,window=_blank]. + +For compatibility reasons, this website is available via http://stefanhagen.de[plaintext (http)] and https://stefanhagen.de[encrypted (https)]. Set your bookmark accordingly. + +=== You can find me here: +[%hardbreaks] +icon:arrow-right[fw] on https://irc.uugrn.org[irc.uugrn.org,role=external,window=_blank] ( #uugrn, sdk ) +icon:arrow-right[fw] on https://github.com/c0dev0id[github.com/c0dev0id,role=external,window=_blank] +icon:arrow-right[fw] on https://bsd.network/@sh[bsd.network,role=external,window=_blank] (Mastodon) + +You can optain my email addresses from link:/gpg.txt[my gpg key] or by using the https://linux.die.net/man/1/finger[finger(1)] command on `finger@codevoid.de` <- this is _not_ an email address. diff --git a/site/main.layout b/site/main.layout new file mode 100644 index 0000000..1646236 --- /dev/null +++ b/site/main.layout @@ -0,0 +1,38 @@ + + + + + {{page_title}} + + + + + + {{page_css}} + + + + +
    {{{yield}}} +
    + + + diff --git a/site/netcitizen/index.adoc b/site/netcitizen/index.adoc new file mode 100644 index 0000000..f69bab3 --- /dev/null +++ b/site/netcitizen/index.adoc @@ -0,0 +1,94 @@ += Net Citizen + +The web was still young when I first went online in 1996. It felt like a +utopian dream of free culture and free knowledge. Anyone could contribute and +communicate. I spent countless hours on IRC, learnt html, php and mysql and +created my first site on a shared shell server with some webspace. + +I’ve watched as the dream has become a nightmare of +https://en.wikipedia.org/wiki/Online_advertising#Privacy_concerns[surveillance] +and monetisation +(https://en.wikipedia.org/wiki/Website_monetization[1], +https://en.wikipedia.org/wiki/Data_monetization[2], +https://en.wikipedia.org/wiki/Software_monetization[3]). Companies such as +https://en.wikipedia.org/wiki/Google#Racially-targeted_surveillance[Google] +and https://en.wikipedia.org/wiki/Privacy_concerns_with_Facebook[Facebook] +offer their +https://en.wikipedia.org/wiki/Privacy_concerns_with_social_networking_services[services] +for free to the public because their real products are their advertising +networks powered by the personal data of their visitors. + +I've watched hundreds of carefully handcrafted, personal websites become slow +and boring wordpress, medium and bootstrap blogs that all look the same. Many +of them just disappeared and people moved to big social media plattforms. + +I've watched networks becoming regulated, favoring services for money and +slowing down or blocking services that were not liked by the network provider, +endagering https://en.wikipedia.org/wiki/Net_neutrality[Net neutrality]. + +I watched a network that was made for everyone become a marketing instrument +to influence politics and make everyone pay with their personal data. Mostly +involuntarily and by offering a useful service people want. This service is +mostly not the business the company is in, but rather a side product needed +so people join in. + +The same scheme can be seen in games, which use psychological techniques to get +people addicted, so they buy in app goods, which have absolutely zero value in +real life. + +And here I am, ranting about the past like one of the old people. + +I have little influence over the wider web, but I can control my small part of +it, and hold it to the ideal I learned to love. This page is simple, doesn't use +javascript, tracking or cookies. It's just there, like a good old homepage. + +== Copyright + +Copyright limits creativity and holds back progress by restricting our rights to +build upon the works of others. Therefore I'm releasing this website, it's code +and content under the terms of the Creative Commons CC0 1.0 Universal Legal Code. +You can use and adapt it without attribution. + +Exempt from this release are all pictures that show people or are in the Photos +section of this website. + +== Privacy + +My site is hosted on a server provided by Hetzner Online GmbH in Germany. I'm +operating the server myself and Hetzner only provides the hardware and remote +access to it. There is no content delivery network involved when accessing this +site. This means it might be slow in far away regions, but it also means that no +data is shared with a CDN provider. The server is fully encrypted and webserver +logs are deleted after two weeks. + +Almost every site today includes code that tracks visitors for statistical and +advertising purposes. Often the site owner includes code with the deliberate aim +of tracking their visitors, but sometimes they just want to include a feature +provided by a third party, and that provider includes their own tracking code. + +My site doesn’t include any tracking code, and doesn’t load any code from third +parties. It doesn’t have a cookie banner because it doesn’t use cookies. + +== Transparency + +You probably don’t know me, and shouldn’t have to trust me. Instead, you should +be able to check security and privacy claims for yourself. Unfortunately most +sites today use a process called code minification, which makes them faster but +also makes it harder for other people to understand their code. + +My site doesn’t need to use code minification in order to load quickly due to +its simple design, efficient implementation, and absence of resources loaded +from third parties. As a result, other software developers can easily understand +how the layout, styling, and interactive features are created. + +== Attribution + +I'm not every good with design and therefore many design related elements +of this page are taken from https://iamkate.com[Kate Rose Morley] who thankfully +released her work under a permissive license. +However, the way how the page and content is generated is different and +based on a modified version of https://github.com/nuex/zodiac[zodiac], +which is a static website generator written in the programming language +https://en.wikipedia.org/wiki/AWK[AWK]. Some content pages are generated by +https://asciidoctor.org[asciidoctor] and others by shell scripts or a +markdown parser. Here is the https://github.com/c0dev0id/website[Source Code]. diff --git a/site/netcitizen/index.meta b/site/netcitizen/index.meta new file mode 100644 index 0000000..eb1559f --- /dev/null +++ b/site/netcitizen/index.meta @@ -0,0 +1 @@ +title: Net Citizen diff --git a/site/proza-l.woff2 b/site/proza-l.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..15dda40c2247d3c331efe4132f2c7ab2052ec9d7 GIT binary patch literal 13620 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 GTmS&uXbmm^ literal 0 HcmV?d00001 diff --git a/site/proza-li.woff2 b/site/proza-li.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..6f33969120eb0ce2604a94eb3c1ad0e0ff6f52a8 GIT binary patch literal 14588 zcmVr5C8xG0E3tS063Ze0RR9100000000000000000000 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

    GMs2KhRO z9d1!_yr5h-kPGhpl}%^!9D1p?qs?7e*IUiWY}MCqkyVmTD~W*;o+{p)FXwuSb6Rp4 z_G}th!m3D~FM5B4h#@MiW|{>~##9&T`Cg+zWs?_cn^@!JHbGlujic63<~)^E@@!(p zXN=t0)b!sYJ>u-rq@2{0FKK1qk1R6}d@gcq!KdK5igR4_TxDj$cWbJf!@;`7XKN}KW;`1~HJ!4BKSv9#_y{x4^`WC6pTQ_yfJ6u}zwg%PztE$|l&j&n(Jt8uN@Wv=D59kPzdk^3Dzfr`BZE|tdu2K2Rvh$^WHQV$3{sBRPrr2eNUt)wD3 zZe}MVmq)AbBaPjtn-W$YB7YEm7>M(9LGhDSdtd6_iF8w{tQl^LL&DhNkD}-j6eS@u ziTAa5P<@&KuL9CMJ2UxrarZUaECMg{hu~$#7utn(SwhoZ?grv${;14utt|clauRa< zOPe&sjnc$hMs7u<9JArlFATJSJbba_+K<7VF`M76> zuq&`ChE@Ab*uIw(Pj(EkdkTH?(sonQsAMrC%N&N)!4E(0TgerOG0LYD%AsUhNec`) zd!f+l#9FoBc+INamQtD6eMpotig*((y5eN$g@VjAiQIL>*n_%Pg~o1W`%1yq_xQJ1 z@JqQpDk6oDdgpB?XOxc6X_N{U$R8dZF;gD7v2GtiKs6!&P5^H%NSrG{MM279SD29GyTZk#aorPLgXcgnqanpnFIgSs?p)TBp}EcLQIvPgkK%*CuTc>nCG)aus3r%MtqpCop*YIX6- zlSC*WAW4(x=D5$P&+6lo;)W7#H>7q26Q9{Du)67rGKSIe5#`v_ki-FQQzAAmY$nWZ z%~9T_Qw!xOxLr=&4a2@>(QG*ic@IS`c+nbhKX;R{}DPrdemhoBOnDIRjJQP1VYZ z+`NqfB47xCP=G*xU}3N|G!^>aX8D(lO-8 zNB_hx;+@Ll{s;B16_ixezm#_}#)D-^Tl{-m+&n7HSZz8m2nYV~yPtLF((g*(!5$Y} z^r*`&S#dH5V3VILo3-5oEznYFV;xtRa1kO!iMC3NSaISdprT2XBw317Y0_oLlqFk^ zTyzY1@)amlgsE7GQe{}!IJkJq@l_BI5)qS-l95wTQc=^;($O<8M&ldoXev6rzqtU^ z3`%k(n`EJXBTDzdR%BbGm6gI=j|*QaZDI=nVM3Yfap6m)W0FOSI1#=yv1t%kUVaXl ml?5<_31zOwBa(xfeW|pGT?7OvZDNZ8VL~fwL a{ + color : #fff; + text-decoration-color : #fff; +} + +h1, +h2, +h3, +p, +dl, +ol, +ul, +pre, +code, +table, +figure, +form, +main > div { + max-width : calc(1rem * var(--width)); + margin : 0 auto; + padding : 1rem 1rem 0; +} + +h1, +h2, +h3 { + font-weight : 400; + line-height : 1.1; +} + +h1 { + font-size : 2rem; +} + +h2 { + padding-top : 2rem; + font-size : 1.5rem; +} + +h3 { + padding-top : 2rem; + font-size : 1.1rem; +} + +dl { + padding : 0 2rem; +} + +dt { + padding-top : 1rem; +} + +dd { + padding-left : 1rem; +} + +ol, +ul { + padding : 1rem 2rem 0 3rem; +} + +ul ul { + padding : 0 0 0 1rem; +} + +table { + margin-top : 1rem; + border-collapse : collapse; + font-feature-settings : 'lnum','tnum'; +} + +thead { + position : sticky; + top : 0; +} + +th, +td { + padding : 0.25rem 0.5rem; +} + +th { + background : var(--accent); + color : #fff; + font-weight : 400; + text-align : left; +} + +.repotable tr:nth-child(even) td { + background : var(--grey); +} + +.numeric { + text-align : right; +} + +.negative { + color : #f00; +} + +figure, +form { + width : max-content; +} + +figure > img, +figure > svg { + max-width : calc(100vw - 2rem); +} + +form > div { + padding : 1rem; + border-radius : var(--rounding); + background : var(--grey); +} + +pre, +code { + font : 0.7rem/1.1rem 'Consolas',Menlo,monospace; + font-feature-settings : 'lnum','tnum'; +} + +pre { + margin-top : 1em; + border-left : 4px solid var(--accent); + border-radius : var(--rounding); + padding : 4px 4px 4px 8px; + background : var(--code); + overflow-x : auto; + width : min(calc(1rem * var(--width) - 2rem),calc(100vw - 2rem)) +} + +code { + padding : 2px 6px 2px; + border-radius : var(--rounding); + background : var(--code); +} + +a { + color : var(--accent); + text-decoration-color : var(--accent); + text-decoration-thickness : 1px; + text-underline-offset : 2px; +} + +a:visited { + color : inherit; +} + +abbr { + font-variant : small-caps; + text-transform : lowercase; +} + +img, +svg { + vertical-align : bottom; +} + +input, +textarea, +select { + border : 2px solid var(--dark-grey); + border-radius : var(--rounding); + background : #fff no-repeat center center; + color : #000; +} + +:is(input, textarea, select):where(:active:not(:disabled), :focus) { + border-color : var(--accent); + outline : none; +} + +:is(input, textarea, select):disabled { + background : var(--grey); + color : #000; +} + +input:where([type="password"], [type="text"]), +textarea, +select { + padding : calc(0.25rem - 2px) calc(0.5rem - 2px); + font-family : Proza,sans-serif; + font-weight : 300; + font-size : 1rem; + font-feature-settings : 'lnum','tnum'; + line-height : 1.5; +} + +input:where([inputmode="numeric"], [inputmode="decimal"]) { + text-align : right; +} + +select { + -webkit-appearance : none; + appearance : none; + height : 2rem; + padding-right : 30px; + background-image : url('/select.svg'); + background-position : right; +} + +input:where([type="checkbox"], [type="radio"]) { + -webkit-appearance : none; + appearance : none; + width : 22px; + height : 22px; + margin : calc(0.75rem - 11px) 0.25rem 0 0; + vertical-align : top; +} + +input[type="checkbox"]:checked { + background-image : url('/checkbox.svg'); +} + +input[type="radio"] { + border-radius : 50%; +} + +input[type="radio"]:checked { + background-image : url('/radio.svg'); +} + +input[type="file"] { + position : absolute; + left : -100vw; +} + +button{ + margin : 0; + padding : 0; + border : 0; + background : transparent; + font-family : inherit; + font-size : inherit; + line-height : inherit; +} + +button:-moz-focus-inner { + padding : 0; + border : 0; +} + +button:where(:active, :focus) { + outline : none; +} + +button > span, +.button { + display : inline-block; + padding : 0 0.5rem; + border : 2px solid var(--accent); + border-radius : calc(0.75rem + 2px); + background : var(--accent); + color : #fff; + font-weight : 400; + -webkit-user-select : none; + user-select : none; + cursor : pointer; +} + +button:where(:active, :focus) > span, +.button:where(:active, :focus), +input[type="file"]:where(:active, :focus) + .button { + background : #fff; + color : var(--accent); +} + +.repotable { + width : 100%; + border-radius: calc(0.75rem + 2px); + overflow : hidden; + text-align : left; + vertical-align: top; + width : min(calc(1rem * var(--width) - 2rem),calc(100vw - 2rem)); +} + +.highlight > div { + background : var(--light-grey); + overflow : hidden; + padding-right : 0.8rem; + border-radius : var(--rounding * 2); +} + +.highlight table { + --horizontal : 0.8rem; + --vertical : 0.6rem; + width : 100%; + margin : 0; + padding : 0; +} + +.highlight tr { + display : grid; + grid-template-columns : max-content 1fr; + gap : var(--horizontal); + background : green; +} + +.highlight td:first-child { + padding : var(--vertical) var(--horizontal); + background : var(--grey); + color : #aaa; +} + +.highlight td:last-child { + overflow : auto; + padding : var(--vertical) 0; + background : transparent; +} + +.highlight code { + display : block; + padding : 0; + background : transparent; +} + +.highlight :where(.c, .c1, .cm){ + color : #aaa; + font-style : italic; +} + +.highlight :where(.o, .p){ + color : #aaa; +} + +.highlight :where(.fm, .k, .kc, .kd, .nt), +.highlight .language-css :where(.nc, .nd, .nn, .s2){ + color : #c66; +} + +.highlight :where(.na, .nb, .nf, .nv), +.highlight .language-css :where(.k, .kc, .kp, .kt), +.highlight .language-javascript .nx{ + color : #5b5; +} + +.highlight :where(.cp, .nc, .ni, .nx), +.highlight .language-css :where(.n, .nv){ + color : #e94; +} + +.highlight :where(.m, .mf, .mh, .mi, .s, .s1, .s2, .sr){ + color : #36b; +} + +.photo-img { + width: 100%; +} +.photo-mid { + width: var(--content); +} +.photo-td { + width: calc((var(--content) / 3) - (4 * 4px)); + padding: 4px; +} +.photo-table { + width: var(--content); + margin: auto; + border: 0; + padding: 0; +} + +/* ASCIIDOCTOR FIXES */ + +.sect1, .sect0 { + padding: 0; +} + +div#preamble { + padding: 0; +}

    + {{site_title}} + + Stefan Hagen on Mastodon +