~dricottone/blog

66f8cf1afc88be6cd7334297241adcad4bb95099 — Dominic Ricottone 1 year, 27 days ago cb8aefe
Reorganization

Added URL aliases for published posts.

Updated configuration for permalinks.
M Makefile => Makefile +11 -18
@@ 1,12 1,10 @@
TARGET_USER=admin
TARGET_HOST=admin-aws3
RSYNC_OPTS=--recursive --links --compress --delete --chown=$(TARGET_USER):$(TARGET_USER)

.PHONY: clean
clean:
	rm -rf public resources themes
	rm -rf scripts/cv.aux scripts/cv.log scripts/cv.out
	rm -rf content/posts/*.bak
	rm -rf layouts/partials/bsky.html
	rm -rf layouts/partials/lastfm.html
	rm -rf layouts/partials/openring.html

scripts/cv.tex: content/cv.md
	sed content/cv.md \


@@ 24,33 22,28 @@ static/files/dominic-ricottone.html: content/cv.md
	cat content/cv.md \
		| scripts/cv_html.awk > static/files/dominic-ricottone.html

.PHONY: layouts/partials/bsky.html
layouts/partials/bsky.html:
	scripts/bsky.bash > layouts/partials/bsky.html

.PHONY: layouts/partials/lastfm.html
layouts/partials/lastfm.html:
	scripts/lastfm.sh > layouts/partials/lastfm.html

.PHONY: layouts/partials/openring.html
layouts/partials/openring.html:
	scripts/openring.sh > layouts/partials/openring.html

PREGEN_HTML=static/files/dominic-ricottone.pdf static/files/dominic-ricottone.html layouts/partials/bsky.html layouts/partials/lastfm.html layouts/partials/openring.html

.PHONY: dev
dev: $(PREGEN_HTML)
	hugo server --buildDrafts --bind 127.0.0.1 --port 8080

.PHONY: build
build: clean $(PREGEN_HTML)
build: $(PREGEN_HTML) clean
	hugo

.PHONY: check
check:
	for f in content/posts/*.md; do aspell --check $$f; done

.PHONY: sync
sync: build
	rsync $(RSYNC_OPTS) public/ $(TARGET_HOST):/var/deploy/build/blog/public/
dev: $(PREGEN_HTML)
	hugo --buildDrafts --baseURL https://dev.intra.dominic-ricottone.com
	rsync --recursive --links --compress --delete public/ alarm@arch3.intra.dominic-ricottone.com:/var/deploy/web/

publish: build
	rsync --recursive --links --compress --delete --chown=admin:admin public/ admin-aws3:/var/deploy/build/blog/public/

.PHONY: clean build check dev publish

M config.toml => config.toml +3 -0
@@ 4,6 4,9 @@ title = "Dominic Ricottone"
disableKinds = ["taxonomy", "taxonomyTerm"]
summaryLength = 20

[permalinks]
posts = "/posts/:year/:month/:slug"

[markup.goldmark.renderer]
unsafe=true


M content/posts/acs_data.md => content/posts/acs_data.md +2 -0
@@ 1,6 1,8 @@
---
title: ACS Data
date: "2023-03-21T20:34:24-05:00"
aliases:
  - "/posts/acs_data"
draft: false
---


M content/posts/buildkit.md => content/posts/buildkit.md +2 -0
@@ 1,6 1,8 @@
---
title: BuildKit
date: "2023-05-29T21:29:33-05:00"
aliases:
  - "/posts/buildkit"
draft: false
---


M content/posts/busy_winter.md => content/posts/busy_winter.md +2 -0
@@ 1,6 1,8 @@
---
title: Busy Winter
date: "2022-12-27T21:06:51-06:00"
aliases:
  - "/posts/busy_winter"
draft: false
---


A content/posts/cleaning_up.md => content/posts/cleaning_up.md +54 -0
@@ 0,0 1,54 @@
---
title: Cleaning Up
date: "2023-11-11T20:22:52+00:00"
draft: true
---

I've restructured the way permalinks are generated.
While I do prefer underscores for file names,
URLS are decidedly cleaner when using dashes.
Luckily Hugo already has a concept for this (`:slug`) so it's as simple as
setting the permalink template with that 'variable'.

To prevent breakage of existing links, I've set up aliases.
That's another very convenient feature of Hugo.
I've also seens some recipes online for creating aliases automatically.
I'm not currently sold on the idea of setting up named aliases for all posts
going forward,
but I'll revisit that in the new year.

And since I'm doing all of that, I decided it's also time to organize
permalinks based on publication date.

----

I've significantly reworked my development workflow in the last couple months.
It's become a headache to try and keep all of my internal toolchains,
script interpretters, and document processors up-to-date across all of the
hosts I use.
For a long time, I liked to think that I sidestepped this issue by using POSIX
scripts.
But *apparently several distros feel otherwise*.

It's not even Red Hat that I'm specifically frustrated at right now.
It's come to my attention that `ed` isn't installed by default on Ubuntu.
Now I know, few people care about `ed`, I'm in an extreme minority.
It's still POSIX.

So I've centralized all of those installations to a single host
*(on public internet,
but without any compromisable servers running,
and requiring an SSH key for login)*,
and it `rsync`s built files to a separate web server only accessible on my
VLAN.

Anyway, that's prompted a gradual revisiting of all of my `Makefile`s.
It's sometimes interesting to see how my approach to those has changed over
time.
Clearly 4 years ago I was obsessed with parameterizing them.
I think my current attitude is to keep them file-oriented, and anything more
complicated is pulled out into a separate script.
Many of my projects now feature a top-level `scripts` folder.
*(This is also why keeping my script interpreters up-to-date was such a
hastle.)*


M content/posts/disruption_from_google_and_red_hat.md => content/posts/disruption_from_google_and_red_hat.md +2 -0
@@ 1,6 1,8 @@
---
title: Disruption from Google and Red Hat
date: "2023-06-27T14:59:08-05:00"
aliases:
  - "/posts/disruption_from_google_and_red_hat"
draft: false
---


M content/posts/docker.md => content/posts/docker.md +2 -0
@@ 1,6 1,8 @@
---
title: "Docker"
date: 2020-07-10T17:12:12-04:00
aliases:
  - "/posts/docker"
draft: false
---


M content/posts/fedora_38.md => content/posts/fedora_38.md +2 -0
@@ 1,6 1,8 @@
---
title: "Fedora 38"
date: "2023-04-19T21:59:07-05:00"
aliases:
  - "/posts/fedora_38"
draft: false
---


M content/posts/first_x86_server.md => content/posts/first_x86_server.md +2 -0
@@ 1,6 1,8 @@
---
title: First x86 Server
date: "2023-07-27T12:20:19-05:00"
aliases:
  - "/posts/first_x86_server"
draft: false
---


M content/posts/html_and_xml.md => content/posts/html_and_xml.md +2 -0
@@ 1,6 1,8 @@
---
title: HTML and XML
date: "2022-10-27T11:08:41-05:00"
aliases:
  - "/posts/html_and_xml"
draft: false
---


M content/posts/i_moved.md => content/posts/i_moved.md +2 -0
@@ 1,6 1,8 @@
---
title: "I Moved"
date: 2021-11-11T22:56:46-06:00
aliases:
  - "/posts/i_moved"
draft: false
---


M content/posts/identity.md => content/posts/identity.md +2 -0
@@ 1,6 1,8 @@
---
title: Identity
date: 2022-10-06T10:13:32-05:00
aliases:
  - "/posts/identity"
draft: false
---


M content/posts/logging_and_rate_limiting_take_2.md => content/posts/logging_and_rate_limiting_take_2.md +2 -0
@@ 1,6 1,8 @@
---
title: Logging and Rate Limiting, Take 2
date: "2023-08-08T12:12:32-05:00"
aliases:
  - "/posts/logging_and_rate_limiting_take_2"
draft: false
---


M content/posts/playing_with_web_services.md => content/posts/playing_with_web_services.md +2 -0
@@ 1,6 1,8 @@
---
title: "Playing with Web Services"
date: 2020-04-15T12:24:13-04:00
aliases:
  - "/posts/playing-with-web-services"
draft: false
---


M content/posts/progress_and_the_lack_thereof.md => content/posts/progress_and_the_lack_thereof.md +2 -0
@@ 1,6 1,8 @@
---
title: "Progress and the lack thereof"
date: 2022-09-18T17:44:00-05:00
aliases:
  - "/posts/progress_and_the_lack_thereof"
draft: false
---


M content/posts/rate_limiting.md => content/posts/rate_limiting.md +2 -0
@@ 1,6 1,8 @@
---
title: Rate Limiting
date: "2023-03-29T23:55:56-05:00"
aliases:
  - "/posts/rate_limiting"
draft: false
---


M content/posts/return_to_selfhosted_form.md => content/posts/return_to_selfhosted_form.md +2 -0
@@ 1,6 1,8 @@
---
title: "Return to self-hosted form"
date: 2022-09-14T15:56:55-05:00
aliases:
  - "/posts/return_to_selfhosted_form"
draft: false
---


M content/posts/setting_up_hugo.md => content/posts/setting_up_hugo.md +2 -0
@@ 1,6 1,8 @@
---
title: "Setting up Hugo"
date: 2020-01-24T19:32:43-05:00
aliases:
  - "/posts/setting-up-hugo"
draft: false
---


M content/posts/systems_updates.md => content/posts/systems_updates.md +2 -0
@@ 1,6 1,8 @@
---
title: Systems Updates
date: "2022-11-12T18:32:12-06:00"
aliases:
  - "/posts/systems_updates"
draft: false
---


M content/posts/thoughts_on_the_organization_of_history.md => content/posts/thoughts_on_the_organization_of_history.md +2 -0
@@ 1,6 1,8 @@
---
title: Thoughts on the Organization of History
date: "2023-05-19T11:30:26-05:00"
aliases:
  - "/posts/thoughts_on_the_organization_of_history"
draft: false
---


M content/posts/vacation_2023.md => content/posts/vacation_2023.md +2 -0
@@ 1,6 1,8 @@
---
title: Vacation 2023
date: "2023-04-26T09:35:51-05:00"
aliases:
  - "/posts/vacation_2023"
draft: false
---


M content/posts/wireguard.md => content/posts/wireguard.md +2 -0
@@ 1,6 1,8 @@
---
title: "WireGuard"
date: 2022-09-28T20:05:20-05:00
aliases:
  - "/posts/wireguard"
draft: false
---