Sign in

iiinova is part of the Atmosphere — an open, public network where you own your identity.

Esk 🐌⚡💜

@esk.hachyderm.io.ap.brid.gy
21 followers 2 following 159 posts

engineer-architect @work. board @nivenly. #videogames #gardening #eurorack #synthesizers @home. password is `haystack`. he/him/they. 🌉 bridged from ⁂ hachyderm.io/@esk, follow @ap.brid.gy to interact

PostsRepliesMedia
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 09/05/2026
#indiedev update! still having fun building backend code, and #lua is still holding up super well. i really like that it has super powerful features like coroutines and the flexibility (chaos?) of javascript. emmylua and annotations have been super critical for […] [Original post on hachyderm.io]
A screencap of the simple (temporary) terminal UI for testing my game loop:

Actual text is a terminal UI that's probably terrible for screen readers but shows Round 4 of a battle between The Adequate American Bison of Jitteriness Thailand and The Bare Heroes of Dockyard's Chafing.

You can see the various characters in the parties and a readout of the events that happened, like this:

👸 Tenderbones attacked 🗡️  Catgut for 1 damage!
🧌 Catgut is now at 20 HP!
🤡 Seventh Avenue attacked 🗡️  Tenderbones for 8 damage!
👸 Tenderbones is now at -5 HP!
🪦 It seems our hero, Tenderbones, has been slain.
020 2
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 19/01/2026
doing a little test
a picture of a toasted piece of bread on a beige wall that says:

BREAD
BOCS

in black marker
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 03/12/2025
For the one person out there that may need it one day, configuring a #unifi router for NTT West's Hikari Cross Fiber service with OCN as a provider in #japan. Key info: OCN uses a newer protocol to handle your IPv4 and IPv6 traffic called MAP-E. Unifi didn't […] [Original post on hachyderm.io]
The unifi router WAN's configuration. There are various IPv4 and IPv6 settings available, and I've selected the options I mentioned in my post.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 11/10/2025
This is a test, this is only a test.
The hachyderm logo, a cute little mug in the shape of a mastodon's face. There's green tea in the mug?
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 14/05/2025
hey #hachyderm - let's give it up for our now retired old primary database server, nietzsche. it put in the time! (yes, this server was woefully out of date)
A screenshot from our database server message of the day that says:

[redacted]@nietzsche 
--------------- 
OS: Arch Linux x86_64 
Host: KRPA-U16 Series 9201 
Kernel: 6.5.9-arch2-1 
Uptime: 556 days, 20 hours, 1 min
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 29/03/2025
howdy, #hachyderm! over the last week or so, we've been preparing to move hachy's #DNS zones from #AWS route 53 to bunny DNS. since this could be a pretty scary thing -- going from one geo-DNS provider to another -- we want to make sure *before* we move that […] [Original post on hachyderm.io]
screenshot of a console with a duckdb command that is selecting data from multiple parquet files in an s3 bucket across multiple folders.

the resulting table has many rows with a timestamp, unique client ID, region, host it was querying, and the results provided by the DNS server that was queried.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 21/02/2025
good morning #hachyderm, don't mind me, just doing system updates. checking that i didn't break image processing or something.
a low-quality, hand drawn in krita EP cover for a single called "moon". big green letters at the top that say "MOON." above a moonscape with a domed city.
200 2
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 20/02/2025
uploaded the full track to soundcloud: soundcloud.com/eskesk/moon as usual, @stargirl's castor & pollux carrying hard with gorg clean mids/melody. i tried to Just Record It - whatever came up! mcf x2 and winterbloom's neptune for solid filtering & […] [Original post on hachyderm.io]
a eurorack synthesizer "tree" - four synths and two keyboards connected via yellow cabling. it looks super messy and tangled, and there a lot of blinky lights and screens.

there are a few guitar pedals nearby too, with ground control's uwu on and a little cat on the screen.
111 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 19/02/2025
a little #eurorack #synth jam to round out the evening. wasn't sure where it was going until i piped in those solid mids from winterbloom's castor & pollux. from there, it was NES vibes all around, so i just recorded whatever I played. got 10 little tracklets […] [Original post on hachyderm.io]
331 3
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 08/02/2025
today in #eurorack #synthesizer rearrangement - loaded up some new paratek modules. these are mostly for show because nixie tubes are rad. also featuring some @prahou #unix_surrealism and #winterbloom cats
eurorack synthesizer rack with four modules and some blanks in between. from left to right:

