My personal website
Find a file
2025-11-11 23:33:32 -06:00
.husky Make pre-commit hooks executable 2023-01-02 19:11:28 -06:00
.vscode meta: Add autoformatting for vscode 2024-12-01 19:49:14 -07:00
.zed cleanup: Add Prettier formatting for gotemplates 2025-01-31 10:43:00 -06:00
archetypes chore: Rename 'keywords' taxonomy to 'tags' 2023-07-01 17:35:56 -05:00
assets feat: Add character-dialog shortcode and stylesheet 2025-11-11 23:33:32 -06:00
content feat: Add hCaptcha to contact form 2025-11-11 23:33:05 -06:00
layouts feat: Add character-dialog shortcode and stylesheet 2025-11-11 23:33:32 -06:00
static feat: Add modern web favicons 2025-03-05 10:03:29 -06:00
.envrc build: Add SourceGit support for commit hooks 2025-01-31 10:43:00 -06:00
.gitignore chore: Add MacOS to gitignore 2025-01-31 10:42:40 -06:00
.prettierignore feat: Add modern web favicons 2025-03-05 10:03:29 -06:00
.prettierrc cleanup: Add Prettier formatting for gotemplates 2025-01-31 10:43:00 -06:00
.woodpecker.yml build: Add weekly builds to check content adapters 2025-01-31 10:43:01 -06:00
config.toml cleanup: Simplify category button code 2025-03-30 18:47:52 -05:00
flake.lock feat: Upgrade to Hugo v0.141.0 2025-01-31 10:42:58 -06:00
flake.nix feat: Upgrade to Hugo v0.141.0 2025-01-31 10:42:58 -06:00
LICENSE Create LICENSE 2021-03-17 13:55:47 -06:00
package-lock.json deps: Remove unused JavaScript dependencies 2025-01-09 15:07:25 -05:00
package.json deps: Remove unused JavaScript dependencies 2025-01-09 15:07:25 -05:00
README.md build: Add SourceGit support for commit hooks 2025-01-31 10:43:00 -06:00

pages

status-badge

My personal website. Hosted over at https://millironx.com

Notes to self

Nix dev shell

All developer dependencies are now bundled as a Nix Flake. The only trouble with this is that npm packages don't play well with Nix (and especially Flakes), so npm packages are specified twice: once in package{-lock}.json and then again in node*.nix.

Compounding this, there are formatters and commit hooks that require npm to be functional. So, to develop right now requires allowing direnv to setup the Nix development shell, then immediately installing npm packages via npm ci. VSCode (with extensions) and Zed are smart enough to figure out how to use direnv, and direnv will pass the PATH to SourceGit for Mac, but other programs aren't that smart, so you'll need to launch those programs from inside a direnv shell to make sure they have Prettier, Husky, and all that jazz to execute the hooks.

Last compounding factors: if node_modules is present in the root directory, then node2nix won't create a correct derivation, so node_modules will need to be temporarily deleted after modifying any npm packages, then as soon as node2nix is happy, then immediately run npm ci to get the commit hooks working again. Oh, and also, I renamed the default.nix file generated by node2nix to node.nix to avoid giving direnv any wrong impressions about what derivation to run.

Yes, hopefully I can get completely away from npm here soon, but this is a minor inconvenience considering how (not) often I install new packages into this site, and really discourages me from contributing to the website obesity crisis.

Nix building

Nix building will not work because Hugo reaches out to the internet via content adapters, and that (by intention) is not perfectly reproducable. As such, development tools are installed in a Nix shell, but building has been removed from the Flake. Thankfully, hugomods provides "canonical" Docker images for hugo now.