iPush new filter infrastructure and a more printable logo. - tgtimes - The Gopher Times Err bitreich.org 70 hgit clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes URL:git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes bitreich.org 70 1Log /scm/tgtimes/log.gph bitreich.org 70 1Files /scm/tgtimes/files.gph bitreich.org 70 1Refs /scm/tgtimes/refs.gph bitreich.org 70 1Tags /scm/tgtimes/tag bitreich.org 70 1README /scm/tgtimes/file/README.md.gph bitreich.org 70 i--- Err bitreich.org 70 1commit ab8073181d221ca5572653bf5c219c8037e15a0b /scm/tgtimes/commit/ab8073181d221ca5572653bf5c219c8037e15a0b.gph bitreich.org 70 1parent 79cdcd13e863b43d9a850533fc59fbca84cfb232 /scm/tgtimes/commit/79cdcd13e863b43d9a850533fc59fbca84cfb232.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Tue, 8 Aug 2023 15:45:14 +0200 Err bitreich.org 70 i Err bitreich.org 70 iPush new filter infrastructure and a more printable logo. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M Makefile | 21 +++++++++++++++++---- Err bitreich.org 70 i A filters/markdown.filter | 48 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i A filters/title-boxes.filter | 34 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i M opus7/0-xxx-header.raw | 32 ++++++++++++++++---------------- Err bitreich.org 70 i M opus7/1-article-athas-shell-redire… | 1 + Err bitreich.org 70 i M opus7/2-article-bitreich-library-o… | 2 -- Err bitreich.org 70 i M opus7/4-article-tgtimes-most-minim… | 18 ++++++++++++------ Err bitreich.org 70 i M opus7/6-article-bitreich-dj-vlad-o… | 2 -- Err bitreich.org 70 i M opus7/6-b-article-bitreich-gopher-… | 9 +++++---- Err bitreich.org 70 i Err bitreich.org 70 i9 files changed, 133 insertions(+), 34 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/Makefile b/Makefile /scm/tgtimes/file/Makefile.gph bitreich.org 70 i@@ -11,12 +11,25 @@ all: ${tgtimes}.pdf Err bitreich.org 70 i mdfiles=$(wildcard opus${v}/*.md) Err bitreich.org 70 i mdptxtfiles=${mdfiles:.md=.ptxt} Err bitreich.org 70 i .md.ptxt: Err bitreich.org 70 i- cat $< | fold -s | boxes -d boxquote -p a1 -s 70x > $<.ptxt Err bitreich.org 70 i+ cat $< \ Err bitreich.org 70 i+ | ./filters/markdown.filter \ Err bitreich.org 70 i+ | par-format "78" \ Err bitreich.org 70 i+ | { \ Err bitreich.org 70 i+ boxes -d boxquote -p a1 -s80x; \ Err bitreich.org 70 i+ printf "\n"; \ Err bitreich.org 70 i+ } \ Err bitreich.org 70 i+ | ./filters/title-boxes.filter > $<.ptxt Err bitreich.org 70 i Err bitreich.org 70 i txtfiles=$(filter-out ${tgtimes}.txt, $(wildcard opus${v}/*.txt)) Err bitreich.org 70 i txtptxtfiles=${txtfiles:.txt=.ptxt} Err bitreich.org 70 i .txt.ptxt: Err bitreich.org 70 i- cat $< | fold -s | boxes -d boxquote -p a1 -s 70x > $<.ptxt Err bitreich.org 70 i+ cat $< \ Err bitreich.org 70 i+ | fold -s \ Err bitreich.org 70 i+ | { \ Err bitreich.org 70 i+ boxes -d boxquote -p a1 -s80x; \ Err bitreich.org 70 i+ printf "\n"; \ Err bitreich.org 70 i+ } \ Err bitreich.org 70 i+ | ./filters/title-boxes.filter > $<.ptxt Err bitreich.org 70 i Err bitreich.org 70 i rawfiles=$(wildcard opus${v}/*.raw) Err bitreich.org 70 i rawptxtfiles=${rawfiles:.raw=.ptxt} Err bitreich.org 70 i@@ -31,9 +44,9 @@ ${tgtimes}.txt: ${mdptxtfiles} ${txtptxtfiles} ${rawptxtfiles} Err bitreich.org 70 i ${tgtimes}.pdf: ${tgtimes}.txt Err bitreich.org 70 i u2ps --header="The Gopher Times Opus ${v}" \ Err bitreich.org 70 i -f Liberation \ Err bitreich.org 70 i- --wrap --mark \ Err bitreich.org 70 i+ --wrap \ Err bitreich.org 70 i --footer="page #" ${tgtimes}.txt ${tgtimes}.ps Err bitreich.org 70 i- 9 ps2pdf ${tgtimes}.ps ${tgtimes}.pdf Err bitreich.org 70 i+ ps2pdf ${tgtimes}.ps ${tgtimes}.pdf Err bitreich.org 70 i Err bitreich.org 70 i clean: Err bitreich.org 70 i rm -f ${tgtimes}.pdf ${tgtimes}.txt opus${v}/*.ptxt Err bitreich.org 70 1diff --git a/filters/markdown.filter b/filters/markdown.filter /scm/tgtimes/file/filters/markdown.filter.gph bitreich.org 70 i@@ -0,0 +1,48 @@ Err bitreich.org 70 i+#!/bin/sh Err bitreich.org 70 i+ Err bitreich.org 70 i+export TERM=linux Err bitreich.org 70 i+ Err bitreich.org 70 i+reset="$(tput sgr0)" Err bitreich.org 70 i+italicformat="$(tput sitm)" Err bitreich.org 70 i+italicreset="$(tput ritm)" Err bitreich.org 70 i+boldformat="$(tput bold)" Err bitreich.org 70 i+boldreset="$(echo -ne "\033[22m")" Err bitreich.org 70 i+underlineformat="$(tput smul)" Err bitreich.org 70 i+underlinereset="$(tput rmul)" Err bitreich.org 70 i+reverseformat="$(tput rev)" Err bitreich.org 70 i+reversereset="$(echo -ne "\033[27m")" Err bitreich.org 70 i+ Err bitreich.org 70 i+redcolor="$(tput setaf 1)" Err bitreich.org 70 i+greencolor="$(tput setaf 2)" Err bitreich.org 70 i+yellowcolor="$(tput setaf 3)" Err bitreich.org 70 i+bluecolor="$(tput setaf 4)" Err bitreich.org 70 i+purplecolor="$(tput setaf 5)" Err bitreich.org 70 i+cyancolor="$(tput setaf 6)" Err bitreich.org 70 i+whitecolor="$(tput setaf 7)" Err bitreich.org 70 i+darkgreycolor="$(tput setaf 8)" Err bitreich.org 70 i+brightredcolor="$(tput setaf 9)" Err bitreich.org 70 i+brightgreencolor="$(tput setaf 10)" Err bitreich.org 70 i+brightyellowcolor="$(tput setaf 11)" Err bitreich.org 70 i+brightbluecolor="$(tput setaf 12)" Err bitreich.org 70 i+brightpurplecolor="$(tput setaf 13)" Err bitreich.org 70 i+brightcyancolor="$(tput setaf 14)" Err bitreich.org 70 i+brightwhitecolor="$(tput setaf 14)" Err bitreich.org 70 i+ Err bitreich.org 70 i+while IFS= read -r line; Err bitreich.org 70 i+do Err bitreich.org 70 i+ case "${line}" in Err bitreich.org 70 i+ "## "*) Err bitreich.org 70 i+ nline="$(printf "%s\n" "${line}" \ Err bitreich.org 70 i+ | sed 's,^## ,,')" Err bitreich.org 70 i+ printf "${boldformat}${underlineformat}%s${reset}\n" \ Err bitreich.org 70 i+ "${nline}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ " "*) Err bitreich.org 70 i+ printf "${redcolor}%s${reset}\n" "${line}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ *) Err bitreich.org 70 i+ printf "%s\n" "${line}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ esac Err bitreich.org 70 i+done Err bitreich.org 70 i+ Err bitreich.org 70 1diff --git a/filters/title-boxes.filter b/filters/title-boxes.filter /scm/tgtimes/file/filters/title-boxes.filter.gph bitreich.org 70 i@@ -0,0 +1,34 @@ Err bitreich.org 70 i+#!/bin/bash Err bitreich.org 70 i+ Err bitreich.org 70 i+export TERM=linux Err bitreich.org 70 i+ Err bitreich.org 70 i+line0="" Err bitreich.org 70 i+line1="" Err bitreich.org 70 i+line2="" Err bitreich.org 70 i+ Err bitreich.org 70 i+i=0 Err bitreich.org 70 i+while IFS= read -r line; Err bitreich.org 70 i+do Err bitreich.org 70 i+ case "${i}" in Err bitreich.org 70 i+ 0) Err bitreich.org 70 i+ line0="${line}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ 1) Err bitreich.org 70 i+ line1="${line}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ 2) Err bitreich.org 70 i+ line2="${line}" Err bitreich.org 70 i+ nline2="$(printf "%s\n" "${line2}" \ Err bitreich.org 70 i+ | sed 's,^|[ #]*\(.*\)$,\1,')" Err bitreich.org 70 i+ nline0="$(printf "%s\n" "${line0}" \ Err bitreich.org 70 i+ | sed "s,\[ \],\[$(tput smul)$(tput bold)${nline2}$(tput sgr0)\],")" Err bitreich.org 70 i+ printf "%s\n" "${nline0}" Err bitreich.org 70 i+ printf "%s\n" "${line1}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ *) Err bitreich.org 70 i+ printf "%s\n" "${line}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+ esac Err bitreich.org 70 i+ i=$((i + 1)) Err bitreich.org 70 i+done Err bitreich.org 70 i+ Err bitreich.org 70 1diff --git a/opus7/0-xxx-header.raw b/opus7/0-xxx-header.raw /scm/tgtimes/file/opus7/0-xxx-header.raw.gph bitreich.org 70 i@@ -1,16 +1,16 @@ Err bitreich.org 70 i- ______________________________________________________________________ Err bitreich.org 70 i-| _______ _ ____ _ | Err bitreich.org 70 i-||--. .--|| | ,',' '| | | | Err bitreich.org 70 i-| | | | |,--. ,---. | | .---. -----. | |,--. ,---. --,--.| Err bitreich.org 70 i-| | | | | `. || |_|_| | | ___| | | || | | || | `. || |_|_|| | '"| Err bitreich.org 70 i-| | | | | | || | | | | || | | || | | || | | || | | | | Err bitreich.org 70 i-| '---' --- --- `---' ``--'' `---' | :--' --- --- `---' --- | Err bitreich.org 70 i-| _______ _ | | | Err bitreich.org 70 i-| |--. .--|(_) --- _ | Err bitreich.org 70 i-| | | --. --,--.,--. ,---. ,--.: _,-' )_ | Err bitreich.org 70 i-| | | | | | |`. |`. || |_|_|| '-. (_,-' _,-' )_ | Err bitreich.org 70 i-| | | | | | | | | | || | `-. | (_,-' _,-' ) | Err bitreich.org 70 i-| '---' --- --- --- --- `---' '---' (_,-' | Err bitreich.org 70 i-|______________________________________________________________________| Err bitreich.org 70 i-| Opus 7 Gopher News and More Published on Bitreich.org | Err bitreich.org 70 i- ---------------------------------------------------------------------- Err bitreich.org 70 i+,______________________________________________________________________________, Err bitreich.org 70 i+| ,_______,,_, _____ ,_, | Err bitreich.org 70 i+| |#######||#| __ ___ ,'#####| ___ ____ |#| __ ___ _ __ | Err bitreich.org 70 i+| |#| |#|/##\ /###\ |#| /###\ /####\ |#|/##\ /###\ \\/##\ | Err bitreich.org 70 i+| |#| |#|/ \#||#|_|#| |#| ___|#| |#||#| |#||#|/ \#||#|_|#||#| || | Err bitreich.org 70 i+| ,|#|, |#| |#||#|___ |#|__|#||#|_|#||#|_|#||#| |#||#|___ |#| | Err bitreich.org 70 i+| \###/ \#/ \#/ \###/ \#####/ \###/ |#:70/ \#/ \#/ \###/ \#/ | Err bitreich.org 70 i+| ,_______, _ |#| | Err bitreich.org 70 i+| |#######|(o) _ __ __ ___ ___ \#/ _,-' ) | Err bitreich.org 70 i+| |#| /#\ \\/##\/##\ /###\ /###\ ( ,-' _,-' ) | Err bitreich.org 70 i+| |#| |#| |#| |#| |#||#|_|#||#|__ ( ,-' _,-' ) | Err bitreich.org 70 i+| ,|#|, |#| |#| |#| |#||#|___ _\##| ( ,-' | Err bitreich.org 70 i+| \###/ \#/ \#/ \#/ \#/ \###/ |###/ gophers://bitreich.org/1/tgtimes | Err bitreich.org 70 i+|______________________________________________________________________________| Err bitreich.org 70 i+| Opus 7 Gopher News and More Published by Bitreich.org | Err bitreich.org 70 i+`------------------------------------------------------------------------------` Err bitreich.org 70 1diff --git a/opus7/1-article-athas-shell-redirections.md b/opus7/1-article-athas-shell-redirections.md /scm/tgtimes/file/opus7/1-article-athas-shell-redirections.md.gph bitreich.org 70 i@@ -17,6 +17,7 @@ try the rather obvious possibility of having the input and output file Err bitreich.org 70 i be the same: Err bitreich.org 70 i Err bitreich.org 70 i $ sort < numbers > numbers Err bitreich.org 70 i+ Err bitreich.org 70 i But disaster strikes: the file is empty! The user has lost their Err bitreich.org 70 i precious collection of numbers - let's hope they had a backup. Losing Err bitreich.org 70 i data this way is almost a rite of passage for Unix users, but let us Err bitreich.org 70 1diff --git a/opus7/2-article-bitreich-library-of-babel.md b/opus7/2-article-bitreich-library-of-babel.md /scm/tgtimes/file/opus7/2-article-bitreich-library-of-babel.md.gph bitreich.org 70 i@@ -1,7 +1,5 @@ Err bitreich.org 70 i # Library of Babel now available on gopherspace. by Bitreich Err bitreich.org 70 i Err bitreich.org 70 i-What is the Library of Babel? Err bitreich.org 70 i- Err bitreich.org 70 i The Library of Babel is a place for scholars to do research, for artists Err bitreich.org 70 i and writers to seek inspiration, for anyone with curiosity or a sense of Err bitreich.org 70 i humor to reflect on the weirdness of existence - in short, it's just like Err bitreich.org 70 1diff --git a/opus7/4-article-tgtimes-most-minimal-gopher-server.md b/opus7/4-article-tgtimes-most-minimal-gopher-server.md /scm/tgtimes/file/opus7/4-article-tgtimes-most-minimal-gopher-server.md.gph bitreich.org 70 i@@ -13,35 +13,41 @@ Which cost would we end-up for building a minimal piece of hardware able Err bitreich.org 70 i to host the Gopher protocol acheiving all of the above? Err bitreich.org 70 i The Gopher Times investigates. Err bitreich.org 70 i Err bitreich.org 70 i-## "Communication" Err bitreich.org 70 i+## Communication Err bitreich.org 70 i+ Err bitreich.org 70 i While WiFi is inexpensive and fits moving device gracefully, the Err bitreich.org 70 i reliability of Ethernet is indicated for a server. Ethernet adds Err bitreich.org 70 i 1 USD of cost for the transceiver handling the electricial characteristics Err bitreich.org 70 i of Ethernet. These typically expose an RGMII interface. Err bitreich.org 70 i Err bitreich.org 70 i-## "Processing" Err bitreich.org 70 i+## Processing Err bitreich.org 70 i+ Err bitreich.org 70 i A microcontroller featuring an Ethernet peripheral (with an RGMII Err bitreich.org 70 i interface) could be the popular STM32F103, or an alternative Err bitreich.org 70 i compatible part. Enough processing power would be present for an Err bitreich.org 70 i embedded TCP/IP and a TLS stack. Err bitreich.org 70 i Err bitreich.org 70 i-## "Automation" Err bitreich.org 70 i+## Automation Err bitreich.org 70 i+ Err bitreich.org 70 i In addition, most microcontrollers feature a large range of Err bitreich.org 70 i built-in peripheral such as timers and communication or analog Err bitreich.org 70 i interfaces, enabling automation of devices such as lighting, Err bitreich.org 70 i heating, laundry, motors, or an entire car, through external Err bitreich.org 70 i modules. This would come for no extra cost. Err bitreich.org 70 i Err bitreich.org 70 i-## "Storage" Err bitreich.org 70 i+## Storage Err bitreich.org 70 i+ Err bitreich.org 70 i A slot for a MicroSD card would allow storing and updating Err bitreich.org 70 i the static content to serve, and storing network configuration. Err bitreich.org 70 i Err bitreich.org 70 i-## "Scripting" Err bitreich.org 70 i+## Scripting Err bitreich.org 70 i+ Err bitreich.org 70 i There exist project to fit programming languages onto microcontrollers. Err bitreich.org 70 i Separate projects for supporting a subset of each of Python, Ruby, Err bitreich.org 70 i Javscript, Go, Rust, Lua, Forth and more. Err bitreich.org 70 i Err bitreich.org 70 i-## "Power" Err bitreich.org 70 i+## Power Err bitreich.org 70 i+ Err bitreich.org 70 i By letting power supply happen through the USB port, a large range Err bitreich.org 70 i of power source can be used, such as battery, solar panels, wind Err bitreich.org 70 i turbine, hydropower, or power outlet. Err bitreich.org 70 1diff --git a/opus7/6-article-bitreich-dj-vlad-on-2023-03-11.md b/opus7/6-article-bitreich-dj-vlad-on-2023-03-11.md /scm/tgtimes/file/opus7/6-article-bitreich-dj-vlad-on-2023-03-11.md.gph bitreich.org 70 i@@ -1,7 +1,5 @@ Err bitreich.org 70 i # DJ Vlad Session on Bitreich Radio on 2023-03-11 by Bitreich Err bitreich.org 70 i Err bitreich.org 70 i-New DJ Vlad Session from Serbia on Bitreich Radio on 2023-03-11T20:00 CET. Err bitreich.org 70 i- Err bitreich.org 70 i Our residing DJ Vlad (not from Russia or Ukraine) has found a new sound Err bitreich.org 70 i and will present it to us at 2023-03-11T20:00 CET exclusively on Bitreich Radio! Err bitreich.org 70 i Err bitreich.org 70 1diff --git a/opus7/6-b-article-bitreich-gopher-pearls.md b/opus7/6-b-article-bitreich-gopher-pearls.md /scm/tgtimes/file/opus7/6-b-article-bitreich-gopher-pearls.md.gph bitreich.org 70 i@@ -10,17 +10,17 @@ Get ready to search for the pearls: Err bitreich.org 70 i The archive of gopherspace from 2007 from archive.org is now available on Err bitreich.org 70 i Bitreich for research. Err bitreich.org 70 i Err bitreich.org 70 i- Err bitreich.org 70 i The pearl list begins with - of course! - the gopher manifesto: Err bitreich.org 70 i Err bitreich.org 70 i- gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/gopher/seanm.ca/70/0/nerd/gopher-manifesto.txt Err bitreich.org 70 i+ gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/\ Err bitreich.org 70 i+ gopher-arch/gopher/seanm.ca/70/0/nerd/gopher-manifesto.txt Err bitreich.org 70 i Err bitreich.org 70 i See the 'What we need' section. We completed nearly all points there. :-D Err bitreich.org 70 i Err bitreich.org 70 i- Err bitreich.org 70 i A second pearl example: Err bitreich.org 70 i Err bitreich.org 70 i- gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/gopher/seanm.ca/70/0/nerd/language_parable.txt Err bitreich.org 70 i+ gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/\ Err bitreich.org 70 i+ gopher/seanm.ca/70/0/nerd/language_parable.txt Err bitreich.org 70 i Err bitreich.org 70 i And each language could be heard to mumble as it tromped and Err bitreich.org 70 i tromped Err bitreich.org 70 i@@ -43,5 +43,6 @@ considered a pearl to: Err bitreich.org 70 i Sincerely yours, Err bitreich.org 70 i Err bitreich.org 70 i 20h Err bitreich.org 70 i+ Err bitreich.org 70 i Chief Archive Officer (CAO) Err bitreich.org 70 i Err bitreich.org 70 .