- paratek module with a nixie tube, several inputs that then allow you to choose one of the inputs and cycle through them with a CV
- a blue femme with antennae and a pink shirt and yellow shoes on a eurorack blank
- paratek's 3 display module
- paratek's taktomer module which features three nixie tubes to be used a as a counter
- mordax's data unit, featuring a large screen turned on to oscilloscope mode
020 2
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 01/02/2025
found the #mastodon bus as #fosdem
a blue and white double decker bus that says "TO-OT BUS"
219 9
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 01/02/2025
howdy, @fosdem - today's the day! join us at FOSDEM in H3.242 at UCB for the hachyderm & #fediverse friends birds of a feather session from 1530-1630! also - if you can't join us, there are some shiny #hachyderm stickers at the mastodon booth and you can find […] [Original post on hachyderm.io]
a bag of hachyderm logo stickers - the sticker is a brown elephant shaped like a mug with flowy text that says "hachyderm" next to it. it looks like there's green tea in the mug and a wisp of smoke rising because it's hot! there are about 200 stickers in the bag, and they're stacked and slightly splayed out.
001 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 10/01/2025
hiya, #hachyderm, i needed a tiling background of the hachyderm logo, and there was a neat option to export it as a wallpaper image, so here you go!
a 4k wallpaper of the hachyderm logo -- the face of a mastodon that's been transformed to look like a coffee mug, complete with a little wisp of steam coming out of the top. the logo is repeated many times in a tiled pattern across the whole image.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 10/01/2025
official #snow accumulation in north texas is 1/6th of a spike spiegel.
camera picture of a spike spiegel figurine, about 8" tall (?), standing in newly fallen snow. the snow goes up to about halfway to his knees.

he's in a dark blue suit with a yellow undershirt and a loosely tied tie. he's holding a gun that pointing upward to the sky. he's in a relaxed, causal position, though, with his other hand in his pocket.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 07/01/2025
when the #drone workers get better working hours than the humans, you might be in that dystopian post-capitalist hellscape after all :blobfoxthink:
doordash screenshot.

says:

Drone Operating Hours [CLOSED]
Monday through Sunday
9 am - 5 pm
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 02/01/2025
testing image compression. also here are some stickers!
a laptop cover adorned with many stickers. they are overlapping and multicolored and feature characters like mario, cute woodland animals, the github mascot, a squid kid from splatoon. there's a sticker that says "fuck the internet, i'm going to go climb mountains - nova", and a big, pink, furry horned beast".
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 15/12/2024
this late morning in #hachyderm infrastructure, the backlog continues to evolve! we enrolled in @github's new issues previews to get issue types and hierarchy, and it's shaping up to be a nice lightweight competitor to jira & friends. still a few UX things I'd […] [Original post on hachyderm.io]
screenshot of a github issues "initiative" (a custom issue type) called "Continuity and Resilience Plan".

The issue body shows:

--

We recently laid out a high level plan to strengthen Hachyderm's resilience and availability. This is the top level initiative that tracks progress across the various fronts we outlined.

We expect this initiative will last for approximately two years.

    Original Doc

--

And the section below called sub-issues shows:

--

Sub-issues
0 of 100 of 10 Issues completed
Preview
Give feedback
Epic: .io TLD Deprecation #722. 0 of 2 Issues completed. Press Control, Shift, U for more actions. content loaded

Theme: Edge Resilience #723
1 of 91 of 9 Issues completed

    Epic: Edge: global expansion 2025 #704

Epic: Edge: expose Hachyerm through Tor #705
Epic: .io TLD Deprecation #722
0 of 20 of 2 Issues completed

    Story: Design: De-risk .io TLD deprecation #702

Story: Move hachyderm.io to non-US registrar #700

Story: Edge: local log retention -> 1 day; ship everything to Loki #703
Epic: Design: Anycast-based discovery to replace Route 53 #701
Epic: Design: Edge: Region-local redundancy #693
Story: Close SSH to public internet, force access through Tailscale #711
Task: V1: Update certbot admin & clean up certs #271
Epic: Ansible Playbook: Edge Role #739
110 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 08/12/2024
this morning in #hachyderm infrastructure, we're going to flip some settings in #tailscale to enforce that our different environments can only talk within that environment. this is one step to prep our environment to onboard our new batch of volunteers. we […] [Original post on hachyderm.io]
screenshot of a tailscale access policy, specifically the ACLs section.

It reads:

```hujson
"acls": [
		// Match absolutely everything.
		// Comment this section out if you want to define specific restrictions.
		{"action": "accept", "src": ["*"], "dst": ["*:*"]},
		// Dev can talk to dev
		{
			"action": "accept",
			"src":    ["tag:env-dev"],
			"dst":    ["tag:env-dev:*"],
		},
		// Prod can talk to prod
		{
			"action": "accept",
			"src":    ["tag:env-prod"],
			"dst":    ["tag:env-prod:*"],
		},
		// Prometheus can talk to everything to scrape
		{
			"action": "accept",
			"src":    ["tag:role-prometheus"],
			"dst":    ["tag:env-prod:*", "tag:env-dev:*"],
		},
		// Everything can talk to prom to push (e.g. promtail/Loki)
		{
			"action": "accept",
			"src":    ["tag:env-prod", "tag:env-dev"],
			"dst":    ["tag:role-prometheus:*"],
		},
	],
```
1111 11
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 02/12/2024
this evening in #hachyderm infra -- deploying @tailscale features that align to the resilience plan we posted recently. specifically, SSH access via tailscale (tailscale.com/kb/1193/tailscale-ssh). if it sounds like i'm a tailscale shill, it's because […] [Original post on hachyderm.io]
screenshot of our `ssh` section in our tailscale access policy.

