Commit graph

1825 commits

Author SHA1 Message Date
Vincent Ambo
83e99b87e5 fix(ci-builds): Remove tools.blog_cli 2020-02-09 01:43:24 +00:00
Vincent Ambo
d0800197c4 feat(ops/infra/k8s): Add website deployment configuration 2020-02-09 01:30:56 +00:00
Vincent Ambo
87967d5be3 docs: Update README with new website setup 2020-02-09 01:30:34 +00:00
Vincent Ambo
31b3e533c6 chore(tools): Remove //tools/blog_cli
No longer needed with the deprecation of tazblog.
2020-02-09 01:30:25 +00:00
Vincent Ambo
eb6e64ad47 chore(ops/infra/k8s): Delete tazblog deployment 2020-02-09 01:27:46 +00:00
Vincent Ambo
05ab6825b3 chore(web): Delete //web/tazblog
Deleting this code feels strange. This project has been around for a
decade, and despite occasionally needing a bunch of tweaks it had aged
well and worked fine for a very long time.

I've reached a strange point where I don't really feel like using
Haskell anymore, and every interaction with this project in recent
years has been fighting dependency management tooling for Haskell, or
dealing with strange build problems.

The simple fact is that the service never really did anything other
than render Markdown dynamically, and at this point I can do that much
better with //tools/cheddar instead.

So, tazblog-hs, it's time to say goodbye. Rest in peace!
2020-02-09 00:43:40 +00:00
Vincent Ambo
9fc9b58301 feat(web): Add a favicon to homepage & blog 2020-02-09 00:43:00 +00:00
Vincent Ambo
a791d5e359 fix(web/homepage): Minor style fixes that were lost 2020-02-09 00:31:31 +00:00
Vincent Ambo
9d9e088943 feat(web/homepage): Add entries for the depot itself & journaldriver 2020-02-09 00:31:19 +00:00
Vincent Ambo
4b5ca24f81 feat(web/blog): Move 'best-tools' doc into a real blog post 2020-02-09 00:31:06 +00:00
Vincent Ambo
0fd762e2d0 fix(web/homepage): Ensure old blog links keep working 2020-02-09 00:30:51 +00:00
Vincent Ambo
69b6ff26c3 feat(web/homepage): Add entries for nixery, kontemplate, dottime 2020-02-09 00:12:22 +00:00
Vincent Ambo
949c75e1bd style(web/homepage): Flip colours for misc/blog 2020-02-09 00:12:13 +00:00
Vincent Ambo
75969d886d feat(web/homepage): Add templating for entries on the homepage
Adds the actual insertion of entries into the homepage, subtly
colour-coding different types of entries.
2020-02-09 00:02:10 +00:00
Vincent Ambo
39854d71b2 refactor(web): Serve static assets to //web/homepage
Shuffles around the nginx locations that are served to ensure that all
static content will be served from tazj.in/static (including for the
blog).
2020-02-09 00:01:07 +00:00
Vincent Ambo
e6002f95cd feat(web/homepage): Add static assets for new homepage
Adds the Jetbrains Mono font and the WIP CSS file for the homepage
and (soon) the blog.
2020-02-08 22:22:37 +00:00
Vincent Ambo
cce872e397 feat(web/homepage): Add Nix code to assemble the index page
This is not yet fully functional, but going in the right direction.

Some concepts are introduced:

* There is a light theme (used for blog entry pages) and a dark
  theme (used for the homepage itself)
* Entries can be either blog posts, projects or miscellaneous things
  that I want to link people to (possibly with a comment)

It might be interesting to add pages that filter to specific types, or
some such, which should be relatively easy to do.

Note that the layouts of entries are not actually done yet.
2020-02-08 22:21:06 +00:00
Vincent Ambo
7935957938 refactor(web): Move nginx setup to //web/homepage
The homepage is going to be the landing page for all content, whether
it be blog posts or other stuff.
2020-02-08 14:06:57 +00:00
Vincent Ambo
8e9fb73958 refactor(web/blog): Use timestamps for dates instead of strings
This lets me easily create an ordered list of entries if the homepage
is designed to list both blog posts and other content.
2020-02-08 13:47:47 +00:00
Vincent Ambo
cc2c130352 feat(web/blog): Check in blog posts that I want to keep 2020-02-08 13:34:22 +00:00
Vincent Ambo
15b871806b feat(web/blog): Add Nix-based static blog generator
This introduces a derivation which builds an instance of nginx
statically serving my blog posts, though as of now no indexes are
being generated and no XML feed is available.

