Epiktistes

Epiktistes is my home in the Fediverse. It is an instance of Ktistec, a single-user ActivityPub server like Mastodon, but with fewer users and fewer commits. Here's my introduction (last updated early-2025).

I wrote a series of posts about optimizing the performance of the Ktistec server, its build time, and its executable size: part 1, part 2, part 3, part 4, and part 5.

Some things I regularly write about, organized by hashtag:

I also wrote some #pointfreeverse.

Todd Sundsted

still working on quote posts... getting close...

as an aside, #ktistec x-ray mode is really useful when debugging and when i want to navigate to a quoted post that hasn't yet been remotely approved!

Todd Sundsted

i think i'm going to add a feature to #ktistec that rolls up a chain of self-replies into a single post that i can just read. i don't understand why that (mis)feature of twitter remains so popular on the #fediverse

Todd Sundsted

this year I learn to play “iko iko”

Todd Sundsted
Todd Sundsted

I think my ideal “salted caramel ice cream” is just caramel…

Todd Sundsted@reiver ⊼ (Charles) :batman:

I think hobbyist programmers should (in a practical sense) be able to create Fediverse applications & other Fediverse software — and not just career software-engineers.

#Fediverse

Todd Sundsted

I managed to get 2/3rds of quote posts (FEP-044f) working in #ktistec. The only part remaining is quote posting from the server and this depends on functionality to delay delivery until the quote request is accepted (or not). I need that for scheduled posts, so it's a delay but time well spent!

#activitypub #fediverse

Todd Sundsted

got my bookmarks down to just one page

Todd Sundsted
Release v3.2.9 of Ktistec

I just released v3.2.9 of Ktistec!

You can now customize the secondary menu on your home page. This is the menu that links to your posts, drafts, notifications, etc. Posts, drafts, and notifications are fixed, but you can change the final three—they default to bookmarks, followers, and following. Edit the links on your Settings page in the section titled Pinned Collections. I typically replace the defaults with hashtags I'm following and threads I'm actively participating in.

I am slowly adding functionality to support Mastodon API compatible clients. In line with that effort, OAuth access tokens are now associated with sessions, which makes it possible for clients that authenticate via OAuth (instead of username/password) to access all of the existing API.

I use this extensively when building scripts to automate my Ktistec instance. A script can authenticate and cache the access token in a secure keystore. Since access tokens have a limited lifespan and can be individually invalidated, a compromised access token does not force me to change my password!

Here's the full list of changes:

Added

  • Support for customizing the secondary menu with pinned collections.

Fixed

  • Thread rendering no longer fails when drafts are present.

Changed

  • Content warnings are now preserved when replying to posts. (fixes #136)
  • OAuth access tokens are now associated with sessions.
  • Attachments are deleted when draft objects are destroyed.
  • Actor icons and images are deleted when replaced or unset.

A recent poll prioritized emoji reactions and quote posts. I see dozens of quote posts every day, so that's where I plan to focus next.

#ktistec #crystallang #activitypub #fediverse

Todd Sundsted

we fixate on the demise of entry level corporate jobs as if that's a bad thing.