it defines three "check" actions -- meaning extra tailscale auth is required every X hours (12? is default)

the first is for a group called `trusted members` - they can ssh to any environment as any non-root user AND root.

the second is for a group called `proven members`. they can ssh to prod and dev, but only as non-root users.

the last is for `probationary members`. they can only ssh to dev and our prometheus role.

forget managing ssh keys - all we have to do is sort our infra team into these groups and they get secure access via their tailscale auth to our servers!
042 4
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 01/12/2024
this morning in #hachyderm infrastructure: our post about the resilience plans for infra got a lot of rotation across the fedi. 🎉 we've had several folks reach out and offer to volunteer, which made me look at the backlog and realize it's not super […] [Original post on hachyderm.io]
screenshot of our github issues backlog for hachdyerm infra.

there are five issues shown, each decorated with multi-colored tags like "capability/best-practice", "good-first-issue", "incident-learning", and "size/medium".

some of the tags have cute emojis attached - like "size/medium" has a cat and "size/small" a mouse.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 27/11/2024
hiya, #hachyderm - we're close (this wk) to publishing our plan around protecting the community from potential change in US laws. the good news is our core services are in the EU, which is likely the safest place for key assets like our database, media files […] [Original post on hachyderm.io]
a map of the world with dots where hachyderm has:

edge nodes (purple hearts) - fremont, CA, newark, NJ, Frankfurt, DE, and Tokyo, JP.

potential future expansion edge nodes (yellow hearts) - toronto, johanesburg, sao palo, sydney, and mumbai

mastodon core (mastodon logo) - frankfurt, DE

mastodon media files (picture emoji) - frankfurt, DE

there are blue dashed lines from the edge locations to the mastodon core
207 7
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 25/11/2024
applying good progressive exposure practices in ansible has been fun. #hachyderm's infra footprint is still grokkable at human-scale, so we can do things like prompts for attention -- something little to break out of potential doldrums of repetitive actions […] [Original post on hachyderm.io]
Screenshot of an ansible prompt asking in large block letters, "Are you sure?"

Then:

You are about to run the fail2ban playbook against the prod environment.

This play will target the following 1 hosts:

- cdn-frankfurt-1.hachyderm.io

If you really want to do this, please type the safe word `better-cat` to continue.
001 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 25/11/2024
this morning in #hachyderm infra, doing our first prod roll outs of some targeted #ansible runbooks! #hachyinfra
a small screenshot of the output of running an ansible playbook against cdn-fremont-1.hachyderm.io, our west US edge node. it says ok=10, changed=6 and it's red, so it must be all good!
100 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 20/11/2024
and more @tailscale -- automating our prometheus scrape configs based on tags attached to machines. such clean, very template 🐕
screenshot of the nginx portion of the template version of our prometheus config. it's a combination of YAML and golang templating syntax since. we use gomplate to apply the output from `tailscale status --json` to the template.

the screenshot has many lines of code to iterate over objects in the tailscale status, conditionally applying labels and target ports based on the tags attached to the machines in the tailscale tailnet.
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 20/11/2024
this (very early) morning in #hachyderm infrastructure: finished up the base ansible "common" role that does base prep and basic hardening of new nodes. also: - sets up our basic "daily driver" user - installs @tailscale and connects it to our tailnet - sets […] [Original post on hachyderm.io]
screen shot of a console with two splits in `tmux`. each split is connected to a different virtual machine: the top one Arch Linux, the bottom one Debian 12. at the top of each screen is the text "NOVIX: Abandon Hope All Ye Who Enter", and NOVIX is in big block ASCII letters. each window shows some facts about the systems from `neofetch`, including the logo for the respective Linux distro. there's also a list of running services after the neofetch info.
101 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 18/11/2024
good morning #hachyderm! over the weekend, we got to stretch our muscles a bit and practice using our new OS recovery runbook when we temporarily lost the network config on our new database host. today, i'm poking a bit more at our core ansible runbook - […] [Original post on hachyderm.io]
screen shot of my console after I ran ansible and configured promtail. the output is for `systemctl status promtail` and it shows that the unit is running, active, and happy!
000 0
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 16/11/2024
and @aurae set up pretty straightforward, even though I cheated and just used a single self-signed cert for everything. next, to make aurae actually do some work!
log output from the auraed systemd unit. you can see a big banner that says "AURAE" then followed by a bunch of log output talking about the service startup - unix sockets, certificates, and other fun server stuff.
001 1
Esk 🐌⚡💜 @esk.hachyderm.io.ap.brid.gy · 15/11/2024
once i found the right setting to enable it, scraping `pgcat` for metrics from prometheus just worked (tm). #hachyderm #hachyinfra #sre
screenshot of a grafana metrics exporation that has 25 graphs of different metrics that have the word "pgcat" in them. each graph is a different color!
110 1