This is just the initial draft of this setup and not yet what shall be
yielded in the end.
2020-02-08 13:33:13 +00:00
Vincent Ambo
1d7b1334fd feat(ops/nixos/nugget): Install i3lock 2020-02-08 13:32:25 +00:00
Vincent Ambo
27a40eed7e chore(third_party): Expose pandoc 2020-02-08 13:32:15 +00:00
Vincent Ambo
ddc9ee4dcd docs(nix/yants): Fix screenshot URLs
The URLs served on the /about page are relative to the path's dirname,
which is tree/nix not tree/nix/yants.
2020-02-07 19:11:55 +00:00
Vincent Ambo
df5cdf02a8 chore: Exclude //third_party from ripgrep searches 2020-02-07 12:45:25 +00:00
Vincent Ambo
ec42a67569 feat(tools/emacs): Bump EXWM to recent master
This version of EXWM fixes some issues with binding keys in EXWM as
well as other minor annoyances.
2020-02-07 12:41:43 +00:00
Vincent Ambo
ba20ee65f6 feat(ops/nixos/nugget): Enable pcscd & install Yubikey tools 2020-02-07 12:14:37 +00:00
Vincent Ambo
c56968a767 feat(tools/emacs): Install ace-link
It now has vterm-mode support, which has finally convinced me to try it.
2020-02-05 11:58:57 +00:00
Vincent Ambo
76f7ace273 feat(ops/nixos/nugget): Enable U2F hardware support 2020-02-04 23:41:52 +00:00
Vincent Ambo
10e2e56b67 refactor(fun/wcl): Use portable unix-opts library
unix-opts, imported into buildLisp.nix in the previous commit,
provides an implementation independent way of parsing command line
arguments.
2020-01-29 10:12:07 +00:00
Vincent Ambo
6f728f33a6 feat(third_party/lisp): Add derivation for unix-opts 2020-01-29 10:12:07 +00:00
Vincent Ambo
8e8bbbca04 fix(nix/buildLisp): Ensure SBCL uses UTF-8 encoding 2020-01-29 10:12:07 +00:00
Vincent Ambo
b0b52255bd fix(fun/wcl): Use 'eql' for byte comparisons
The fact that this works is just an implementation-specific detail. In
theory, 'eq' will only compare object instance equality and not value.

Thanks to /u/patrec from HN for pointing this out.
2020-01-29 00:03:50 +00:00
Vincent Ambo
0001dfd7f6 docs(nix/buildLisp): Update the README with actual docs 2020-01-29 00:03:24 +00:00
Vincent Ambo
39b0176026 fix(fun/wcl): Count words correctly if file starts with whitespace 2020-01-28 21:24:51 +00:00
Vincent Ambo
1ba3d1cf97 feat(fun/wcl): Add a simple 'wc' clone in Lisp
Prompted by this thread:
https://lobste.rs/s/zntyeq/wc_d_712_characters_without_single_branch
2020-01-28 21:07:13 +00:00
Vincent Ambo
176b3458b0 feat(web/tazblog_lisp): Implement retrieval of blog posts from DNS
This is mostly equivalent to the Haskell implementation, with the
primary difference that the Lisp DNS library does not support caching
yet.
2020-01-27 02:11:55 +00:00
Vincent Ambo
dba2e5426e fix(emacs-pkgs/nix-util): Don't leave sly build out-links around 2020-01-27 02:11:04 +00:00
Vincent Ambo
253a166bbc refactor(lisp/dns): Return dns-answer from query functions 2020-01-27 02:10:39 +00:00
Vincent Ambo
ca1217655d docs(lisp/dns): Add initial README file 2020-01-27 00:49:34 +00:00
Vincent Ambo
90dd824606 feat(lisp/dns): Support CNAME & NS record RDATAs 2020-01-27 00:47:53 +00:00
Vincent Ambo
a8c9058a58 refactor(lisp/dns): Refactor structure of lookup-generic calls 2020-01-27 00:15:58 +00:00
Vincent Ambo
a41b8c70a6 refactor(third_party/lisp): Use buildLisp.bundled for built-in libs
Deprecates derivations for:

* sb-bsd-sockets
* sb-posix
* sb-rotate-byte
* uiop
2020-01-26 23:59:07 +00:00
Vincent Ambo
ca60eafa80 feat(nix/buildLisp): Add 'bundled' function for built-in libraries
Makes it possible to add virtual dependencies on built-in libraries,
e.g. `buildLisp.bundled "sb-posix"`.
2020-01-26 23:58:31 +00:00
Vincent Ambo
479510005b chore(lisp/dns): Remove unused dependencies 2020-01-26 21:06:59 +00:00
Vincent Ambo
24c2fc8ae1 Merge branch 'feat/dns-lisp' 2020-01-26 21:06:17 +00:00
Vincent Ambo
3f9546197e feat(lisp/dns): Export struct fields 2020-01-26 20:34:03 +00:00
Vincent Ambo
4c109f66b6 feat(lisp/dns): Introduce enum for DNS types & decode RDATA
Adds some of the most common DNS types in the enum (others TBD), and
starts decoding RDATA for TXT and A.
2020-01-26 20:29:30 +00:00
Vincent Ambo
72abb43577 chore(lisp/dns): Add 'message.lisp' to build instructions 2020-01-26 20:00:22 +00:00
Vincent Ambo
8f805a29d1 feat(lisp/dns): Use new DNS deserialiser in dns:lookup-generic
This enables arbitrary DNS lookups (with the caveat that RRDATAs are
currently not deserialised into a record-type-specific format).

An error condition has been defined for error-responses from the HTTP
server which provides interactive restarts for attempting a new call
with different parameters.
2020-01-26 19:58:52 +00:00