diff options
-rw-r--r-- | .gitignore | 50 | ||||
-rw-r--r-- | Makefile | 200 | ||||
-rw-r--r-- | deps.mk | 522 | ||||
-rwxr-xr-x | mkdeps.sh | 81 | ||||
-rw-r--r-- | src/base.conf | 13 | ||||
l--------- | src/collections/blog | 1 | ||||
l--------- | src/collections/pastebins | 1 | ||||
l--------- | src/collections/podcasts | 1 | ||||
l--------- | src/collections/screencasts | 1 | ||||
l--------- | src/collections/tils | 1 | ||||
-rw-r--r-- | src/content/about.adoc | 9 | ||||
-rw-r--r-- | src/content/blog/2018/07/17/guix-nixos.adoc (renamed from _articles/2018-07-17-running-guix-on-nixos.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2018/08/01/npm-ci-reproducibility.adoc (renamed from _articles/2018-08-01-verifying-npm-ci-reproducibility.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2018/12/21/ytdl-subs.adoc (renamed from _articles/2018-12-21-using-youtube-dl-to-manage-youtube-subscriptions.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2019/06/02/nixos-stateless-workstation.adoc (renamed from _articles/2019-06-02-using-nixos-as-an-stateless-workstation.md) | 8 | ||||
-rw-r--r-- | src/content/blog/2020/08/10/guix-srht.adoc (renamed from _articles/2020-08-10-guix-inside-sourcehut-builds-sr-ht-ci.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/08/31/database-i-with-i-had.adoc (renamed from _articles/2020-08-31-the-database-i-wish-i-had.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/10/05/cargo2nix-demo.tar.gz (renamed from static/attachments/cargo2nix-demo.tar.gz) | bin | 174080 -> 174080 bytes | |||
-rw-r--r-- | src/content/blog/2020/10/05/cargo2nix.adoc (renamed from _articles/2020-10-05-cargo2nix-dramatically-simpler-rust-in-nix.md) | 4 | ||||
-rw-r--r-- | src/content/blog/2020/10/05/cargo2nix.tar.gz (renamed from static/attachments/cargo2nix.tar.gz) | bin | 143360 -> 143360 bytes | |||
-rw-r--r-- | src/content/blog/2020/10/05/swift2nix-demo.tar.gz (renamed from static/attachments/swift2nix-demo.tar.gz) | bin | 174080 -> 174080 bytes | |||
-rw-r--r-- | src/content/blog/2020/10/05/swift2nix.adoc (renamed from _articles/2020-10-05-swift2nix-run-swift-inside-nix-builds.md) | 4 | ||||
-rw-r--r-- | src/content/blog/2020/10/05/swift2nix.tar.gz (renamed from static/attachments/swift2nix.tar.gz) | bin | 143360 -> 143360 bytes | |||
-rw-r--r-- | src/content/blog/2020/10/19/feature-flags.adoc (renamed from _articles/2020-10-19-feature-flags-differences-between-backend-frontend-and-mobile.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/10/20/wrong-interviewing.adoc (renamed from _articles/2020-10-20-how-not-to-interview-engineers.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/11/07/diy-bugs.adoc (renamed from _articles/2020-11-07-diy-an-offline-bug-tracker-with-text-files-git-and-email.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/11/08/paradigm-shift-review.adoc (renamed from _articles/2020-11-08-the-next-paradigm-shift-in-programming-video-review.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2020/11/12/database-parsers-trees.adoc (renamed from _articles/2020-11-12-durable-persistent-trees-and-parser-combinators-building-a-database.md) | 20 | ||||
-rw-r--r-- | src/content/blog/2020/11/14/local-first-review.adoc (renamed from _articles/2020-11-14-local-first-software-you-own-your-data-in-spite-of-the-cloud-article-review.md) | 18 | ||||
-rw-r--r-- | src/content/blog/2021/01/26/remembering-ann.adoc (renamed from _articles/2021-01-26-ann-remembering-add-memory-to-dmenu-fzf-and-similar-tools.md) | 0 | ||||
-rw-r--r-- | src/content/blog/2021/02/17/fallible.adoc (renamed from _articles/2021-02-17-ann-fallible-fault-injection-library-for-stress-testing-failure-scenarios.md) | 4 | ||||
-rw-r--r-- | src/content/blog/2021/02/17/fallible.tar.gz (renamed from static/attachments/fallible.tar.gz) | bin | 3174400 -> 3174400 bytes | |||
-rw-r--r-- | src/content/blog/2021/04/29/relational-review.adoc (renamed from _articles/2021-04-29-a-relational-model-of-data-for-large-shared-data-banks-article-review.md) | 0 | ||||
-rw-r--r-- | src/content/blog/index.adoc | 1 | ||||
-rw-r--r-- | src/content/img/atom.svg (renamed from static/atom.svg) | 0 | ||||
-rw-r--r-- | src/content/img/envelope.svg (renamed from static/envelope.svg) | 0 | ||||
-rw-r--r-- | src/content/img/favicon.svg (renamed from static/lord-favicon.svg) | 0 | ||||
-rw-r--r-- | src/content/img/link.svg (renamed from static/link.svg) | 0 | ||||
-rw-r--r-- | src/content/img/lock.svg (renamed from static/lock.svg) | 0 | ||||
-rw-r--r-- | src/content/index.adoc | 1 | ||||
-rw-r--r-- | src/content/pastebins/2016/04/05/rpn.adoc (renamed from _pastebins/2016-04-05-rpn-macro-setup.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/11/nix-pinning.adoc (renamed from _pastebins/2018-07-11-nix-pinning.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc (renamed from _pastebins/2018-07-13-gnu-guix-systemd-daemon-for-nixos.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc (renamed from _pastebins/2018-07-13-guix-users-in-nixos-system-configuration.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/13/guixbuilder.adoc (renamed from _pastebins/2018-07-13-guix-builder-user-creation-commands.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/13/nix-strpad.adoc (renamed from _pastebins/2018-07-13-nix-string-padding.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/25/nix-exps.adoc (renamed from _pastebins/2018-07-25-nix-exps.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2018/07/25/nix-showdrv.adoc (renamed from _pastebins/2018-07-25-nix-show-derivation-sample-output.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2019/06/08/inconsistent-hash.adoc (renamed from _pastebins/2019-06-08-inconsistent-hash-of-buildgomodule.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2019/12/29/raku-tuple-type.adoc (renamed from _pastebins/2019-12-29-raku-tuple-type-annotation.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2020/01/04/guix-import-failure.adoc (renamed from _pastebins/2020-01-04-failure-on-guix-tex-live-importer.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2020/02/14/guix-shebang.adoc (renamed from _pastebins/2020-02-14-guix-shebang.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2020/11/27/guix-build-local.adoc (renamed from _pastebins/2020-11-27-guix-build-local-module.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2020/12/15/guix-pack-fail.adoc (renamed from _pastebins/2020-12-15-failure-with-relocatable-guix-pack-tarball.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/04/03/naive-slugify-js.adoc (renamed from _pastebins/2021-04-03-javascript-naive-slugify.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/06/08/reading-session-pt1.adoc (renamed from _pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/06/22/curl-wget.adoc (renamed from _pastebins/2021-06-22-cloc-curl-and-wget.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/08/11/h1-spacing.adoc (renamed from _pastebins/2021-08-11-spaces-around-h1-tags.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/09/02/sicp-3-19.adoc (renamed from _pastebins/2021-09-02-sicp-exercise-3-19.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc (renamed from _pastebins/2021-09-03-sicp-persistent-amortized-o1-queue.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2022/07/14/git-cleanup.adoc (renamed from _pastebins/2022-07-14-git-cleanup-command.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/2023/07/22/funcallable-amop.adoc (renamed from _pastebins/2023-07-22-funcallable-amop.md) | 0 | ||||
-rw-r--r-- | src/content/pastebins/index.adoc | 1 | ||||
-rw-r--r-- | src/content/podcasts/2020/12/19/test-entry.adoc (renamed from _podcasts/2020-12-19-a-test-entry.md) | 15 | ||||
-rw-r--r-- | src/content/podcasts/2020/12/19/test-entry.flac (renamed from resources/podcasts/2020-12-19-a-test-entry.flac) | bin | 462864 -> 462864 bytes | |||
-rw-r--r-- | src/content/podcasts/index.adoc | 1 | ||||
-rw-r--r-- | src/content/pt/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md (renamed from _tils/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md) | 0 | ||||
-rw-r--r-- | src/content/screencasts/2021/02/07/autoqemu.adoc (renamed from _screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.md) | 16 | ||||
-rw-r--r-- | src/content/screencasts/2021/02/07/autoqemu.tar.gz (renamed from static/attachments/autoqemu.tar.gz) | bin | 808960 -> 808960 bytes | |||
-rw-r--r-- | src/content/screencasts/2021/02/07/autoqemu.webm (renamed from resources/screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.webm) | bin | 12103021 -> 12103021 bytes | |||
-rw-r--r-- | src/content/screencasts/index.adoc | 1 | ||||
-rw-r--r-- | src/content/slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides (renamed from _slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides) | 0 | ||||
-rw-r--r-- | src/content/slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides (renamed from _slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/08/12/filename-timestamp.adoc (renamed from _tils/2020-08-12-simple-filename-timestamp.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/08/13/code-jekyll.adoc (renamed from _tils/2020-08-13-anchor-headers-and-code-lines-in-jekyll.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/08/14/browse-git.adoc (renamed from _tils/2020-08-14-browse-a-git-repository-at-a-specific-commit.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/08/16/git-search.adoc (renamed from _tils/2020-08-16-search-in-git.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/08/28/grep-online.adoc (renamed from _tils/2020-08-28-grep-online-repositories.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/09/04/email-cli-fun-profit.adoc (renamed from _tils/2020-09-04-send-emails-using-the-command-line-for-fun-and-profit.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/09/05/oldschool-pr.adoc (renamed from _tils/2020-09-05-pull-requests-with-git-the-old-school-way.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/10/11/search-git-history.adoc (renamed from _tils/2020-10-11-search-changes-to-a-filename-pattern-in-git-history.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/08/find-broken-symlink.adoc (renamed from _tils/2020-11-08-find-broken-symlinks-with-find.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/12/diy-nix-bash-ci.adoc (renamed from _tils/2020-11-12-diy-bare-bones-ci-server-with-bash-and-nix.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/12/git-bisect-automation.adoc (renamed from _tils/2020-11-12-git-bisect-automation.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/12/useful-bashvars.adoc (renamed from _tils/2020-11-12-useful-bash-variables.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/14/gpodder-media.adoc (renamed from _tils/2020-11-14-gpodder-as-a-media-subscription-manager.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/11/30/git-notes-ci.adoc (renamed from _tils/2020-11-30-storing-ci-data-on-git-notes.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/12/15/shellcheck-repo.adoc (renamed from _tils/2020-12-15-awk-snippet-shellcheck-all-scripts-in-a-repository.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2020/12/29/svg.adoc (renamed from _tils/2020-12-29-svg-favicon.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/01/12/curl-awk-emails.adoc (renamed from _tils/2021-01-12-awk-snippet-send-email-to-multiple-recipients-with-curl.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/01/17/posix-shebang.adoc (renamed from _tils/2021-01-17-posix-sh-and-shebangs.md) | 6 | ||||
-rw-r--r-- | src/content/tils/2021/04/24/cl-generic-precedence.adoc (renamed from _tils/2021-04-24-common-lisp-argument-precedence-order-parameterization-of-a-generic-function.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/04/24/clojure-autocurry.adoc (renamed from _tils/2021-04-24-clojure-auto-curry.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/04/24/scm-nif.adoc (renamed from _tils/2021-04-24-three-way-conditional-for-number-signs-on-lisp.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/07/23/git-tls-gpg.adoc (renamed from _tils/2021-07-23-gpg-verification-of-git-repositories-without-tls.md) | 0 | ||||
-rw-r--r-- | src/content/tils/2021/08/11/js-bigint-reviver.adoc (renamed from _tils/2021-08-11-encoding-and-decoding-javascript-bigint-values-with-reviver.md) | 0 | ||||
-rw-r--r-- | src/content/tils/index.adoc | 1 | ||||
-rw-r--r-- | src/headers.txt | 1 | ||||
l--------- | src/pages/root | 1 | ||||
-rw-r--r-- | static/attachments/apollo-server-demo.tar.gz | bin | 22681600 -> 0 bytes |
100 files changed, 870 insertions, 113 deletions
@@ -1,35 +1,15 @@ -/generated.mk - -# Nix -/result* -/tmp/ - -# Jekyll -/.bundle/ -/_site/ -/public/ -/.jekyll-cache/ -/images/graphviz/ - -# Generated resources -*.ogg -*.torrent -*.checksum -/static/lord-favicon.png -/music/*.pdf -/music/*.midi -/static/lord-favicon.ico -/favicon.ico - -/drafts/ - -/deps.mk -/files.mk -/torrent-files.txt - -/TODOs.html - -# JEKYLL_COMPAT -/src/content/ - -/logs/ +*.htmlbody +*.conf +*.snippets +*.html +*.html.*.txt +*.indexentry +*.feedentry +*.sortdata +index.htmlheader +index.htmlfooter +index.htmllisting +index.htmldeps +feed.xmldeps +feed.xml +/src/global.conf @@ -1,16 +1,196 @@ .POSIX: -.DEFAULT: - $(MAKE) generated.mk - $(MAKE) -f dynamic.mk $< +DATE = 1970-01-01 +VERSION = 0.1.0 +NAME = euandre.org +NAME_UC = $(NAME) +LANGUAGES = en +## Installation prefix. Defaults to "/usr". +PREFIX = /usr +BINDIR = $(PREFIX)/bin +LIBDIR = $(PREFIX)/lib +INCLUDEDIR = $(PREFIX)/include +SRCDIR = $(PREFIX)/src/$(NAME) +SHAREDIR = $(PREFIX)/share +LOCALEDIR = $(SHAREDIR)/locale +MANDIR = $(SHAREDIR)/man +DOCDIR = $(SHAREDIR)/doc/$(NAME) +HTMLDIR = $(SHAREDIR)/html/$(NAME) +EXEC = ./ +## Where to store the installation. Empty by default. +DESTDIR = +LDLIBS = -all: generated.mk - $(MAKE) -f dynamic.mk all -generated.mk: ALWAYS JEKYLL_COMPAT - sh src/development/dynmake.sh > $@ +.SUFFIXES: +.SUFFIXES: .adoc .conf .snippets .indexentry .feedentry .sortdata .xml .xmldeps +.SUFFIXES: .htmlbody .htmlheader .htmlfooter .htmllisting .html -ALWAYS: +.adoc.conf: + mkwb conf src/global.conf $< > $@ + +.adoc.htmlbody: + mkwb htmlbody $< > $@ + +.htmlbody.html: + mkwb html $< > $@ + +.conf.htmlheader: + mkwb html -H $< > $@ + +.conf.htmlfooter: + mkwb html -F $< > $@ + +.conf.htmllisting: + mkwb indexbody $< > $@ + +.adoc.snippets: + mkwb snippets $< > $@ + +.conf.indexentry: + mkwb indexentry $< > $@ + +.htmlbody.feedentry: + mkwb feedentry $< > $@ + +.conf.sortdata: + mkwb sortdata $< > $@ + + + +all: +include deps.mk + + +sources.adoc = $(articles.adoc) $(listings.adoc) $(pages.adoc) +sources.htmlbody = $(sources.adoc:.adoc=.htmlbody) +sources.html = $(sources.adoc:.adoc=.html) +sources.snippets = $(sources.adoc:.adoc=.snippets) +sources.conf = $(sources.adoc:.adoc=.conf) +articles.indexentry = $(articles.adoc:.adoc=.indexentry) +articles.feedentry = $(articles.adoc:.adoc=.feedentry) +articles.sortdata = $(articles.adoc:.adoc=.sortdata) +listings.htmlheader = $(listings.adoc:.adoc=.htmlheader) +listings.htmlfooter = $(listings.adoc:.adoc=.htmlfooter) +listings.htmllisting = $(listings.adoc:.adoc=.htmllisting) +listings.htmldeps = $(listings.adoc:.adoc=.htmldeps) +listings.html = $(listings.adoc:.adoc=.html) +feeds.xmldeps = $(feeds.xml:.xml=.xmldeps) + +sources = \ + $(sources.adoc) \ + $(images.svg) \ + src/content/style.css \ + +contents = \ + $(sources.html) \ + $(feeds.xml) \ + +static-contents = \ + $(sources.extras) \ + $(images.svg) \ + src/content/style.css \ + + +derived-assets = \ + $(contents) \ + $(sources.htmlbody) \ + $(sources.snippets) \ + $(sources.conf) \ + src/global.conf \ + $(listings.htmlheader) \ + $(listings.htmlfooter) \ + $(listings.htmllisting) \ + $(listings.htmldeps) \ + $(feeds.xmldeps) \ + $(articles.indexentry) \ + $(articles.feedentry) \ + $(articles.sortdata) \ + +side-assets = \ + src/collections/*/*/*/*/*.html.*.txt \ + src/collections/*/index.html.*.txt \ + src/collections/*/*.sortdata \ + src/pages/*/*.html.*.txt \ + + + +## Default target. Builds all artifacts required for testing +## and installation. +all: $(derived-assets) + + +$(derived-assets): Makefile deps.mk +$(sources.conf): src/global.conf src/headers.txt -JEKYLL_COMPAT: - sh src/development/JEKYLL_COMPAT/copy-content.sh + +src/global.conf: src/base.conf + mkwb conf -G src/base.conf > $@ + +$(listings.html): + cat $*.htmlheader $*.htmllisting $*.htmlbody $*.htmlfooter > $@ + +$(feeds.xml): + mkwb feed src/global.conf $*.xmldeps > $@ + + + +check-unit: + + +integration-tests = \ + +.PRECIOUS: $(integration-tests) +$(integration-tests): ALWAYS + sh $@ + +check-integration: $(integration-tests) + + +## Run all tests. Each test suite is isolated, so that a parallel +## build can run tests at the same time. The required artifacts +## are created if missing. +check: check-unit check-integration + + + +## Remove *all* derived artifacts produced during the build. +## A dedicated test asserts that this is always true. +clean: + rm -rf $(derived-assets) $(side-assets) + + +## Installs into $(DESTDIR)$(PREFIX). Its dependency target +## ensures that all installable artifacts are crafted beforehand. +install: all + mkdir -p \ + '$(DESTDIR)$(SRCDIR)' \ + + for f in $(contents) $(static-contents) `cat $(sources.snippets)`; do \ + dir='$(DESTDIR)$(HTMLDIR)'/"`dirname "$${f#src/content/}"`"; \ + mkdir -p "$$dir"; \ + cp -P "$$f" "$$dir"; \ + done + for f in $(sources); do \ + dir='$(DESTDIR)$(SRCDIR)'/"`dirname "$${f#src/content/}"`"; \ + mkdir -p "$$dir"; \ + cp -P "$$f" "$$dir"; \ + done + +## Uninstalls from $(DESTDIR)$(PREFIX). This is a perfect mirror +## of the "install" target, and removes *all* that was installed. +## A dedicated test asserts that this is always true. +uninstall: + rm -rf \ + '$(DESTDIR)$(SRCDIR)' \ + '$(DESTDIR)$(HTMLDIR)' \ + + + +PORT = 3333 +## Run file server for local installed static files. +run: + serve -n -p $(PORT) -d '$(DESTDIR)$(HTMLDIR)' + + +ALWAYS: @@ -0,0 +1,522 @@ +pages.adoc = \ + src/content/about.adoc \ + src/content/index.adoc \ + +articles.adoc = \ + src/content/blog/2018/07/17/guix-nixos.adoc \ + src/content/blog/2018/08/01/npm-ci-reproducibility.adoc \ + src/content/blog/2018/12/21/ytdl-subs.adoc \ + src/content/blog/2019/06/02/nixos-stateless-workstation.adoc \ + src/content/blog/2020/08/10/guix-srht.adoc \ + src/content/blog/2020/08/31/database-i-with-i-had.adoc \ + src/content/blog/2020/10/05/cargo2nix.adoc \ + src/content/blog/2020/10/05/swift2nix.adoc \ + src/content/blog/2020/10/19/feature-flags.adoc \ + src/content/blog/2020/10/20/wrong-interviewing.adoc \ + src/content/blog/2020/11/07/diy-bugs.adoc \ + src/content/blog/2020/11/08/paradigm-shift-review.adoc \ + src/content/blog/2020/11/12/database-parsers-trees.adoc \ + src/content/blog/2020/11/14/local-first-review.adoc \ + src/content/blog/2021/01/26/remembering-ann.adoc \ + src/content/blog/2021/02/17/fallible.adoc \ + src/content/blog/2021/04/29/relational-review.adoc \ + src/content/pastebins/2016/04/05/rpn.adoc \ + src/content/pastebins/2018/07/11/nix-pinning.adoc \ + src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc \ + src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc \ + src/content/pastebins/2018/07/13/guixbuilder.adoc \ + src/content/pastebins/2018/07/13/nix-strpad.adoc \ + src/content/pastebins/2018/07/25/nix-exps.adoc \ + src/content/pastebins/2018/07/25/nix-showdrv.adoc \ + src/content/pastebins/2019/06/08/inconsistent-hash.adoc \ + src/content/pastebins/2019/12/29/raku-tuple-type.adoc \ + src/content/pastebins/2020/01/04/guix-import-failure.adoc \ + src/content/pastebins/2020/02/14/guix-shebang.adoc \ + src/content/pastebins/2020/11/27/guix-build-local.adoc \ + src/content/pastebins/2020/12/15/guix-pack-fail.adoc \ + src/content/pastebins/2021/04/03/naive-slugify-js.adoc \ + src/content/pastebins/2021/06/08/reading-session-pt1.adoc \ + src/content/pastebins/2021/06/22/curl-wget.adoc \ + src/content/pastebins/2021/08/11/h1-spacing.adoc \ + src/content/pastebins/2021/09/02/sicp-3-19.adoc \ + src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc \ + src/content/pastebins/2022/07/14/git-cleanup.adoc \ + src/content/pastebins/2023/07/22/funcallable-amop.adoc \ + src/content/podcasts/2020/12/19/test-entry.adoc \ + src/content/screencasts/2021/02/07/autoqemu.adoc \ + src/content/tils/2020/08/12/filename-timestamp.adoc \ + src/content/tils/2020/08/13/code-jekyll.adoc \ + src/content/tils/2020/08/14/browse-git.adoc \ + src/content/tils/2020/08/16/git-search.adoc \ + src/content/tils/2020/08/28/grep-online.adoc \ + src/content/tils/2020/09/04/email-cli-fun-profit.adoc \ + src/content/tils/2020/09/05/oldschool-pr.adoc \ + src/content/tils/2020/10/11/search-git-history.adoc \ + src/content/tils/2020/11/08/find-broken-symlink.adoc \ + src/content/tils/2020/11/12/diy-nix-bash-ci.adoc \ + src/content/tils/2020/11/12/git-bisect-automation.adoc \ + src/content/tils/2020/11/12/useful-bashvars.adoc \ + src/content/tils/2020/11/14/gpodder-media.adoc \ + src/content/tils/2020/11/30/git-notes-ci.adoc \ + src/content/tils/2020/12/15/shellcheck-repo.adoc \ + src/content/tils/2020/12/29/svg.adoc \ + src/content/tils/2021/01/12/curl-awk-emails.adoc \ + src/content/tils/2021/01/17/posix-shebang.adoc \ + src/content/tils/2021/04/24/cl-generic-precedence.adoc \ + src/content/tils/2021/04/24/clojure-autocurry.adoc \ + src/content/tils/2021/04/24/scm-nif.adoc \ + src/content/tils/2021/07/23/git-tls-gpg.adoc \ + src/content/tils/2021/08/11/js-bigint-reviver.adoc \ + +listings.adoc = \ + src/content/blog/index.adoc \ + src/content/pastebins/index.adoc \ + src/content/podcasts/index.adoc \ + src/content/screencasts/index.adoc \ + src/content/tils/index.adoc \ + +feeds.xml = \ + src/content/blog/feed.xml \ + src/content/pastebins/feed.xml \ + src/content/podcasts/feed.xml \ + src/content/screencasts/feed.xml \ + src/content/tils/feed.xml \ + +images.svg = \ + src/content/img/atom.svg \ + src/content/img/envelope.svg \ + src/content/img/favicon.svg \ + src/content/img/link.svg \ + src/content/img/lock.svg \ + +sources.extras = \ + src/content/blog/2020/10/05/cargo2nix-demo.tar.gz \ + src/content/blog/2020/10/05/cargo2nix.tar.gz \ + src/content/blog/2020/10/05/swift2nix-demo.tar.gz \ + src/content/blog/2020/10/05/swift2nix.tar.gz \ + src/content/blog/2021/02/17/fallible.tar.gz \ + src/content/podcasts/2020/12/19/test-entry.flac \ + src/content/screencasts/2021/02/07/autoqemu.tar.gz \ + src/content/screencasts/2021/02/07/autoqemu.webm \ + +src/content/about.htmlbody src/content/about.snippets src/content/about.conf: src/content/about.adoc +src/content/index.htmlbody src/content/index.snippets src/content/index.conf: src/content/index.adoc +src/content/blog/2018/07/17/guix-nixos.htmlbody src/content/blog/2018/07/17/guix-nixos.snippets src/content/blog/2018/07/17/guix-nixos.conf: src/content/blog/2018/07/17/guix-nixos.adoc +src/content/blog/2018/08/01/npm-ci-reproducibility.htmlbody src/content/blog/2018/08/01/npm-ci-reproducibility.snippets src/content/blog/2018/08/01/npm-ci-reproducibility.conf: src/content/blog/2018/08/01/npm-ci-reproducibility.adoc +src/content/blog/2018/12/21/ytdl-subs.htmlbody src/content/blog/2018/12/21/ytdl-subs.snippets src/content/blog/2018/12/21/ytdl-subs.conf: src/content/blog/2018/12/21/ytdl-subs.adoc +src/content/blog/2019/06/02/nixos-stateless-workstation.htmlbody src/content/blog/2019/06/02/nixos-stateless-workstation.snippets src/content/blog/2019/06/02/nixos-stateless-workstation.conf: src/content/blog/2019/06/02/nixos-stateless-workstation.adoc +src/content/blog/2020/08/10/guix-srht.htmlbody src/content/blog/2020/08/10/guix-srht.snippets src/content/blog/2020/08/10/guix-srht.conf: src/content/blog/2020/08/10/guix-srht.adoc +src/content/blog/2020/08/31/database-i-with-i-had.htmlbody src/content/blog/2020/08/31/database-i-with-i-had.snippets src/content/blog/2020/08/31/database-i-with-i-had.conf: src/content/blog/2020/08/31/database-i-with-i-had.adoc +src/content/blog/2020/10/05/cargo2nix.htmlbody src/content/blog/2020/10/05/cargo2nix.snippets src/content/blog/2020/10/05/cargo2nix.conf: src/content/blog/2020/10/05/cargo2nix.adoc +src/content/blog/2020/10/05/swift2nix.htmlbody src/content/blog/2020/10/05/swift2nix.snippets src/content/blog/2020/10/05/swift2nix.conf: src/content/blog/2020/10/05/swift2nix.adoc +src/content/blog/2020/10/19/feature-flags.htmlbody src/content/blog/2020/10/19/feature-flags.snippets src/content/blog/2020/10/19/feature-flags.conf: src/content/blog/2020/10/19/feature-flags.adoc +src/content/blog/2020/10/20/wrong-interviewing.htmlbody src/content/blog/2020/10/20/wrong-interviewing.snippets src/content/blog/2020/10/20/wrong-interviewing.conf: src/content/blog/2020/10/20/wrong-interviewing.adoc +src/content/blog/2020/11/07/diy-bugs.htmlbody src/content/blog/2020/11/07/diy-bugs.snippets src/content/blog/2020/11/07/diy-bugs.conf: src/content/blog/2020/11/07/diy-bugs.adoc +src/content/blog/2020/11/08/paradigm-shift-review.htmlbody src/content/blog/2020/11/08/paradigm-shift-review.snippets src/content/blog/2020/11/08/paradigm-shift-review.conf: src/content/blog/2020/11/08/paradigm-shift-review.adoc +src/content/blog/2020/11/12/database-parsers-trees.htmlbody src/content/blog/2020/11/12/database-parsers-trees.snippets src/content/blog/2020/11/12/database-parsers-trees.conf: src/content/blog/2020/11/12/database-parsers-trees.adoc +src/content/blog/2020/11/14/local-first-review.htmlbody src/content/blog/2020/11/14/local-first-review.snippets src/content/blog/2020/11/14/local-first-review.conf: src/content/blog/2020/11/14/local-first-review.adoc +src/content/blog/2021/01/26/remembering-ann.htmlbody src/content/blog/2021/01/26/remembering-ann.snippets src/content/blog/2021/01/26/remembering-ann.conf: src/content/blog/2021/01/26/remembering-ann.adoc +src/content/blog/2021/02/17/fallible.htmlbody src/content/blog/2021/02/17/fallible.snippets src/content/blog/2021/02/17/fallible.conf: src/content/blog/2021/02/17/fallible.adoc +src/content/blog/2021/04/29/relational-review.htmlbody src/content/blog/2021/04/29/relational-review.snippets src/content/blog/2021/04/29/relational-review.conf: src/content/blog/2021/04/29/relational-review.adoc +src/content/pastebins/2016/04/05/rpn.htmlbody src/content/pastebins/2016/04/05/rpn.snippets src/content/pastebins/2016/04/05/rpn.conf: src/content/pastebins/2016/04/05/rpn.adoc +src/content/pastebins/2018/07/11/nix-pinning.htmlbody src/content/pastebins/2018/07/11/nix-pinning.snippets src/content/pastebins/2018/07/11/nix-pinning.conf: src/content/pastebins/2018/07/11/nix-pinning.adoc +src/content/pastebins/2018/07/13/guix-nixos-systemd.htmlbody src/content/pastebins/2018/07/13/guix-nixos-systemd.snippets src/content/pastebins/2018/07/13/guix-nixos-systemd.conf: src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc +src/content/pastebins/2018/07/13/guixbuilder-nixos.htmlbody src/content/pastebins/2018/07/13/guixbuilder-nixos.snippets src/content/pastebins/2018/07/13/guixbuilder-nixos.conf: src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc +src/content/pastebins/2018/07/13/guixbuilder.htmlbody src/content/pastebins/2018/07/13/guixbuilder.snippets src/content/pastebins/2018/07/13/guixbuilder.conf: src/content/pastebins/2018/07/13/guixbuilder.adoc +src/content/pastebins/2018/07/13/nix-strpad.htmlbody src/content/pastebins/2018/07/13/nix-strpad.snippets src/content/pastebins/2018/07/13/nix-strpad.conf: src/content/pastebins/2018/07/13/nix-strpad.adoc +src/content/pastebins/2018/07/25/nix-exps.htmlbody src/content/pastebins/2018/07/25/nix-exps.snippets src/content/pastebins/2018/07/25/nix-exps.conf: src/content/pastebins/2018/07/25/nix-exps.adoc +src/content/pastebins/2018/07/25/nix-showdrv.htmlbody src/content/pastebins/2018/07/25/nix-showdrv.snippets src/content/pastebins/2018/07/25/nix-showdrv.conf: src/content/pastebins/2018/07/25/nix-showdrv.adoc +src/content/pastebins/2019/06/08/inconsistent-hash.htmlbody src/content/pastebins/2019/06/08/inconsistent-hash.snippets src/content/pastebins/2019/06/08/inconsistent-hash.conf: src/content/pastebins/2019/06/08/inconsistent-hash.adoc +src/content/pastebins/2019/12/29/raku-tuple-type.htmlbody src/content/pastebins/2019/12/29/raku-tuple-type.snippets src/content/pastebins/2019/12/29/raku-tuple-type.conf: src/content/pastebins/2019/12/29/raku-tuple-type.adoc +src/content/pastebins/2020/01/04/guix-import-failure.htmlbody src/content/pastebins/2020/01/04/guix-import-failure.snippets src/content/pastebins/2020/01/04/guix-import-failure.conf: src/content/pastebins/2020/01/04/guix-import-failure.adoc +src/content/pastebins/2020/02/14/guix-shebang.htmlbody src/content/pastebins/2020/02/14/guix-shebang.snippets src/content/pastebins/2020/02/14/guix-shebang.conf: src/content/pastebins/2020/02/14/guix-shebang.adoc +src/content/pastebins/2020/11/27/guix-build-local.htmlbody src/content/pastebins/2020/11/27/guix-build-local.snippets src/content/pastebins/2020/11/27/guix-build-local.conf: src/content/pastebins/2020/11/27/guix-build-local.adoc +src/content/pastebins/2020/12/15/guix-pack-fail.htmlbody src/content/pastebins/2020/12/15/guix-pack-fail.snippets src/content/pastebins/2020/12/15/guix-pack-fail.conf: src/content/pastebins/2020/12/15/guix-pack-fail.adoc +src/content/pastebins/2021/04/03/naive-slugify-js.htmlbody src/content/pastebins/2021/04/03/naive-slugify-js.snippets src/content/pastebins/2021/04/03/naive-slugify-js.conf: src/content/pastebins/2021/04/03/naive-slugify-js.adoc +src/content/pastebins/2021/06/08/reading-session-pt1.htmlbody src/content/pastebins/2021/06/08/reading-session-pt1.snippets src/content/pastebins/2021/06/08/reading-session-pt1.conf: src/content/pastebins/2021/06/08/reading-session-pt1.adoc +src/content/pastebins/2021/06/22/curl-wget.htmlbody src/content/pastebins/2021/06/22/curl-wget.snippets src/content/pastebins/2021/06/22/curl-wget.conf: src/content/pastebins/2021/06/22/curl-wget.adoc +src/content/pastebins/2021/08/11/h1-spacing.htmlbody src/content/pastebins/2021/08/11/h1-spacing.snippets src/content/pastebins/2021/08/11/h1-spacing.conf: src/content/pastebins/2021/08/11/h1-spacing.adoc +src/content/pastebins/2021/09/02/sicp-3-19.htmlbody src/content/pastebins/2021/09/02/sicp-3-19.snippets src/content/pastebins/2021/09/02/sicp-3-19.conf: src/content/pastebins/2021/09/02/sicp-3-19.adoc +src/content/pastebins/2021/09/03/sicp-persistent-queue.htmlbody src/content/pastebins/2021/09/03/sicp-persistent-queue.snippets src/content/pastebins/2021/09/03/sicp-persistent-queue.conf: src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc +src/content/pastebins/2022/07/14/git-cleanup.htmlbody src/content/pastebins/2022/07/14/git-cleanup.snippets src/content/pastebins/2022/07/14/git-cleanup.conf: src/content/pastebins/2022/07/14/git-cleanup.adoc +src/content/pastebins/2023/07/22/funcallable-amop.htmlbody src/content/pastebins/2023/07/22/funcallable-amop.snippets src/content/pastebins/2023/07/22/funcallable-amop.conf: src/content/pastebins/2023/07/22/funcallable-amop.adoc +src/content/podcasts/2020/12/19/test-entry.htmlbody src/content/podcasts/2020/12/19/test-entry.snippets src/content/podcasts/2020/12/19/test-entry.conf: src/content/podcasts/2020/12/19/test-entry.adoc +src/content/screencasts/2021/02/07/autoqemu.htmlbody src/content/screencasts/2021/02/07/autoqemu.snippets src/content/screencasts/2021/02/07/autoqemu.conf: src/content/screencasts/2021/02/07/autoqemu.adoc +src/content/tils/2020/08/12/filename-timestamp.htmlbody src/content/tils/2020/08/12/filename-timestamp.snippets src/content/tils/2020/08/12/filename-timestamp.conf: src/content/tils/2020/08/12/filename-timestamp.adoc +src/content/tils/2020/08/13/code-jekyll.htmlbody src/content/tils/2020/08/13/code-jekyll.snippets src/content/tils/2020/08/13/code-jekyll.conf: src/content/tils/2020/08/13/code-jekyll.adoc +src/content/tils/2020/08/14/browse-git.htmlbody src/content/tils/2020/08/14/browse-git.snippets src/content/tils/2020/08/14/browse-git.conf: src/content/tils/2020/08/14/browse-git.adoc +src/content/tils/2020/08/16/git-search.htmlbody src/content/tils/2020/08/16/git-search.snippets src/content/tils/2020/08/16/git-search.conf: src/content/tils/2020/08/16/git-search.adoc +src/content/tils/2020/08/28/grep-online.htmlbody src/content/tils/2020/08/28/grep-online.snippets src/content/tils/2020/08/28/grep-online.conf: src/content/tils/2020/08/28/grep-online.adoc +src/content/tils/2020/09/04/email-cli-fun-profit.htmlbody src/content/tils/2020/09/04/email-cli-fun-profit.snippets src/content/tils/2020/09/04/email-cli-fun-profit.conf: src/content/tils/2020/09/04/email-cli-fun-profit.adoc +src/content/tils/2020/09/05/oldschool-pr.htmlbody src/content/tils/2020/09/05/oldschool-pr.snippets src/content/tils/2020/09/05/oldschool-pr.conf: src/content/tils/2020/09/05/oldschool-pr.adoc +src/content/tils/2020/10/11/search-git-history.htmlbody src/content/tils/2020/10/11/search-git-history.snippets src/content/tils/2020/10/11/search-git-history.conf: src/content/tils/2020/10/11/search-git-history.adoc +src/content/tils/2020/11/08/find-broken-symlink.htmlbody src/content/tils/2020/11/08/find-broken-symlink.snippets src/content/tils/2020/11/08/find-broken-symlink.conf: src/content/tils/2020/11/08/find-broken-symlink.adoc +src/content/tils/2020/11/12/diy-nix-bash-ci.htmlbody src/content/tils/2020/11/12/diy-nix-bash-ci.snippets src/content/tils/2020/11/12/diy-nix-bash-ci.conf: src/content/tils/2020/11/12/diy-nix-bash-ci.adoc +src/content/tils/2020/11/12/git-bisect-automation.htmlbody src/content/tils/2020/11/12/git-bisect-automation.snippets src/content/tils/2020/11/12/git-bisect-automation.conf: src/content/tils/2020/11/12/git-bisect-automation.adoc +src/content/tils/2020/11/12/useful-bashvars.htmlbody src/content/tils/2020/11/12/useful-bashvars.snippets src/content/tils/2020/11/12/useful-bashvars.conf: src/content/tils/2020/11/12/useful-bashvars.adoc +src/content/tils/2020/11/14/gpodder-media.htmlbody src/content/tils/2020/11/14/gpodder-media.snippets src/content/tils/2020/11/14/gpodder-media.conf: src/content/tils/2020/11/14/gpodder-media.adoc +src/content/tils/2020/11/30/git-notes-ci.htmlbody src/content/tils/2020/11/30/git-notes-ci.snippets src/content/tils/2020/11/30/git-notes-ci.conf: src/content/tils/2020/11/30/git-notes-ci.adoc +src/content/tils/2020/12/15/shellcheck-repo.htmlbody src/content/tils/2020/12/15/shellcheck-repo.snippets src/content/tils/2020/12/15/shellcheck-repo.conf: src/content/tils/2020/12/15/shellcheck-repo.adoc +src/content/tils/2020/12/29/svg.htmlbody src/content/tils/2020/12/29/svg.snippets src/content/tils/2020/12/29/svg.conf: src/content/tils/2020/12/29/svg.adoc +src/content/tils/2021/01/12/curl-awk-emails.htmlbody src/content/tils/2021/01/12/curl-awk-emails.snippets src/content/tils/2021/01/12/curl-awk-emails.conf: src/content/tils/2021/01/12/curl-awk-emails.adoc +src/content/tils/2021/01/17/posix-shebang.htmlbody src/content/tils/2021/01/17/posix-shebang.snippets src/content/tils/2021/01/17/posix-shebang.conf: src/content/tils/2021/01/17/posix-shebang.adoc +src/content/tils/2021/04/24/cl-generic-precedence.htmlbody src/content/tils/2021/04/24/cl-generic-precedence.snippets src/content/tils/2021/04/24/cl-generic-precedence.conf: src/content/tils/2021/04/24/cl-generic-precedence.adoc +src/content/tils/2021/04/24/clojure-autocurry.htmlbody src/content/tils/2021/04/24/clojure-autocurry.snippets src/content/tils/2021/04/24/clojure-autocurry.conf: src/content/tils/2021/04/24/clojure-autocurry.adoc +src/content/tils/2021/04/24/scm-nif.htmlbody src/content/tils/2021/04/24/scm-nif.snippets src/content/tils/2021/04/24/scm-nif.conf: src/content/tils/2021/04/24/scm-nif.adoc +src/content/tils/2021/07/23/git-tls-gpg.htmlbody src/content/tils/2021/07/23/git-tls-gpg.snippets src/content/tils/2021/07/23/git-tls-gpg.conf: src/content/tils/2021/07/23/git-tls-gpg.adoc +src/content/tils/2021/08/11/js-bigint-reviver.htmlbody src/content/tils/2021/08/11/js-bigint-reviver.snippets src/content/tils/2021/08/11/js-bigint-reviver.conf: src/content/tils/2021/08/11/js-bigint-reviver.adoc +src/content/blog/index.htmlbody src/content/blog/index.snippets src/content/blog/index.conf: src/content/blog/index.adoc +src/content/pastebins/index.htmlbody src/content/pastebins/index.snippets src/content/pastebins/index.conf: src/content/pastebins/index.adoc +src/content/podcasts/index.htmlbody src/content/podcasts/index.snippets src/content/podcasts/index.conf: src/content/podcasts/index.adoc +src/content/screencasts/index.htmlbody src/content/screencasts/index.snippets src/content/screencasts/index.conf: src/content/screencasts/index.adoc +src/content/tils/index.htmlbody src/content/tils/index.snippets src/content/tils/index.conf: src/content/tils/index.adoc +src/content/about.html: src/content/about.conf src/content/about.htmlbody +src/content/index.html: src/content/index.conf src/content/index.htmlbody +src/content/blog/2018/07/17/guix-nixos.html: src/content/blog/2018/07/17/guix-nixos.conf src/content/blog/2018/07/17/guix-nixos.htmlbody +src/content/blog/2018/08/01/npm-ci-reproducibility.html: src/content/blog/2018/08/01/npm-ci-reproducibility.conf src/content/blog/2018/08/01/npm-ci-reproducibility.htmlbody +src/content/blog/2018/12/21/ytdl-subs.html: src/content/blog/2018/12/21/ytdl-subs.conf src/content/blog/2018/12/21/ytdl-subs.htmlbody +src/content/blog/2019/06/02/nixos-stateless-workstation.html: src/content/blog/2019/06/02/nixos-stateless-workstation.conf src/content/blog/2019/06/02/nixos-stateless-workstation.htmlbody +src/content/blog/2020/08/10/guix-srht.html: src/content/blog/2020/08/10/guix-srht.conf src/content/blog/2020/08/10/guix-srht.htmlbody +src/content/blog/2020/08/31/database-i-with-i-had.html: src/content/blog/2020/08/31/database-i-with-i-had.conf src/content/blog/2020/08/31/database-i-with-i-had.htmlbody +src/content/blog/2020/10/05/cargo2nix.html: src/content/blog/2020/10/05/cargo2nix.conf src/content/blog/2020/10/05/cargo2nix.htmlbody +src/content/blog/2020/10/05/swift2nix.html: src/content/blog/2020/10/05/swift2nix.conf src/content/blog/2020/10/05/swift2nix.htmlbody +src/content/blog/2020/10/19/feature-flags.html: src/content/blog/2020/10/19/feature-flags.conf src/content/blog/2020/10/19/feature-flags.htmlbody +src/content/blog/2020/10/20/wrong-interviewing.html: src/content/blog/2020/10/20/wrong-interviewing.conf src/content/blog/2020/10/20/wrong-interviewing.htmlbody +src/content/blog/2020/11/07/diy-bugs.html: src/content/blog/2020/11/07/diy-bugs.conf src/content/blog/2020/11/07/diy-bugs.htmlbody +src/content/blog/2020/11/08/paradigm-shift-review.html: src/content/blog/2020/11/08/paradigm-shift-review.conf src/content/blog/2020/11/08/paradigm-shift-review.htmlbody +src/content/blog/2020/11/12/database-parsers-trees.html: src/content/blog/2020/11/12/database-parsers-trees.conf src/content/blog/2020/11/12/database-parsers-trees.htmlbody +src/content/blog/2020/11/14/local-first-review.html: src/content/blog/2020/11/14/local-first-review.conf src/content/blog/2020/11/14/local-first-review.htmlbody +src/content/blog/2021/01/26/remembering-ann.html: src/content/blog/2021/01/26/remembering-ann.conf src/content/blog/2021/01/26/remembering-ann.htmlbody +src/content/blog/2021/02/17/fallible.html: src/content/blog/2021/02/17/fallible.conf src/content/blog/2021/02/17/fallible.htmlbody +src/content/blog/2021/04/29/relational-review.html: src/content/blog/2021/04/29/relational-review.conf src/content/blog/2021/04/29/relational-review.htmlbody +src/content/pastebins/2016/04/05/rpn.html: src/content/pastebins/2016/04/05/rpn.conf src/content/pastebins/2016/04/05/rpn.htmlbody +src/content/pastebins/2018/07/11/nix-pinning.html: src/content/pastebins/2018/07/11/nix-pinning.conf src/content/pastebins/2018/07/11/nix-pinning.htmlbody +src/content/pastebins/2018/07/13/guix-nixos-systemd.html: src/content/pastebins/2018/07/13/guix-nixos-systemd.conf src/content/pastebins/2018/07/13/guix-nixos-systemd.htmlbody +src/content/pastebins/2018/07/13/guixbuilder-nixos.html: src/content/pastebins/2018/07/13/guixbuilder-nixos.conf src/content/pastebins/2018/07/13/guixbuilder-nixos.htmlbody +src/content/pastebins/2018/07/13/guixbuilder.html: src/content/pastebins/2018/07/13/guixbuilder.conf src/content/pastebins/2018/07/13/guixbuilder.htmlbody +src/content/pastebins/2018/07/13/nix-strpad.html: src/content/pastebins/2018/07/13/nix-strpad.conf src/content/pastebins/2018/07/13/nix-strpad.htmlbody +src/content/pastebins/2018/07/25/nix-exps.html: src/content/pastebins/2018/07/25/nix-exps.conf src/content/pastebins/2018/07/25/nix-exps.htmlbody +src/content/pastebins/2018/07/25/nix-showdrv.html: src/content/pastebins/2018/07/25/nix-showdrv.conf src/content/pastebins/2018/07/25/nix-showdrv.htmlbody +src/content/pastebins/2019/06/08/inconsistent-hash.html: src/content/pastebins/2019/06/08/inconsistent-hash.conf src/content/pastebins/2019/06/08/inconsistent-hash.htmlbody +src/content/pastebins/2019/12/29/raku-tuple-type.html: src/content/pastebins/2019/12/29/raku-tuple-type.conf src/content/pastebins/2019/12/29/raku-tuple-type.htmlbody +src/content/pastebins/2020/01/04/guix-import-failure.html: src/content/pastebins/2020/01/04/guix-import-failure.conf src/content/pastebins/2020/01/04/guix-import-failure.htmlbody +src/content/pastebins/2020/02/14/guix-shebang.html: src/content/pastebins/2020/02/14/guix-shebang.conf src/content/pastebins/2020/02/14/guix-shebang.htmlbody +src/content/pastebins/2020/11/27/guix-build-local.html: src/content/pastebins/2020/11/27/guix-build-local.conf src/content/pastebins/2020/11/27/guix-build-local.htmlbody +src/content/pastebins/2020/12/15/guix-pack-fail.html: src/content/pastebins/2020/12/15/guix-pack-fail.conf src/content/pastebins/2020/12/15/guix-pack-fail.htmlbody +src/content/pastebins/2021/04/03/naive-slugify-js.html: src/content/pastebins/2021/04/03/naive-slugify-js.conf src/content/pastebins/2021/04/03/naive-slugify-js.htmlbody +src/content/pastebins/2021/06/08/reading-session-pt1.html: src/content/pastebins/2021/06/08/reading-session-pt1.conf src/content/pastebins/2021/06/08/reading-session-pt1.htmlbody +src/content/pastebins/2021/06/22/curl-wget.html: src/content/pastebins/2021/06/22/curl-wget.conf src/content/pastebins/2021/06/22/curl-wget.htmlbody +src/content/pastebins/2021/08/11/h1-spacing.html: src/content/pastebins/2021/08/11/h1-spacing.conf src/content/pastebins/2021/08/11/h1-spacing.htmlbody +src/content/pastebins/2021/09/02/sicp-3-19.html: src/content/pastebins/2021/09/02/sicp-3-19.conf src/content/pastebins/2021/09/02/sicp-3-19.htmlbody +src/content/pastebins/2021/09/03/sicp-persistent-queue.html: src/content/pastebins/2021/09/03/sicp-persistent-queue.conf src/content/pastebins/2021/09/03/sicp-persistent-queue.htmlbody +src/content/pastebins/2022/07/14/git-cleanup.html: src/content/pastebins/2022/07/14/git-cleanup.conf src/content/pastebins/2022/07/14/git-cleanup.htmlbody +src/content/pastebins/2023/07/22/funcallable-amop.html: src/content/pastebins/2023/07/22/funcallable-amop.conf src/content/pastebins/2023/07/22/funcallable-amop.htmlbody +src/content/podcasts/2020/12/19/test-entry.html: src/content/podcasts/2020/12/19/test-entry.conf src/content/podcasts/2020/12/19/test-entry.htmlbody +src/content/screencasts/2021/02/07/autoqemu.html: src/content/screencasts/2021/02/07/autoqemu.conf src/content/screencasts/2021/02/07/autoqemu.htmlbody +src/content/tils/2020/08/12/filename-timestamp.html: src/content/tils/2020/08/12/filename-timestamp.conf src/content/tils/2020/08/12/filename-timestamp.htmlbody +src/content/tils/2020/08/13/code-jekyll.html: src/content/tils/2020/08/13/code-jekyll.conf src/content/tils/2020/08/13/code-jekyll.htmlbody +src/content/tils/2020/08/14/browse-git.html: src/content/tils/2020/08/14/browse-git.conf src/content/tils/2020/08/14/browse-git.htmlbody +src/content/tils/2020/08/16/git-search.html: src/content/tils/2020/08/16/git-search.conf src/content/tils/2020/08/16/git-search.htmlbody +src/content/tils/2020/08/28/grep-online.html: src/content/tils/2020/08/28/grep-online.conf src/content/tils/2020/08/28/grep-online.htmlbody +src/content/tils/2020/09/04/email-cli-fun-profit.html: src/content/tils/2020/09/04/email-cli-fun-profit.conf src/content/tils/2020/09/04/email-cli-fun-profit.htmlbody +src/content/tils/2020/09/05/oldschool-pr.html: src/content/tils/2020/09/05/oldschool-pr.conf src/content/tils/2020/09/05/oldschool-pr.htmlbody +src/content/tils/2020/10/11/search-git-history.html: src/content/tils/2020/10/11/search-git-history.conf src/content/tils/2020/10/11/search-git-history.htmlbody +src/content/tils/2020/11/08/find-broken-symlink.html: src/content/tils/2020/11/08/find-broken-symlink.conf src/content/tils/2020/11/08/find-broken-symlink.htmlbody +src/content/tils/2020/11/12/diy-nix-bash-ci.html: src/content/tils/2020/11/12/diy-nix-bash-ci.conf src/content/tils/2020/11/12/diy-nix-bash-ci.htmlbody +src/content/tils/2020/11/12/git-bisect-automation.html: src/content/tils/2020/11/12/git-bisect-automation.conf src/content/tils/2020/11/12/git-bisect-automation.htmlbody +src/content/tils/2020/11/12/useful-bashvars.html: src/content/tils/2020/11/12/useful-bashvars.conf src/content/tils/2020/11/12/useful-bashvars.htmlbody +src/content/tils/2020/11/14/gpodder-media.html: src/content/tils/2020/11/14/gpodder-media.conf src/content/tils/2020/11/14/gpodder-media.htmlbody +src/content/tils/2020/11/30/git-notes-ci.html: src/content/tils/2020/11/30/git-notes-ci.conf src/content/tils/2020/11/30/git-notes-ci.htmlbody +src/content/tils/2020/12/15/shellcheck-repo.html: src/content/tils/2020/12/15/shellcheck-repo.conf src/content/tils/2020/12/15/shellcheck-repo.htmlbody +src/content/tils/2020/12/29/svg.html: src/content/tils/2020/12/29/svg.conf src/content/tils/2020/12/29/svg.htmlbody +src/content/tils/2021/01/12/curl-awk-emails.html: src/content/tils/2021/01/12/curl-awk-emails.conf src/content/tils/2021/01/12/curl-awk-emails.htmlbody +src/content/tils/2021/01/17/posix-shebang.html: src/content/tils/2021/01/17/posix-shebang.conf src/content/tils/2021/01/17/posix-shebang.htmlbody +src/content/tils/2021/04/24/cl-generic-precedence.html: src/content/tils/2021/04/24/cl-generic-precedence.conf src/content/tils/2021/04/24/cl-generic-precedence.htmlbody +src/content/tils/2021/04/24/clojure-autocurry.html: src/content/tils/2021/04/24/clojure-autocurry.conf src/content/tils/2021/04/24/clojure-autocurry.htmlbody +src/content/tils/2021/04/24/scm-nif.html: src/content/tils/2021/04/24/scm-nif.conf src/content/tils/2021/04/24/scm-nif.htmlbody +src/content/tils/2021/07/23/git-tls-gpg.html: src/content/tils/2021/07/23/git-tls-gpg.conf src/content/tils/2021/07/23/git-tls-gpg.htmlbody +src/content/tils/2021/08/11/js-bigint-reviver.html: src/content/tils/2021/08/11/js-bigint-reviver.conf src/content/tils/2021/08/11/js-bigint-reviver.htmlbody +src/content/blog/index.html: src/content/blog/index.conf src/content/blog/index.htmlbody +src/content/pastebins/index.html: src/content/pastebins/index.conf src/content/pastebins/index.htmlbody +src/content/podcasts/index.html: src/content/podcasts/index.conf src/content/podcasts/index.htmlbody +src/content/screencasts/index.html: src/content/screencasts/index.conf src/content/screencasts/index.htmlbody +src/content/tils/index.html: src/content/tils/index.conf src/content/tils/index.htmlbody + +src/content/blog/2018/07/17/guix-nixos.feedentry: src/content/blog/2018/07/17/guix-nixos.conf src/content/blog/2018/07/17/guix-nixos.htmlbody +src/content/blog/2018/08/01/npm-ci-reproducibility.feedentry: src/content/blog/2018/08/01/npm-ci-reproducibility.conf src/content/blog/2018/08/01/npm-ci-reproducibility.htmlbody +src/content/blog/2018/12/21/ytdl-subs.feedentry: src/content/blog/2018/12/21/ytdl-subs.conf src/content/blog/2018/12/21/ytdl-subs.htmlbody +src/content/blog/2019/06/02/nixos-stateless-workstation.feedentry: src/content/blog/2019/06/02/nixos-stateless-workstation.conf src/content/blog/2019/06/02/nixos-stateless-workstation.htmlbody +src/content/blog/2020/08/10/guix-srht.feedentry: src/content/blog/2020/08/10/guix-srht.conf src/content/blog/2020/08/10/guix-srht.htmlbody +src/content/blog/2020/08/31/database-i-with-i-had.feedentry: src/content/blog/2020/08/31/database-i-with-i-had.conf src/content/blog/2020/08/31/database-i-with-i-had.htmlbody +src/content/blog/2020/10/05/cargo2nix.feedentry: src/content/blog/2020/10/05/cargo2nix.conf src/content/blog/2020/10/05/cargo2nix.htmlbody +src/content/blog/2020/10/05/swift2nix.feedentry: src/content/blog/2020/10/05/swift2nix.conf src/content/blog/2020/10/05/swift2nix.htmlbody +src/content/blog/2020/10/19/feature-flags.feedentry: src/content/blog/2020/10/19/feature-flags.conf src/content/blog/2020/10/19/feature-flags.htmlbody +src/content/blog/2020/10/20/wrong-interviewing.feedentry: src/content/blog/2020/10/20/wrong-interviewing.conf src/content/blog/2020/10/20/wrong-interviewing.htmlbody +src/content/blog/2020/11/07/diy-bugs.feedentry: src/content/blog/2020/11/07/diy-bugs.conf src/content/blog/2020/11/07/diy-bugs.htmlbody +src/content/blog/2020/11/08/paradigm-shift-review.feedentry: src/content/blog/2020/11/08/paradigm-shift-review.conf src/content/blog/2020/11/08/paradigm-shift-review.htmlbody +src/content/blog/2020/11/12/database-parsers-trees.feedentry: src/content/blog/2020/11/12/database-parsers-trees.conf src/content/blog/2020/11/12/database-parsers-trees.htmlbody +src/content/blog/2020/11/14/local-first-review.feedentry: src/content/blog/2020/11/14/local-first-review.conf src/content/blog/2020/11/14/local-first-review.htmlbody +src/content/blog/2021/01/26/remembering-ann.feedentry: src/content/blog/2021/01/26/remembering-ann.conf src/content/blog/2021/01/26/remembering-ann.htmlbody +src/content/blog/2021/02/17/fallible.feedentry: src/content/blog/2021/02/17/fallible.conf src/content/blog/2021/02/17/fallible.htmlbody +src/content/blog/2021/04/29/relational-review.feedentry: src/content/blog/2021/04/29/relational-review.conf src/content/blog/2021/04/29/relational-review.htmlbody +src/content/pastebins/2016/04/05/rpn.feedentry: src/content/pastebins/2016/04/05/rpn.conf src/content/pastebins/2016/04/05/rpn.htmlbody +src/content/pastebins/2018/07/11/nix-pinning.feedentry: src/content/pastebins/2018/07/11/nix-pinning.conf src/content/pastebins/2018/07/11/nix-pinning.htmlbody +src/content/pastebins/2018/07/13/guix-nixos-systemd.feedentry: src/content/pastebins/2018/07/13/guix-nixos-systemd.conf src/content/pastebins/2018/07/13/guix-nixos-systemd.htmlbody +src/content/pastebins/2018/07/13/guixbuilder-nixos.feedentry: src/content/pastebins/2018/07/13/guixbuilder-nixos.conf src/content/pastebins/2018/07/13/guixbuilder-nixos.htmlbody +src/content/pastebins/2018/07/13/guixbuilder.feedentry: src/content/pastebins/2018/07/13/guixbuilder.conf src/content/pastebins/2018/07/13/guixbuilder.htmlbody +src/content/pastebins/2018/07/13/nix-strpad.feedentry: src/content/pastebins/2018/07/13/nix-strpad.conf src/content/pastebins/2018/07/13/nix-strpad.htmlbody +src/content/pastebins/2018/07/25/nix-exps.feedentry: src/content/pastebins/2018/07/25/nix-exps.conf src/content/pastebins/2018/07/25/nix-exps.htmlbody +src/content/pastebins/2018/07/25/nix-showdrv.feedentry: src/content/pastebins/2018/07/25/nix-showdrv.conf src/content/pastebins/2018/07/25/nix-showdrv.htmlbody +src/content/pastebins/2019/06/08/inconsistent-hash.feedentry: src/content/pastebins/2019/06/08/inconsistent-hash.conf src/content/pastebins/2019/06/08/inconsistent-hash.htmlbody +src/content/pastebins/2019/12/29/raku-tuple-type.feedentry: src/content/pastebins/2019/12/29/raku-tuple-type.conf src/content/pastebins/2019/12/29/raku-tuple-type.htmlbody +src/content/pastebins/2020/01/04/guix-import-failure.feedentry: src/content/pastebins/2020/01/04/guix-import-failure.conf src/content/pastebins/2020/01/04/guix-import-failure.htmlbody +src/content/pastebins/2020/02/14/guix-shebang.feedentry: src/content/pastebins/2020/02/14/guix-shebang.conf src/content/pastebins/2020/02/14/guix-shebang.htmlbody +src/content/pastebins/2020/11/27/guix-build-local.feedentry: src/content/pastebins/2020/11/27/guix-build-local.conf src/content/pastebins/2020/11/27/guix-build-local.htmlbody +src/content/pastebins/2020/12/15/guix-pack-fail.feedentry: src/content/pastebins/2020/12/15/guix-pack-fail.conf src/content/pastebins/2020/12/15/guix-pack-fail.htmlbody +src/content/pastebins/2021/04/03/naive-slugify-js.feedentry: src/content/pastebins/2021/04/03/naive-slugify-js.conf src/content/pastebins/2021/04/03/naive-slugify-js.htmlbody +src/content/pastebins/2021/06/08/reading-session-pt1.feedentry: src/content/pastebins/2021/06/08/reading-session-pt1.conf src/content/pastebins/2021/06/08/reading-session-pt1.htmlbody +src/content/pastebins/2021/06/22/curl-wget.feedentry: src/content/pastebins/2021/06/22/curl-wget.conf src/content/pastebins/2021/06/22/curl-wget.htmlbody +src/content/pastebins/2021/08/11/h1-spacing.feedentry: src/content/pastebins/2021/08/11/h1-spacing.conf src/content/pastebins/2021/08/11/h1-spacing.htmlbody +src/content/pastebins/2021/09/02/sicp-3-19.feedentry: src/content/pastebins/2021/09/02/sicp-3-19.conf src/content/pastebins/2021/09/02/sicp-3-19.htmlbody +src/content/pastebins/2021/09/03/sicp-persistent-queue.feedentry: src/content/pastebins/2021/09/03/sicp-persistent-queue.conf src/content/pastebins/2021/09/03/sicp-persistent-queue.htmlbody +src/content/pastebins/2022/07/14/git-cleanup.feedentry: src/content/pastebins/2022/07/14/git-cleanup.conf src/content/pastebins/2022/07/14/git-cleanup.htmlbody +src/content/pastebins/2023/07/22/funcallable-amop.feedentry: src/content/pastebins/2023/07/22/funcallable-amop.conf src/content/pastebins/2023/07/22/funcallable-amop.htmlbody +src/content/podcasts/2020/12/19/test-entry.feedentry: src/content/podcasts/2020/12/19/test-entry.conf src/content/podcasts/2020/12/19/test-entry.htmlbody +src/content/screencasts/2021/02/07/autoqemu.feedentry: src/content/screencasts/2021/02/07/autoqemu.conf src/content/screencasts/2021/02/07/autoqemu.htmlbody +src/content/tils/2020/08/12/filename-timestamp.feedentry: src/content/tils/2020/08/12/filename-timestamp.conf src/content/tils/2020/08/12/filename-timestamp.htmlbody +src/content/tils/2020/08/13/code-jekyll.feedentry: src/content/tils/2020/08/13/code-jekyll.conf src/content/tils/2020/08/13/code-jekyll.htmlbody +src/content/tils/2020/08/14/browse-git.feedentry: src/content/tils/2020/08/14/browse-git.conf src/content/tils/2020/08/14/browse-git.htmlbody +src/content/tils/2020/08/16/git-search.feedentry: src/content/tils/2020/08/16/git-search.conf src/content/tils/2020/08/16/git-search.htmlbody +src/content/tils/2020/08/28/grep-online.feedentry: src/content/tils/2020/08/28/grep-online.conf src/content/tils/2020/08/28/grep-online.htmlbody +src/content/tils/2020/09/04/email-cli-fun-profit.feedentry: src/content/tils/2020/09/04/email-cli-fun-profit.conf src/content/tils/2020/09/04/email-cli-fun-profit.htmlbody +src/content/tils/2020/09/05/oldschool-pr.feedentry: src/content/tils/2020/09/05/oldschool-pr.conf src/content/tils/2020/09/05/oldschool-pr.htmlbody +src/content/tils/2020/10/11/search-git-history.feedentry: src/content/tils/2020/10/11/search-git-history.conf src/content/tils/2020/10/11/search-git-history.htmlbody +src/content/tils/2020/11/08/find-broken-symlink.feedentry: src/content/tils/2020/11/08/find-broken-symlink.conf src/content/tils/2020/11/08/find-broken-symlink.htmlbody +src/content/tils/2020/11/12/diy-nix-bash-ci.feedentry: src/content/tils/2020/11/12/diy-nix-bash-ci.conf src/content/tils/2020/11/12/diy-nix-bash-ci.htmlbody +src/content/tils/2020/11/12/git-bisect-automation.feedentry: src/content/tils/2020/11/12/git-bisect-automation.conf src/content/tils/2020/11/12/git-bisect-automation.htmlbody +src/content/tils/2020/11/12/useful-bashvars.feedentry: src/content/tils/2020/11/12/useful-bashvars.conf src/content/tils/2020/11/12/useful-bashvars.htmlbody +src/content/tils/2020/11/14/gpodder-media.feedentry: src/content/tils/2020/11/14/gpodder-media.conf src/content/tils/2020/11/14/gpodder-media.htmlbody +src/content/tils/2020/11/30/git-notes-ci.feedentry: src/content/tils/2020/11/30/git-notes-ci.conf src/content/tils/2020/11/30/git-notes-ci.htmlbody +src/content/tils/2020/12/15/shellcheck-repo.feedentry: src/content/tils/2020/12/15/shellcheck-repo.conf src/content/tils/2020/12/15/shellcheck-repo.htmlbody +src/content/tils/2020/12/29/svg.feedentry: src/content/tils/2020/12/29/svg.conf src/content/tils/2020/12/29/svg.htmlbody +src/content/tils/2021/01/12/curl-awk-emails.feedentry: src/content/tils/2021/01/12/curl-awk-emails.conf src/content/tils/2021/01/12/curl-awk-emails.htmlbody +src/content/tils/2021/01/17/posix-shebang.feedentry: src/content/tils/2021/01/17/posix-shebang.conf src/content/tils/2021/01/17/posix-shebang.htmlbody +src/content/tils/2021/04/24/cl-generic-precedence.feedentry: src/content/tils/2021/04/24/cl-generic-precedence.conf src/content/tils/2021/04/24/cl-generic-precedence.htmlbody +src/content/tils/2021/04/24/clojure-autocurry.feedentry: src/content/tils/2021/04/24/clojure-autocurry.conf src/content/tils/2021/04/24/clojure-autocurry.htmlbody +src/content/tils/2021/04/24/scm-nif.feedentry: src/content/tils/2021/04/24/scm-nif.conf src/content/tils/2021/04/24/scm-nif.htmlbody +src/content/tils/2021/07/23/git-tls-gpg.feedentry: src/content/tils/2021/07/23/git-tls-gpg.conf src/content/tils/2021/07/23/git-tls-gpg.htmlbody +src/content/tils/2021/08/11/js-bigint-reviver.feedentry: src/content/tils/2021/08/11/js-bigint-reviver.conf src/content/tils/2021/08/11/js-bigint-reviver.htmlbody +src/content/blog/2018/07/17/guix-nixos.sortdata: src/content/blog/2018/07/17/guix-nixos.conf +src/content/blog/2018/08/01/npm-ci-reproducibility.sortdata: src/content/blog/2018/08/01/npm-ci-reproducibility.conf +src/content/blog/2018/12/21/ytdl-subs.sortdata: src/content/blog/2018/12/21/ytdl-subs.conf +src/content/blog/2019/06/02/nixos-stateless-workstation.sortdata: src/content/blog/2019/06/02/nixos-stateless-workstation.conf +src/content/blog/2020/08/10/guix-srht.sortdata: src/content/blog/2020/08/10/guix-srht.conf +src/content/blog/2020/08/31/database-i-with-i-had.sortdata: src/content/blog/2020/08/31/database-i-with-i-had.conf +src/content/blog/2020/10/05/cargo2nix.sortdata: src/content/blog/2020/10/05/cargo2nix.conf +src/content/blog/2020/10/05/swift2nix.sortdata: src/content/blog/2020/10/05/swift2nix.conf +src/content/blog/2020/10/19/feature-flags.sortdata: src/content/blog/2020/10/19/feature-flags.conf +src/content/blog/2020/10/20/wrong-interviewing.sortdata: src/content/blog/2020/10/20/wrong-interviewing.conf +src/content/blog/2020/11/07/diy-bugs.sortdata: src/content/blog/2020/11/07/diy-bugs.conf +src/content/blog/2020/11/08/paradigm-shift-review.sortdata: src/content/blog/2020/11/08/paradigm-shift-review.conf +src/content/blog/2020/11/12/database-parsers-trees.sortdata: src/content/blog/2020/11/12/database-parsers-trees.conf +src/content/blog/2020/11/14/local-first-review.sortdata: src/content/blog/2020/11/14/local-first-review.conf +src/content/blog/2021/01/26/remembering-ann.sortdata: src/content/blog/2021/01/26/remembering-ann.conf +src/content/blog/2021/02/17/fallible.sortdata: src/content/blog/2021/02/17/fallible.conf +src/content/blog/2021/04/29/relational-review.sortdata: src/content/blog/2021/04/29/relational-review.conf +src/content/pastebins/2016/04/05/rpn.sortdata: src/content/pastebins/2016/04/05/rpn.conf +src/content/pastebins/2018/07/11/nix-pinning.sortdata: src/content/pastebins/2018/07/11/nix-pinning.conf +src/content/pastebins/2018/07/13/guix-nixos-systemd.sortdata: src/content/pastebins/2018/07/13/guix-nixos-systemd.conf +src/content/pastebins/2018/07/13/guixbuilder-nixos.sortdata: src/content/pastebins/2018/07/13/guixbuilder-nixos.conf +src/content/pastebins/2018/07/13/guixbuilder.sortdata: src/content/pastebins/2018/07/13/guixbuilder.conf +src/content/pastebins/2018/07/13/nix-strpad.sortdata: src/content/pastebins/2018/07/13/nix-strpad.conf +src/content/pastebins/2018/07/25/nix-exps.sortdata: src/content/pastebins/2018/07/25/nix-exps.conf +src/content/pastebins/2018/07/25/nix-showdrv.sortdata: src/content/pastebins/2018/07/25/nix-showdrv.conf +src/content/pastebins/2019/06/08/inconsistent-hash.sortdata: src/content/pastebins/2019/06/08/inconsistent-hash.conf +src/content/pastebins/2019/12/29/raku-tuple-type.sortdata: src/content/pastebins/2019/12/29/raku-tuple-type.conf +src/content/pastebins/2020/01/04/guix-import-failure.sortdata: src/content/pastebins/2020/01/04/guix-import-failure.conf +src/content/pastebins/2020/02/14/guix-shebang.sortdata: src/content/pastebins/2020/02/14/guix-shebang.conf +src/content/pastebins/2020/11/27/guix-build-local.sortdata: src/content/pastebins/2020/11/27/guix-build-local.conf +src/content/pastebins/2020/12/15/guix-pack-fail.sortdata: src/content/pastebins/2020/12/15/guix-pack-fail.conf +src/content/pastebins/2021/04/03/naive-slugify-js.sortdata: src/content/pastebins/2021/04/03/naive-slugify-js.conf +src/content/pastebins/2021/06/08/reading-session-pt1.sortdata: src/content/pastebins/2021/06/08/reading-session-pt1.conf +src/content/pastebins/2021/06/22/curl-wget.sortdata: src/content/pastebins/2021/06/22/curl-wget.conf +src/content/pastebins/2021/08/11/h1-spacing.sortdata: src/content/pastebins/2021/08/11/h1-spacing.conf +src/content/pastebins/2021/09/02/sicp-3-19.sortdata: src/content/pastebins/2021/09/02/sicp-3-19.conf +src/content/pastebins/2021/09/03/sicp-persistent-queue.sortdata: src/content/pastebins/2021/09/03/sicp-persistent-queue.conf +src/content/pastebins/2022/07/14/git-cleanup.sortdata: src/content/pastebins/2022/07/14/git-cleanup.conf +src/content/pastebins/2023/07/22/funcallable-amop.sortdata: src/content/pastebins/2023/07/22/funcallable-amop.conf +src/content/podcasts/2020/12/19/test-entry.sortdata: src/content/podcasts/2020/12/19/test-entry.conf +src/content/screencasts/2021/02/07/autoqemu.sortdata: src/content/screencasts/2021/02/07/autoqemu.conf +src/content/tils/2020/08/12/filename-timestamp.sortdata: src/content/tils/2020/08/12/filename-timestamp.conf +src/content/tils/2020/08/13/code-jekyll.sortdata: src/content/tils/2020/08/13/code-jekyll.conf +src/content/tils/2020/08/14/browse-git.sortdata: src/content/tils/2020/08/14/browse-git.conf +src/content/tils/2020/08/16/git-search.sortdata: src/content/tils/2020/08/16/git-search.conf +src/content/tils/2020/08/28/grep-online.sortdata: src/content/tils/2020/08/28/grep-online.conf +src/content/tils/2020/09/04/email-cli-fun-profit.sortdata: src/content/tils/2020/09/04/email-cli-fun-profit.conf +src/content/tils/2020/09/05/oldschool-pr.sortdata: src/content/tils/2020/09/05/oldschool-pr.conf +src/content/tils/2020/10/11/search-git-history.sortdata: src/content/tils/2020/10/11/search-git-history.conf +src/content/tils/2020/11/08/find-broken-symlink.sortdata: src/content/tils/2020/11/08/find-broken-symlink.conf +src/content/tils/2020/11/12/diy-nix-bash-ci.sortdata: src/content/tils/2020/11/12/diy-nix-bash-ci.conf +src/content/tils/2020/11/12/git-bisect-automation.sortdata: src/content/tils/2020/11/12/git-bisect-automation.conf +src/content/tils/2020/11/12/useful-bashvars.sortdata: src/content/tils/2020/11/12/useful-bashvars.conf +src/content/tils/2020/11/14/gpodder-media.sortdata: src/content/tils/2020/11/14/gpodder-media.conf +src/content/tils/2020/11/30/git-notes-ci.sortdata: src/content/tils/2020/11/30/git-notes-ci.conf +src/content/tils/2020/12/15/shellcheck-repo.sortdata: src/content/tils/2020/12/15/shellcheck-repo.conf +src/content/tils/2020/12/29/svg.sortdata: src/content/tils/2020/12/29/svg.conf +src/content/tils/2021/01/12/curl-awk-emails.sortdata: src/content/tils/2021/01/12/curl-awk-emails.conf +src/content/tils/2021/01/17/posix-shebang.sortdata: src/content/tils/2021/01/17/posix-shebang.conf +src/content/tils/2021/04/24/cl-generic-precedence.sortdata: src/content/tils/2021/04/24/cl-generic-precedence.conf +src/content/tils/2021/04/24/clojure-autocurry.sortdata: src/content/tils/2021/04/24/clojure-autocurry.conf +src/content/tils/2021/04/24/scm-nif.sortdata: src/content/tils/2021/04/24/scm-nif.conf +src/content/tils/2021/07/23/git-tls-gpg.sortdata: src/content/tils/2021/07/23/git-tls-gpg.conf +src/content/tils/2021/08/11/js-bigint-reviver.sortdata: src/content/tils/2021/08/11/js-bigint-reviver.conf + +src/content/blog/index.htmlheader src/content/blog/index.htmlfooter: src/content/blog/index.conf +src/content/pastebins/index.htmlheader src/content/pastebins/index.htmlfooter: src/content/pastebins/index.conf +src/content/podcasts/index.htmlheader src/content/podcasts/index.htmlfooter: src/content/podcasts/index.conf +src/content/screencasts/index.htmlheader src/content/screencasts/index.htmlfooter: src/content/screencasts/index.conf +src/content/tils/index.htmlheader src/content/tils/index.htmlfooter: src/content/tils/index.conf +src/content/blog/index.htmllisting: src/content/blog/index.htmldeps +src/content/pastebins/index.htmllisting: src/content/pastebins/index.htmldeps +src/content/podcasts/index.htmllisting: src/content/podcasts/index.htmldeps +src/content/screencasts/index.htmllisting: src/content/screencasts/index.htmldeps +src/content/tils/index.htmllisting: src/content/tils/index.htmldeps +src/content/blog/index.html: src/content/blog/index.htmlheader src/content/blog/index.htmlfooter +src/content/pastebins/index.html: src/content/pastebins/index.htmlheader src/content/pastebins/index.htmlfooter +src/content/podcasts/index.html: src/content/podcasts/index.htmlheader src/content/podcasts/index.htmlfooter +src/content/screencasts/index.html: src/content/screencasts/index.htmlheader src/content/screencasts/index.htmlfooter +src/content/tils/index.html: src/content/tils/index.htmlheader src/content/tils/index.htmlfooter +src/content/blog/index.html: src/content/blog/index.htmllisting src/content/blog/index.htmlbody +src/content/pastebins/index.html: src/content/pastebins/index.htmllisting src/content/pastebins/index.htmlbody +src/content/podcasts/index.html: src/content/podcasts/index.htmllisting src/content/podcasts/index.htmlbody +src/content/screencasts/index.html: src/content/screencasts/index.htmllisting src/content/screencasts/index.htmlbody +src/content/tils/index.html: src/content/tils/index.htmllisting src/content/tils/index.htmlbody + + +articles.blog.adoc = \ + src/content/blog/2018/07/17/guix-nixos.adoc \ + src/content/blog/2018/08/01/npm-ci-reproducibility.adoc \ + src/content/blog/2018/12/21/ytdl-subs.adoc \ + src/content/blog/2019/06/02/nixos-stateless-workstation.adoc \ + src/content/blog/2020/08/10/guix-srht.adoc \ + src/content/blog/2020/08/31/database-i-with-i-had.adoc \ + src/content/blog/2020/10/05/cargo2nix.adoc \ + src/content/blog/2020/10/05/swift2nix.adoc \ + src/content/blog/2020/10/19/feature-flags.adoc \ + src/content/blog/2020/10/20/wrong-interviewing.adoc \ + src/content/blog/2020/11/07/diy-bugs.adoc \ + src/content/blog/2020/11/08/paradigm-shift-review.adoc \ + src/content/blog/2020/11/12/database-parsers-trees.adoc \ + src/content/blog/2020/11/14/local-first-review.adoc \ + src/content/blog/2021/01/26/remembering-ann.adoc \ + src/content/blog/2021/02/17/fallible.adoc \ + src/content/blog/2021/04/29/relational-review.adoc \ + +articles.blog.sortdata = $(articles.blog.adoc:.adoc=.sortdata) +articles.blog.indexentry = $(articles.blog.adoc:.adoc=.indexentry) +articles.blog.feedentry = $(articles.blog.adoc:.adoc=.feedentry) +src/content/blog/index.htmldeps: $(articles.blog.indexentry) +src/content/blog/feed.xmldeps: $(articles.blog.feedentry) +src/content/blog/index.htmldeps src/content/blog/feed.xmldeps: $(articles.blog.sortdata) + find $(articles.blog.sortdata) > $@ + +src/content/blog/feed.xml: src/content/blog/feed.xmldeps + + +articles.pastebins.adoc = \ + src/content/pastebins/2016/04/05/rpn.adoc \ + src/content/pastebins/2018/07/11/nix-pinning.adoc \ + src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc \ + src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc \ + src/content/pastebins/2018/07/13/guixbuilder.adoc \ + src/content/pastebins/2018/07/13/nix-strpad.adoc \ + src/content/pastebins/2018/07/25/nix-exps.adoc \ + src/content/pastebins/2018/07/25/nix-showdrv.adoc \ + src/content/pastebins/2019/06/08/inconsistent-hash.adoc \ + src/content/pastebins/2019/12/29/raku-tuple-type.adoc \ + src/content/pastebins/2020/01/04/guix-import-failure.adoc \ + src/content/pastebins/2020/02/14/guix-shebang.adoc \ + src/content/pastebins/2020/11/27/guix-build-local.adoc \ + src/content/pastebins/2020/12/15/guix-pack-fail.adoc \ + src/content/pastebins/2021/04/03/naive-slugify-js.adoc \ + src/content/pastebins/2021/06/08/reading-session-pt1.adoc \ + src/content/pastebins/2021/06/22/curl-wget.adoc \ + src/content/pastebins/2021/08/11/h1-spacing.adoc \ + src/content/pastebins/2021/09/02/sicp-3-19.adoc \ + src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc \ + src/content/pastebins/2022/07/14/git-cleanup.adoc \ + src/content/pastebins/2023/07/22/funcallable-amop.adoc \ + +articles.pastebins.sortdata = $(articles.pastebins.adoc:.adoc=.sortdata) +articles.pastebins.indexentry = $(articles.pastebins.adoc:.adoc=.indexentry) +articles.pastebins.feedentry = $(articles.pastebins.adoc:.adoc=.feedentry) +src/content/pastebins/index.htmldeps: $(articles.pastebins.indexentry) +src/content/pastebins/feed.xmldeps: $(articles.pastebins.feedentry) +src/content/pastebins/index.htmldeps src/content/pastebins/feed.xmldeps: $(articles.pastebins.sortdata) + find $(articles.pastebins.sortdata) > $@ + +src/content/pastebins/feed.xml: src/content/pastebins/feed.xmldeps + + +articles.podcasts.adoc = \ + src/content/podcasts/2020/12/19/test-entry.adoc \ + +articles.podcasts.sortdata = $(articles.podcasts.adoc:.adoc=.sortdata) +articles.podcasts.indexentry = $(articles.podcasts.adoc:.adoc=.indexentry) +articles.podcasts.feedentry = $(articles.podcasts.adoc:.adoc=.feedentry) +src/content/podcasts/index.htmldeps: $(articles.podcasts.indexentry) +src/content/podcasts/feed.xmldeps: $(articles.podcasts.feedentry) +src/content/podcasts/index.htmldeps src/content/podcasts/feed.xmldeps: $(articles.podcasts.sortdata) + find $(articles.podcasts.sortdata) > $@ + +src/content/podcasts/feed.xml: src/content/podcasts/feed.xmldeps + + +articles.screencasts.adoc = \ + src/content/screencasts/2021/02/07/autoqemu.adoc \ + +articles.screencasts.sortdata = $(articles.screencasts.adoc:.adoc=.sortdata) +articles.screencasts.indexentry = $(articles.screencasts.adoc:.adoc=.indexentry) +articles.screencasts.feedentry = $(articles.screencasts.adoc:.adoc=.feedentry) +src/content/screencasts/index.htmldeps: $(articles.screencasts.indexentry) +src/content/screencasts/feed.xmldeps: $(articles.screencasts.feedentry) +src/content/screencasts/index.htmldeps src/content/screencasts/feed.xmldeps: $(articles.screencasts.sortdata) + find $(articles.screencasts.sortdata) > $@ + +src/content/screencasts/feed.xml: src/content/screencasts/feed.xmldeps + + +articles.tils.adoc = \ + src/content/tils/2020/08/12/filename-timestamp.adoc \ + src/content/tils/2020/08/13/code-jekyll.adoc \ + src/content/tils/2020/08/14/browse-git.adoc \ + src/content/tils/2020/08/16/git-search.adoc \ + src/content/tils/2020/08/28/grep-online.adoc \ + src/content/tils/2020/09/04/email-cli-fun-profit.adoc \ + src/content/tils/2020/09/05/oldschool-pr.adoc \ + src/content/tils/2020/10/11/search-git-history.adoc \ + src/content/tils/2020/11/08/find-broken-symlink.adoc \ + src/content/tils/2020/11/12/diy-nix-bash-ci.adoc \ + src/content/tils/2020/11/12/git-bisect-automation.adoc \ + src/content/tils/2020/11/12/useful-bashvars.adoc \ + src/content/tils/2020/11/14/gpodder-media.adoc \ + src/content/tils/2020/11/30/git-notes-ci.adoc \ + src/content/tils/2020/12/15/shellcheck-repo.adoc \ + src/content/tils/2020/12/29/svg.adoc \ + src/content/tils/2021/01/12/curl-awk-emails.adoc \ + src/content/tils/2021/01/17/posix-shebang.adoc \ + src/content/tils/2021/04/24/cl-generic-precedence.adoc \ + src/content/tils/2021/04/24/clojure-autocurry.adoc \ + src/content/tils/2021/04/24/scm-nif.adoc \ + src/content/tils/2021/07/23/git-tls-gpg.adoc \ + src/content/tils/2021/08/11/js-bigint-reviver.adoc \ + +articles.tils.sortdata = $(articles.tils.adoc:.adoc=.sortdata) +articles.tils.indexentry = $(articles.tils.adoc:.adoc=.indexentry) +articles.tils.feedentry = $(articles.tils.adoc:.adoc=.feedentry) +src/content/tils/index.htmldeps: $(articles.tils.indexentry) +src/content/tils/feed.xmldeps: $(articles.tils.feedentry) +src/content/tils/index.htmldeps src/content/tils/feed.xmldeps: $(articles.tils.sortdata) + find $(articles.tils.sortdata) > $@ + +src/content/tils/feed.xml: src/content/tils/feed.xmldeps diff --git a/mkdeps.sh b/mkdeps.sh new file mode 100755 index 0000000..505ccff --- /dev/null +++ b/mkdeps.sh @@ -0,0 +1,81 @@ +#!/bin/sh +set -eu + +export LANG=POSIX.UTF-8 + + +normalize() { + xargs realpath | + awk -vPWD="$PWD/" '{ print substr($0, length(PWD) + 1) }' | + sort +} + +pages() { + find src/pages/*/*.adoc -type f | normalize +} + +articles() { + find src/collections/*/*/ -type f -name '*.adoc' | normalize +} + +listings() { + find src/collections/*/index.adoc | normalize +} + +extras() { + find src/content/ -type f \ + -name '*.flac' -or \ + -name '*.webm' -or \ + -name '*.tar.gz' +} + +files() { + pages + articles + listings +} + + +pages | varlist 'pages.adoc' +articles | varlist 'articles.adoc' +listings | varlist 'listings.adoc' +listings | sed 's|/index\.adoc$|/feed.xml|' | varlist 'feeds.xml' +find src/content/img/ -name '*.svg' | varlist 'images.svg' +extras | varlist 'sources.extras' + + +files | sed 's/^\(.*\)\.adoc$/\1.htmlbody\t\1.snippets\t\1.conf:\t\1.adoc/' +files | sed 's/^\(.*\)\.adoc$/\1.html:\t\1.conf\t\1.htmlbody/' +printf '\n' + +articles | sed 's/^\(.*\)\.adoc$/\1.feedentry:\t\1.conf\t\1.htmlbody/' +articles | sed 's/^\(.*\)\.adoc$/\1.sortdata:\t\1.conf/' +printf '\n' + +listings | sed 's/^\(.*\)\.adoc$/\1.htmlheader\t\1.htmlfooter:\t\1.conf/' +listings | sed 's/^\(.*\)\.adoc$/\1.htmllisting:\t\1.htmldeps/' +listings | sed 's/^\(.*\)\.adoc$/\1.html:\t\1.htmlheader\t\1.htmlfooter/' +listings | sed 's/^\(.*\)\.adoc$/\1.html:\t\1.htmllisting\t\1.htmlbody/' + +for colllink in src/collections/*; do + c="$(printf '%s' "$colllink" | normalize)" + + printf '\n\n' + name="$(basename "$c")" + find "$c"/*/ -type f -name '*.adoc' | varlist "articles.$name.adoc" + printf 'articles.%s.%s = $(articles.%s.adoc:.adoc=.%s)\n' \ + "$name" 'sortdata ' "$name" 'sortdata' + printf 'articles.%s.%s = $(articles.%s.adoc:.adoc=.%s)\n' \ + "$name" 'indexentry' "$name" 'indexentry' + printf 'articles.%s.%s = $(articles.%s.adoc:.adoc=.%s)\n' \ + "$name" 'feedentry ' "$name" 'feedentry' + + + printf '%s/index.htmldeps: $(articles.%s.indexentry)\n' "$c" "$name" + printf '%s/feed.xmldeps: $(articles.%s.feedentry)\n' "$c" "$name" + + printf '%s/index.htmldeps %s/feed.xmldeps: $(articles.%s.sortdata)\n' \ + "$c" "$c" "$name" + printf '\tfind $(articles.%s.sortdata) > $@\n\n' "$name" + printf '%s/feed.xml:\t%s/feed.xmldeps\n' "$c" "$c" +done diff --git a/src/base.conf b/src/base.conf new file mode 100644 index 0000000..54ccb99 --- /dev/null +++ b/src/base.conf @@ -0,0 +1,13 @@ +export root_dir=src/content +export header_links=src/headers.txt +export url_pre='https://euandre.org' +export email='eu@euandre.org' +export list_addr='~euandreh/public-inbox@lists.sr.ht' +export discussions_url_prefix='https://lists.st.ht/~euandreh/public-inbox' +export sourcecode_url='http://euandre.org/git' +export sourcecode_url_prefix="$sourcecode_url/tree" +export author='EuAndreh' +export site_name="EuAndreh's website" +export feed_title="EuAndreh's blog" +export feed_url='feed.articles.en.xml' +export feed_alternate_url='./' diff --git a/src/collections/blog b/src/collections/blog new file mode 120000 index 0000000..8c3a331 --- /dev/null +++ b/src/collections/blog @@ -0,0 +1 @@ +../content/blog
\ No newline at end of file diff --git a/src/collections/pastebins b/src/collections/pastebins new file mode 120000 index 0000000..61731f2 --- /dev/null +++ b/src/collections/pastebins @@ -0,0 +1 @@ +../content/pastebins
\ No newline at end of file diff --git a/src/collections/podcasts b/src/collections/podcasts new file mode 120000 index 0000000..8e5f3ba --- /dev/null +++ b/src/collections/podcasts @@ -0,0 +1 @@ +../content/podcasts
\ No newline at end of file diff --git a/src/collections/screencasts b/src/collections/screencasts new file mode 120000 index 0000000..09a6cdb --- /dev/null +++ b/src/collections/screencasts @@ -0,0 +1 @@ +../content/screencasts
\ No newline at end of file diff --git a/src/collections/tils b/src/collections/tils new file mode 120000 index 0000000..435da6e --- /dev/null +++ b/src/collections/tils @@ -0,0 +1 @@ +../content/tils
\ No newline at end of file diff --git a/src/content/about.adoc b/src/content/about.adoc new file mode 100644 index 0000000..f380ba9 --- /dev/null +++ b/src/content/about.adoc @@ -0,0 +1,9 @@ += About + +Hi, I'm EuAndreh. I write software and occasionally music. You can find my +contact information in the footer of this page, or mail my +mailto:~euandreh/public-inbox@lists.sr.ht[public inbox] +([https://lists.sr.ht/~euandreh/public-inbox][archive]). + +This is my personal website where I write articles, publish software and more +related work. diff --git a/_articles/2018-07-17-running-guix-on-nixos.md b/src/content/blog/2018/07/17/guix-nixos.adoc index 6005f9f..6005f9f 100644 --- a/_articles/2018-07-17-running-guix-on-nixos.md +++ b/src/content/blog/2018/07/17/guix-nixos.adoc diff --git a/_articles/2018-08-01-verifying-npm-ci-reproducibility.md b/src/content/blog/2018/08/01/npm-ci-reproducibility.adoc index f896c6c..f896c6c 100644 --- a/_articles/2018-08-01-verifying-npm-ci-reproducibility.md +++ b/src/content/blog/2018/08/01/npm-ci-reproducibility.adoc diff --git a/_articles/2018-12-21-using-youtube-dl-to-manage-youtube-subscriptions.md b/src/content/blog/2018/12/21/ytdl-subs.adoc index 183c624..183c624 100644 --- a/_articles/2018-12-21-using-youtube-dl-to-manage-youtube-subscriptions.md +++ b/src/content/blog/2018/12/21/ytdl-subs.adoc diff --git a/_articles/2019-06-02-using-nixos-as-an-stateless-workstation.md b/src/content/blog/2019/06/02/nixos-stateless-workstation.adoc index d78c1d5..c0cfe75 100644 --- a/_articles/2019-06-02-using-nixos-as-an-stateless-workstation.md +++ b/src/content/blog/2019/06/02/nixos-stateless-workstation.adoc @@ -1,6 +1,4 @@ ---- - -title: Using NixOS as an stateless workstation += Using NixOS as an stateless workstation date: 2019-06-02 @@ -55,7 +53,7 @@ After this positive experience with recreating my OS from simple Nix expressions, I started to wonder how far I could go with this, and started considering other areas of improvements: -### First run on a fresh NixOS installation +== First run on a fresh NixOS installation Right now the initial setup relies on non-declarative manual tasks, like decrypting some credentials, or manually downloading **this** git @@ -64,7 +62,7 @@ repository with specific configurations before **that** one. I wonder what some areas of improvements are on this topic, and if investing on it is worth it (both time-wise and happiness-wise). -### Emacs +== Emacs Right now I'm using the [Spacemacs](http://spacemacs.org/), which is a community package curation and configuration on top of diff --git a/_articles/2020-08-10-guix-inside-sourcehut-builds-sr-ht-ci.md b/src/content/blog/2020/08/10/guix-srht.adoc index 4d7e8d5..4d7e8d5 100644 --- a/_articles/2020-08-10-guix-inside-sourcehut-builds-sr-ht-ci.md +++ b/src/content/blog/2020/08/10/guix-srht.adoc diff --git a/_articles/2020-08-31-the-database-i-wish-i-had.md b/src/content/blog/2020/08/31/database-i-with-i-had.adoc index 7d127c1..7d127c1 100644 --- a/_articles/2020-08-31-the-database-i-wish-i-had.md +++ b/src/content/blog/2020/08/31/database-i-with-i-had.adoc diff --git a/static/attachments/cargo2nix-demo.tar.gz b/src/content/blog/2020/10/05/cargo2nix-demo.tar.gz Binary files differindex 281a91c..281a91c 100644 --- a/static/attachments/cargo2nix-demo.tar.gz +++ b/src/content/blog/2020/10/05/cargo2nix-demo.tar.gz diff --git a/_articles/2020-10-05-cargo2nix-dramatically-simpler-rust-in-nix.md b/src/content/blog/2020/10/05/cargo2nix.adoc index 368b62a..1db3d0c 100644 --- a/_articles/2020-10-05-cargo2nix-dramatically-simpler-rust-in-nix.md +++ b/src/content/blog/2020/10/05/cargo2nix.adoc @@ -1,6 +1,4 @@ ---- - -title: "cargo2nix: Dramatically simpler Rust in Nix" += cargo2nix: Dramatically simpler Rust in Nix date: 2020-10-05 2 diff --git a/static/attachments/cargo2nix.tar.gz b/src/content/blog/2020/10/05/cargo2nix.tar.gz Binary files differindex 8a9985a..8a9985a 100644 --- a/static/attachments/cargo2nix.tar.gz +++ b/src/content/blog/2020/10/05/cargo2nix.tar.gz diff --git a/static/attachments/swift2nix-demo.tar.gz b/src/content/blog/2020/10/05/swift2nix-demo.tar.gz Binary files differindex f688572..f688572 100644 --- a/static/attachments/swift2nix-demo.tar.gz +++ b/src/content/blog/2020/10/05/swift2nix-demo.tar.gz diff --git a/_articles/2020-10-05-swift2nix-run-swift-inside-nix-builds.md b/src/content/blog/2020/10/05/swift2nix.adoc index c922589..84f4d34 100644 --- a/_articles/2020-10-05-swift2nix-run-swift-inside-nix-builds.md +++ b/src/content/blog/2020/10/05/swift2nix.adoc @@ -1,6 +1,4 @@ ---- - -title: "swift2nix: Run Swift inside Nix builds" += swift2nix: Run Swift inside Nix builds date: 2020-10-05 1 diff --git a/static/attachments/swift2nix.tar.gz b/src/content/blog/2020/10/05/swift2nix.tar.gz Binary files differindex bfab3f1..bfab3f1 100644 --- a/static/attachments/swift2nix.tar.gz +++ b/src/content/blog/2020/10/05/swift2nix.tar.gz diff --git a/_articles/2020-10-19-feature-flags-differences-between-backend-frontend-and-mobile.md b/src/content/blog/2020/10/19/feature-flags.adoc index c62c2d1..c62c2d1 100644 --- a/_articles/2020-10-19-feature-flags-differences-between-backend-frontend-and-mobile.md +++ b/src/content/blog/2020/10/19/feature-flags.adoc diff --git a/_articles/2020-10-20-how-not-to-interview-engineers.md b/src/content/blog/2020/10/20/wrong-interviewing.adoc index 9cdfefb..9cdfefb 100644 --- a/_articles/2020-10-20-how-not-to-interview-engineers.md +++ b/src/content/blog/2020/10/20/wrong-interviewing.adoc diff --git a/_articles/2020-11-07-diy-an-offline-bug-tracker-with-text-files-git-and-email.md b/src/content/blog/2020/11/07/diy-bugs.adoc index b1dd117..b1dd117 100644 --- a/_articles/2020-11-07-diy-an-offline-bug-tracker-with-text-files-git-and-email.md +++ b/src/content/blog/2020/11/07/diy-bugs.adoc diff --git a/_articles/2020-11-08-the-next-paradigm-shift-in-programming-video-review.md b/src/content/blog/2020/11/08/paradigm-shift-review.adoc index c98c131..c98c131 100644 --- a/_articles/2020-11-08-the-next-paradigm-shift-in-programming-video-review.md +++ b/src/content/blog/2020/11/08/paradigm-shift-review.adoc diff --git a/_articles/2020-11-12-durable-persistent-trees-and-parser-combinators-building-a-database.md b/src/content/blog/2020/11/12/database-parsers-trees.adoc index 05e800e..1870fad 100644 --- a/_articles/2020-11-12-durable-persistent-trees-and-parser-combinators-building-a-database.md +++ b/src/content/blog/2020/11/12/database-parsers-trees.adoc @@ -1,6 +1,4 @@ ---- - -title: Durable persistent trees and parser combinators - building a database += Durable persistent trees and parser combinators - building a database date: 2020-11-12 @@ -22,7 +20,7 @@ I've made any progress on the database project There are a few areas where I've made progress, and here's a public post on it. -## Proof-of-concept: DAG log +== Proof-of-concept: DAG log The main thing I wanted to validate with a concrete implementation was the concept of modeling a DAG on a sequence of datoms. @@ -80,7 +78,7 @@ This code [already exists][clj-poc], but is yet fairly incomplete: [clj-poc-o2-1]: https://euandre.org/git/mediator/tree/src/core/clojure/src/mediator.clj?id=db4a727bc24b54b50158827b34502de21dbf8948#n146 [clj-poc-o2-2]: https://euandre.org/git/mediator/tree/src/core/clojure/src/mediator.clj?id=db4a727bc24b54b50158827b34502de21dbf8948#n253 -## Top-down *and* bottom-up +== Top-down *and* bottom-up However, as time passed and I started looking at what the final implementation would look like, I started to consider keeping the PoC around. @@ -94,7 +92,7 @@ The good thing about a reference implementation is that it has no performance of resources boundary, so if it ends up being 1000x slower and using 500× more memory, it should be find. The code can be also 10x or 100x simpler, too. -## Top-down: durable persistent trees +== Top-down: durable persistent trees In promoting the PoC into a reference implementation, this top-down approach now needs to go beyond doing everything in memory, and the index data structure now @@ -120,15 +118,15 @@ what it will look like: building a new path from root to the leaf. The upside is that writes a lock free, and no coordination is needed between readers and writers, ever; -1. the downside is that a single leaf update means at least `H` new nodes that +2. the downside is that a single leaf update means at least `H` new nodes that will have to be flushed to disk, where `H` is the height of the tree. To avoid that, the writer creates these nodes exclusively on the in-memory memtable, to avoid flushing to disk on every leaf update; -1. a background job will consolidate the memtable data every time it hits X MB, +3. a background job will consolidate the memtable data every time it hits X MB, and persist it to disk, amortizing the cost of the Copy-on-Write B-Tree; -1. readers than will have the extra job of getting the latest relevant +4. readers than will have the extra job of getting the latest relevant disk-resident value and merge it with the memtable data. The key difference to existing Copy-on-Write B-Trees is that the new trees @@ -155,7 +153,7 @@ more[^learn-more-db] and mature it more. "[Intro to Database Systems](https://www.youtube.com/playlist?list=PLSE8ODhjZXjbohkNBWQs_otTrBTrjyohi)" course and Alex Petrov's "[Database Internals](https://www.databass.dev/)" book. -## Bottom-up: parser combinators and FFI +== Bottom-up: parser combinators and FFI I chose Rust as it has the best WebAssembly tooling support. @@ -226,7 +224,7 @@ and property-based testing for libedn. [rust-ffi]: https://blog.eqrion.net/future-directions-for-cbindgen/ [libedn-repo]: https://euandre.org/git/libedn/ -## Conclusion +== Conclusion I've learned a lot already, and I feel the journey I'm on is worth going through. diff --git a/_articles/2020-11-14-local-first-software-you-own-your-data-in-spite-of-the-cloud-article-review.md b/src/content/blog/2020/11/14/local-first-review.adoc index 68ae03c..c24095a 100644 --- a/_articles/2020-11-14-local-first-software-you-own-your-data-in-spite-of-the-cloud-article-review.md +++ b/src/content/blog/2020/11/14/local-first-review.adoc @@ -1,6 +1,4 @@ ---- - -title: "Local-First Software: You Own Your Data, in spite of the Cloud - article review" += Local-First Software: You Own Your Data, in spite of the Cloud - article review date: 2020-11-14 @@ -21,7 +19,7 @@ This is a review of the article "[Local-First Software: You Own Your Data, in spite of the Cloud][article-pdf]", by M. Kleppmann, A. Wiggins, P. Van Hardenberg and M. F. McGranaghan. -### Offline-first, local-first +== Offline-first, local-first The "local-first" term they use isn't new, and I have used it myself in the past to refer to this types of application, where the data lives primarily on the @@ -44,7 +42,7 @@ around I think there's a chance people will prefer saying "local-first" in [presentation]: {% link _slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides %} [article-pdf]: https://martin.kleppmann.com/papers/local-first.pdf -### Software licenses +== Software licenses On a footnote of the 7th ideal ("You Retain Ultimate Ownership and Control"), the authors say: @@ -138,7 +136,7 @@ to achieve "The Long Now". It is less bad, but still not quite there yet. -### Denial of existing solutions +== Denial of existing solutions When describing "Existing Data Storage and Sharing Models", on a footnote[^devil] the authors say: @@ -184,7 +182,7 @@ people don't do it already, since Git is built to work like that. [git-local-first]: https://drewdevault.com/2018/07/23/Git-is-already-distributed.html -### Ditching of web applications +== Ditching of web applications The authors put web application in a worse position for building local-first application, claiming that: @@ -216,7 +214,7 @@ applications are possible. [pouchdb]: https://pouchdb.com/ [instant-apps]: https://developer.android.com/topic/google-play-instant -### Costs are underrated +== Costs are underrated I think the costs of "old-fashioned apps" over "cloud apps" are underrated, mainly regarding storage, and that this costs can vary a lot by application. @@ -241,7 +239,7 @@ maintain, backup and store their content. The dial measuring "cloud apps" and "old-fashioned apps" needs to be specific to use-cases. -### Real-time collaboration is optional +== Real-time collaboration is optional If I were the one making the list of ideals, I wouldn't focus so much on real-time collaboration. @@ -268,7 +266,7 @@ When discussing "working offline", I'd rather keep this type of person in mind, then the subset of people who are offline when on the elevator will naturally be included. -### On CRDTs and developer experience +== On CRDTs and developer experience When discussing developer experience, the authors bring up some questions to be answered further, like: diff --git a/_articles/2021-01-26-ann-remembering-add-memory-to-dmenu-fzf-and-similar-tools.md b/src/content/blog/2021/01/26/remembering-ann.adoc index 0d02384..0d02384 100644 --- a/_articles/2021-01-26-ann-remembering-add-memory-to-dmenu-fzf-and-similar-tools.md +++ b/src/content/blog/2021/01/26/remembering-ann.adoc diff --git a/_articles/2021-02-17-ann-fallible-fault-injection-library-for-stress-testing-failure-scenarios.md b/src/content/blog/2021/02/17/fallible.adoc index 96c6f49..8a097f8 100644 --- a/_articles/2021-02-17-ann-fallible-fault-injection-library-for-stress-testing-failure-scenarios.md +++ b/src/content/blog/2021/02/17/fallible.adoc @@ -1,6 +1,4 @@ ---- - -title: "ANN: fallible - Fault injection library for stress-testing failure scenarios" += ANN: fallible - Fault injection library for stress-testing failure scenarios date: 2021-02-17 diff --git a/static/attachments/fallible.tar.gz b/src/content/blog/2021/02/17/fallible.tar.gz Binary files differindex 7bf2a58..7bf2a58 100644 --- a/static/attachments/fallible.tar.gz +++ b/src/content/blog/2021/02/17/fallible.tar.gz diff --git a/_articles/2021-04-29-a-relational-model-of-data-for-large-shared-data-banks-article-review.md b/src/content/blog/2021/04/29/relational-review.adoc index e15b478..e15b478 100644 --- a/_articles/2021-04-29-a-relational-model-of-data-for-large-shared-data-banks-article-review.md +++ b/src/content/blog/2021/04/29/relational-review.adoc diff --git a/src/content/blog/index.adoc b/src/content/blog/index.adoc new file mode 100644 index 0000000..afd64d4 --- /dev/null +++ b/src/content/blog/index.adoc @@ -0,0 +1 @@ += Blog diff --git a/static/atom.svg b/src/content/img/atom.svg index 37bace2..37bace2 100644 --- a/static/atom.svg +++ b/src/content/img/atom.svg diff --git a/static/envelope.svg b/src/content/img/envelope.svg index c2251f4..c2251f4 100644 --- a/static/envelope.svg +++ b/src/content/img/envelope.svg diff --git a/static/lord-favicon.svg b/src/content/img/favicon.svg index ce566b2..ce566b2 100644 --- a/static/lord-favicon.svg +++ b/src/content/img/favicon.svg diff --git a/static/link.svg b/src/content/img/link.svg index e5c7050..e5c7050 100644 --- a/static/link.svg +++ b/src/content/img/link.svg diff --git a/static/lock.svg b/src/content/img/lock.svg index 1a4a18e..1a4a18e 100644 --- a/static/lock.svg +++ b/src/content/img/lock.svg diff --git a/src/content/index.adoc b/src/content/index.adoc new file mode 100644 index 0000000..275f7c4 --- /dev/null +++ b/src/content/index.adoc @@ -0,0 +1 @@ += index diff --git a/_pastebins/2016-04-05-rpn-macro-setup.md b/src/content/pastebins/2016/04/05/rpn.adoc index 25ca6ba..25ca6ba 100644 --- a/_pastebins/2016-04-05-rpn-macro-setup.md +++ b/src/content/pastebins/2016/04/05/rpn.adoc diff --git a/_pastebins/2018-07-11-nix-pinning.md b/src/content/pastebins/2018/07/11/nix-pinning.adoc index 2d35e09..2d35e09 100644 --- a/_pastebins/2018-07-11-nix-pinning.md +++ b/src/content/pastebins/2018/07/11/nix-pinning.adoc diff --git a/_pastebins/2018-07-13-gnu-guix-systemd-daemon-for-nixos.md b/src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc index c2b8b62..c2b8b62 100644 --- a/_pastebins/2018-07-13-gnu-guix-systemd-daemon-for-nixos.md +++ b/src/content/pastebins/2018/07/13/guix-nixos-systemd.adoc diff --git a/_pastebins/2018-07-13-guix-users-in-nixos-system-configuration.md b/src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc index 880d347..880d347 100644 --- a/_pastebins/2018-07-13-guix-users-in-nixos-system-configuration.md +++ b/src/content/pastebins/2018/07/13/guixbuilder-nixos.adoc diff --git a/_pastebins/2018-07-13-guix-builder-user-creation-commands.md b/src/content/pastebins/2018/07/13/guixbuilder.adoc index 82204a8..82204a8 100644 --- a/_pastebins/2018-07-13-guix-builder-user-creation-commands.md +++ b/src/content/pastebins/2018/07/13/guixbuilder.adoc diff --git a/_pastebins/2018-07-13-nix-string-padding.md b/src/content/pastebins/2018/07/13/nix-strpad.adoc index 359bda5..359bda5 100644 --- a/_pastebins/2018-07-13-nix-string-padding.md +++ b/src/content/pastebins/2018/07/13/nix-strpad.adoc diff --git a/_pastebins/2018-07-25-nix-exps.md b/src/content/pastebins/2018/07/25/nix-exps.adoc index 23d75b6..23d75b6 100644 --- a/_pastebins/2018-07-25-nix-exps.md +++ b/src/content/pastebins/2018/07/25/nix-exps.adoc diff --git a/_pastebins/2018-07-25-nix-show-derivation-sample-output.md b/src/content/pastebins/2018/07/25/nix-showdrv.adoc index 813965d..813965d 100644 --- a/_pastebins/2018-07-25-nix-show-derivation-sample-output.md +++ b/src/content/pastebins/2018/07/25/nix-showdrv.adoc diff --git a/_pastebins/2019-06-08-inconsistent-hash-of-buildgomodule.md b/src/content/pastebins/2019/06/08/inconsistent-hash.adoc index 51d8ad3..51d8ad3 100644 --- a/_pastebins/2019-06-08-inconsistent-hash-of-buildgomodule.md +++ b/src/content/pastebins/2019/06/08/inconsistent-hash.adoc diff --git a/_pastebins/2019-12-29-raku-tuple-type-annotation.md b/src/content/pastebins/2019/12/29/raku-tuple-type.adoc index 3d5ff34..3d5ff34 100644 --- a/_pastebins/2019-12-29-raku-tuple-type-annotation.md +++ b/src/content/pastebins/2019/12/29/raku-tuple-type.adoc diff --git a/_pastebins/2020-01-04-failure-on-guix-tex-live-importer.md b/src/content/pastebins/2020/01/04/guix-import-failure.adoc index 3388a8d..3388a8d 100644 --- a/_pastebins/2020-01-04-failure-on-guix-tex-live-importer.md +++ b/src/content/pastebins/2020/01/04/guix-import-failure.adoc diff --git a/_pastebins/2020-02-14-guix-shebang.md b/src/content/pastebins/2020/02/14/guix-shebang.adoc index 67d504d..67d504d 100644 --- a/_pastebins/2020-02-14-guix-shebang.md +++ b/src/content/pastebins/2020/02/14/guix-shebang.adoc diff --git a/_pastebins/2020-11-27-guix-build-local-module.md b/src/content/pastebins/2020/11/27/guix-build-local.adoc index 350d50f..350d50f 100644 --- a/_pastebins/2020-11-27-guix-build-local-module.md +++ b/src/content/pastebins/2020/11/27/guix-build-local.adoc diff --git a/_pastebins/2020-12-15-failure-with-relocatable-guix-pack-tarball.md b/src/content/pastebins/2020/12/15/guix-pack-fail.adoc index 2834f90..2834f90 100644 --- a/_pastebins/2020-12-15-failure-with-relocatable-guix-pack-tarball.md +++ b/src/content/pastebins/2020/12/15/guix-pack-fail.adoc diff --git a/_pastebins/2021-04-03-javascript-naive-slugify.md b/src/content/pastebins/2021/04/03/naive-slugify-js.adoc index f765495..f765495 100644 --- a/_pastebins/2021-04-03-javascript-naive-slugify.md +++ b/src/content/pastebins/2021/04/03/naive-slugify-js.adoc diff --git a/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md b/src/content/pastebins/2021/06/08/reading-session-pt1.adoc index b97ef08..b97ef08 100644 --- a/_pastebins/2021-06-08-debit-reading-session-sicp-solutions-pt-1.md +++ b/src/content/pastebins/2021/06/08/reading-session-pt1.adoc diff --git a/_pastebins/2021-06-22-cloc-curl-and-wget.md b/src/content/pastebins/2021/06/22/curl-wget.adoc index 1030c7b..1030c7b 100644 --- a/_pastebins/2021-06-22-cloc-curl-and-wget.md +++ b/src/content/pastebins/2021/06/22/curl-wget.adoc diff --git a/_pastebins/2021-08-11-spaces-around-h1-tags.md b/src/content/pastebins/2021/08/11/h1-spacing.adoc index 9a00ece..9a00ece 100644 --- a/_pastebins/2021-08-11-spaces-around-h1-tags.md +++ b/src/content/pastebins/2021/08/11/h1-spacing.adoc diff --git a/_pastebins/2021-09-02-sicp-exercise-3-19.md b/src/content/pastebins/2021/09/02/sicp-3-19.adoc index 75ee346..75ee346 100644 --- a/_pastebins/2021-09-02-sicp-exercise-3-19.md +++ b/src/content/pastebins/2021/09/02/sicp-3-19.adoc diff --git a/_pastebins/2021-09-03-sicp-persistent-amortized-o1-queue.md b/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc index 8cf7ea2..8cf7ea2 100644 --- a/_pastebins/2021-09-03-sicp-persistent-amortized-o1-queue.md +++ b/src/content/pastebins/2021/09/03/sicp-persistent-queue.adoc diff --git a/_pastebins/2022-07-14-git-cleanup-command.md b/src/content/pastebins/2022/07/14/git-cleanup.adoc index 52cd17f..52cd17f 100644 --- a/_pastebins/2022-07-14-git-cleanup-command.md +++ b/src/content/pastebins/2022/07/14/git-cleanup.adoc diff --git a/_pastebins/2023-07-22-funcallable-amop.md b/src/content/pastebins/2023/07/22/funcallable-amop.adoc index 37c79fe..37c79fe 100644 --- a/_pastebins/2023-07-22-funcallable-amop.md +++ b/src/content/pastebins/2023/07/22/funcallable-amop.adoc diff --git a/src/content/pastebins/index.adoc b/src/content/pastebins/index.adoc new file mode 100644 index 0000000..433a2c1 --- /dev/null +++ b/src/content/pastebins/index.adoc @@ -0,0 +1 @@ += Pastebins diff --git a/_podcasts/2020-12-19-a-test-entry.md b/src/content/podcasts/2020/12/19/test-entry.adoc index a9235eb..3ec8811 100644 --- a/_podcasts/2020-12-19-a-test-entry.md +++ b/src/content/podcasts/2020/12/19/test-entry.adoc @@ -1,20 +1,7 @@ ---- - -title: A test entry - -date: 2020-12-19 - -layout: post - -lang: en - -ref: a-test-entry - -slug: a-test-entry += A test entry audio: true ---- After. diff --git a/resources/podcasts/2020-12-19-a-test-entry.flac b/src/content/podcasts/2020/12/19/test-entry.flac Binary files differindex 786ab59..786ab59 100644 --- a/resources/podcasts/2020-12-19-a-test-entry.flac +++ b/src/content/podcasts/2020/12/19/test-entry.flac diff --git a/src/content/podcasts/index.adoc b/src/content/podcasts/index.adoc new file mode 100644 index 0000000..1f17da7 --- /dev/null +++ b/src/content/podcasts/index.adoc @@ -0,0 +1 @@ += Podcasts diff --git a/_tils/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md b/src/content/pt/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md index 2e7fc32..2e7fc32 100644 --- a/_tils/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md +++ b/src/content/pt/2020-08-12-nome-de-arquivo-com-timestamp-simplificado.md diff --git a/_screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.md b/src/content/screencasts/2021/02/07/autoqemu.adoc index 92a79c2..e295a71 100644 --- a/_screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.md +++ b/src/content/screencasts/2021/02/07/autoqemu.adoc @@ -1,21 +1,7 @@ ---- - -title: AutoQEMU - automate installation and SSH setup of ISO OS images - -date: 2021-02-07 - -updated_at: 2022-03-06 - -layout: post - -lang: en - -ref: autoqemu-automate-installation-and-ssh-setup-of-iso-os-images += AutoQEMU - automate installation and SSH setup of ISO OS images video: true ---- - After reading begriffs "[Tips for stable and portable software]", the "Begriffs Buildfarm?" section caught my attention, as this is something I would be interested in. diff --git a/static/attachments/autoqemu.tar.gz b/src/content/screencasts/2021/02/07/autoqemu.tar.gz Binary files differindex 3022f14..3022f14 100644 --- a/static/attachments/autoqemu.tar.gz +++ b/src/content/screencasts/2021/02/07/autoqemu.tar.gz diff --git a/resources/screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.webm b/src/content/screencasts/2021/02/07/autoqemu.webm Binary files differindex f553efb..f553efb 100644 --- a/resources/screencasts/2021-02-07-autoqemu-automate-installation-and-ssh-setup-of-iso-os-images.webm +++ b/src/content/screencasts/2021/02/07/autoqemu.webm diff --git a/src/content/screencasts/index.adoc b/src/content/screencasts/index.adoc new file mode 100644 index 0000000..083adac --- /dev/null +++ b/src/content/screencasts/index.adoc @@ -0,0 +1 @@ += Screencasts diff --git a/_slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides b/src/content/slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides index 22770e6..22770e6 100644 --- a/_slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides +++ b/src/content/slides/2020-10-19-rollout-feature-flag-experiment-operational-toggle.slides diff --git a/_slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides b/src/content/slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides index 33fc239..33fc239 100644 --- a/_slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides +++ b/src/content/slides/2020-11-14-on-local-first-beyond-the-crdt-silver-bullet.slides diff --git a/_tils/2020-08-12-simple-filename-timestamp.md b/src/content/tils/2020/08/12/filename-timestamp.adoc index 7495fc9..7495fc9 100644 --- a/_tils/2020-08-12-simple-filename-timestamp.md +++ b/src/content/tils/2020/08/12/filename-timestamp.adoc diff --git a/_tils/2020-08-13-anchor-headers-and-code-lines-in-jekyll.md b/src/content/tils/2020/08/13/code-jekyll.adoc index 6566928..6566928 100644 --- a/_tils/2020-08-13-anchor-headers-and-code-lines-in-jekyll.md +++ b/src/content/tils/2020/08/13/code-jekyll.adoc diff --git a/_tils/2020-08-14-browse-a-git-repository-at-a-specific-commit.md b/src/content/tils/2020/08/14/browse-git.adoc index d06f0c1..d06f0c1 100644 --- a/_tils/2020-08-14-browse-a-git-repository-at-a-specific-commit.md +++ b/src/content/tils/2020/08/14/browse-git.adoc diff --git a/_tils/2020-08-16-search-in-git.md b/src/content/tils/2020/08/16/git-search.adoc index f3ae6f0..f3ae6f0 100644 --- a/_tils/2020-08-16-search-in-git.md +++ b/src/content/tils/2020/08/16/git-search.adoc diff --git a/_tils/2020-08-28-grep-online-repositories.md b/src/content/tils/2020/08/28/grep-online.adoc index 8b3b63f..8b3b63f 100644 --- a/_tils/2020-08-28-grep-online-repositories.md +++ b/src/content/tils/2020/08/28/grep-online.adoc diff --git a/_tils/2020-09-04-send-emails-using-the-command-line-for-fun-and-profit.md b/src/content/tils/2020/09/04/email-cli-fun-profit.adoc index 320f3ab..320f3ab 100644 --- a/_tils/2020-09-04-send-emails-using-the-command-line-for-fun-and-profit.md +++ b/src/content/tils/2020/09/04/email-cli-fun-profit.adoc diff --git a/_tils/2020-09-05-pull-requests-with-git-the-old-school-way.md b/src/content/tils/2020/09/05/oldschool-pr.adoc index 5b4e445..5b4e445 100644 --- a/_tils/2020-09-05-pull-requests-with-git-the-old-school-way.md +++ b/src/content/tils/2020/09/05/oldschool-pr.adoc diff --git a/_tils/2020-10-11-search-changes-to-a-filename-pattern-in-git-history.md b/src/content/tils/2020/10/11/search-git-history.adoc index 251abe9..251abe9 100644 --- a/_tils/2020-10-11-search-changes-to-a-filename-pattern-in-git-history.md +++ b/src/content/tils/2020/10/11/search-git-history.adoc diff --git a/_tils/2020-11-08-find-broken-symlinks-with-find.md b/src/content/tils/2020/11/08/find-broken-symlink.adoc index bc97fc6..bc97fc6 100644 --- a/_tils/2020-11-08-find-broken-symlinks-with-find.md +++ b/src/content/tils/2020/11/08/find-broken-symlink.adoc diff --git a/_tils/2020-11-12-diy-bare-bones-ci-server-with-bash-and-nix.md b/src/content/tils/2020/11/12/diy-nix-bash-ci.adoc index 3336482..3336482 100644 --- a/_tils/2020-11-12-diy-bare-bones-ci-server-with-bash-and-nix.md +++ b/src/content/tils/2020/11/12/diy-nix-bash-ci.adoc diff --git a/_tils/2020-11-12-git-bisect-automation.md b/src/content/tils/2020/11/12/git-bisect-automation.adoc index 9c34b2a..9c34b2a 100644 --- a/_tils/2020-11-12-git-bisect-automation.md +++ b/src/content/tils/2020/11/12/git-bisect-automation.adoc diff --git a/_tils/2020-11-12-useful-bash-variables.md b/src/content/tils/2020/11/12/useful-bashvars.adoc index 33a072e..33a072e 100644 --- a/_tils/2020-11-12-useful-bash-variables.md +++ b/src/content/tils/2020/11/12/useful-bashvars.adoc diff --git a/_tils/2020-11-14-gpodder-as-a-media-subscription-manager.md b/src/content/tils/2020/11/14/gpodder-media.adoc index a74b225..a74b225 100644 --- a/_tils/2020-11-14-gpodder-as-a-media-subscription-manager.md +++ b/src/content/tils/2020/11/14/gpodder-media.adoc diff --git a/_tils/2020-11-30-storing-ci-data-on-git-notes.md b/src/content/tils/2020/11/30/git-notes-ci.adoc index f8dd063..f8dd063 100644 --- a/_tils/2020-11-30-storing-ci-data-on-git-notes.md +++ b/src/content/tils/2020/11/30/git-notes-ci.adoc diff --git a/_tils/2020-12-15-awk-snippet-shellcheck-all-scripts-in-a-repository.md b/src/content/tils/2020/12/15/shellcheck-repo.adoc index 71d10a3..71d10a3 100644 --- a/_tils/2020-12-15-awk-snippet-shellcheck-all-scripts-in-a-repository.md +++ b/src/content/tils/2020/12/15/shellcheck-repo.adoc diff --git a/_tils/2020-12-29-svg-favicon.md b/src/content/tils/2020/12/29/svg.adoc index 54cca9a..54cca9a 100644 --- a/_tils/2020-12-29-svg-favicon.md +++ b/src/content/tils/2020/12/29/svg.adoc diff --git a/_tils/2021-01-12-awk-snippet-send-email-to-multiple-recipients-with-curl.md b/src/content/tils/2021/01/12/curl-awk-emails.adoc index 880ddf1..880ddf1 100644 --- a/_tils/2021-01-12-awk-snippet-send-email-to-multiple-recipients-with-curl.md +++ b/src/content/tils/2021/01/12/curl-awk-emails.adoc diff --git a/_tils/2021-01-17-posix-sh-and-shebangs.md b/src/content/tils/2021/01/17/posix-shebang.adoc index 938d1bd..5f5b897 100644 --- a/_tils/2021-01-17-posix-sh-and-shebangs.md +++ b/src/content/tils/2021/01/17/posix-shebang.adoc @@ -1,6 +1,4 @@ ---- - -title: POSIX sh and shebangs += POSIX sh and shebangs date: 2021-01-17 @@ -49,7 +47,7 @@ set -eu ``` 1. when running via `./script.sh`, if the system has an executable at `/bin/sh`, it will be used to run the script; -1. when running via `sh script.sh`, the sh options aren't ignored as previously. +2. when running via `sh script.sh`, the sh options aren't ignored as previously. TIL. diff --git a/_tils/2021-04-24-common-lisp-argument-precedence-order-parameterization-of-a-generic-function.md b/src/content/tils/2021/04/24/cl-generic-precedence.adoc index 8051232..8051232 100644 --- a/_tils/2021-04-24-common-lisp-argument-precedence-order-parameterization-of-a-generic-function.md +++ b/src/content/tils/2021/04/24/cl-generic-precedence.adoc diff --git a/_tils/2021-04-24-clojure-auto-curry.md b/src/content/tils/2021/04/24/clojure-autocurry.adoc index c1e277f..c1e277f 100644 --- a/_tils/2021-04-24-clojure-auto-curry.md +++ b/src/content/tils/2021/04/24/clojure-autocurry.adoc diff --git a/_tils/2021-04-24-three-way-conditional-for-number-signs-on-lisp.md b/src/content/tils/2021/04/24/scm-nif.adoc index f53451b..f53451b 100644 --- a/_tils/2021-04-24-three-way-conditional-for-number-signs-on-lisp.md +++ b/src/content/tils/2021/04/24/scm-nif.adoc diff --git a/_tils/2021-07-23-gpg-verification-of-git-repositories-without-tls.md b/src/content/tils/2021/07/23/git-tls-gpg.adoc index fd42c1c..fd42c1c 100644 --- a/_tils/2021-07-23-gpg-verification-of-git-repositories-without-tls.md +++ b/src/content/tils/2021/07/23/git-tls-gpg.adoc diff --git a/_tils/2021-08-11-encoding-and-decoding-javascript-bigint-values-with-reviver.md b/src/content/tils/2021/08/11/js-bigint-reviver.adoc index d71174d..d71174d 100644 --- a/_tils/2021-08-11-encoding-and-decoding-javascript-bigint-values-with-reviver.md +++ b/src/content/tils/2021/08/11/js-bigint-reviver.adoc diff --git a/src/content/tils/index.adoc b/src/content/tils/index.adoc new file mode 100644 index 0000000..4ae3b92 --- /dev/null +++ b/src/content/tils/index.adoc @@ -0,0 +1 @@ += TIL diff --git a/src/headers.txt b/src/headers.txt new file mode 100644 index 0000000..994b8b8 --- /dev/null +++ b/src/headers.txt @@ -0,0 +1 @@ +about.html About diff --git a/src/pages/root b/src/pages/root new file mode 120000 index 0000000..efcdaa6 --- /dev/null +++ b/src/pages/root @@ -0,0 +1 @@ +../content
\ No newline at end of file diff --git a/static/attachments/apollo-server-demo.tar.gz b/static/attachments/apollo-server-demo.tar.gz Binary files differdeleted file mode 100644 index 72bb6d5..0000000 --- a/static/attachments/apollo-server-demo.tar.gz +++ /dev/null |