Let the patching continue:


Various fixes for URLs, popups, UI behavior and drawing, and some cleanup.

This also has a new feature: "Split tabs evenly" takes sidebars into account when sizing the split, for a more balanced layout.

skyjake boosted

it's done! this is the last KONPEITO mix, I held off releasing it because I am a creature of ritual but now I've been able to gift this tape to solderpunk to say thank you to him for Gemini and what it's inspired me to create.

digital version should be up on konpeito.media tomorrow as a thank you to you all, you who've listened to and shared the tapes, you who've created your own works around our underground Internet and you who've encouraged me and inspired others to create.

be well.

#KONPEITO #Gemini #lofi #mixtape

New v1.13 patch released:


This fixes a few URL parsing issues and macOS window state saving, and adds flexibility to the TUI: there's an ASCII Emoji option and improvements for the VGA palette mode.

This has been on my todo list for a while: fontpack sample images for the Lagrange font library. I ended up writing a little tool that renders the preview with SDL_ttf, and a Python script that reads the info from a fontpack.

Now you can actually see what a font looks like before downloading. 馃檪


More fixes for v1.13:


Addressed several issues with the new Spartan support, and registered new URL handlers. On Mac, Sparkle should be able to relaunch the app again after updates (after this is installed). Plus a few minor tweaks.

A new iOS build has also been submitted, but in all likelihood won't be published before tomorrow due to the usual review delay.

Show thread

New Android build is available: 1.13b5


This includes all changes from the desktop v1.13 release, and also WebP image decoding is enabled.

Another hotfix rolling out:


This one fixes the forgetful font selection and window state restoration problems.

@TritTriton @dvd

Show thread

Welp, v1.13.1 is out, too:


When working on the TUI, I pulled the text renderer apart to separate the graphical stuff from the more abstract code. Hopefully this was the only remaining regression. 馃

Show thread

If you build the TUI version, let me know how it works in your favorite terminal.

However, first check the gemlog post for the list of planned improvements / known issues.

Show thread

v1.13: Curses TUI, Spartan, Emoji


Time for a new release: Curses TUI (source build only in this version), better keyboard UI navigation, support for Spartan, Emoji for Unicode 14, bookmark indicator, viewing pages as plain/styled text, reopening last closed tab. A few bug fixes, too.

Emoji news in Lagrange Font Library:


There's a new monochrome Noto Emoji font that covers all Emoji up to Unicode 14. 馃帀 It will be bundled with Lagrange in the future.

Also, you can now find fontpacks for missing Emoji. The cmap index was missing a bunch of characters...

server admin 

Had trouble upgrading the skyjake.fi Mastodon instance to 3.5.1 (from 3.4.6). The PostgreSQL database must be manually migrated from version 9 to 14, and the provided steps were not working.

Turns out that something was breaking when piping the dumped SQL data to the new db image. The solution was to instead use the `-f` option with psql, reading the dumped SQL data from a file inside a mounted Docker volume.

Next job: Upgrade the server to a new Ubuntu LTS version at some point...

Why you might want to use this:

- supports both Gemini and Titan
- written entirely in Python, with minimal dependencies (pyOpenSSL is required for more advanced SSL certificate handling)
- easy to use for serving simple static files
- flexible and extensible: CGI programs and full-fledged Python modules

Why you might want to NOT use this:

- can be heavy: uses Python and more memory than native code
- early development; no official release yet

Show thread

The GmCapsule / Titan server source repository is now public.

It has been running skyjake.fi unattended for a couple of months, so the worst initial bugs seem to be gone. It is only at v0.1, though; I've got plenty of ideas for modules to add.

The requirements are a ~recent version of Python 3 and pyOpenSSL >= 21.

Repository (Python sources):

GmCapsule introduction:


English spelling is delightfully ambiguous sometimes.

鈥 wind 鈥斅爉oving air
鈥 wind 鈥 move in or take a twisting or spiral course
鈥 wound 鈥 injury to living tissue
鈥 wound 鈥 past and past participle of wind

Interesting to read about the failed reform attempts:


Released a new v1.12 patch:


This fixes a couple of regressions, cleans up some UI color issues, and there are updated UI translations.

This thing is still pretty usable at 40x10. 馃

In the Land of Columns and Characters


A few more details about the TUI version of Lagrange, and thoughts about the bigger picture of cross-platform UI programming.

Well, then.

I used the weekend to make a proof-of-concept port of to the terminal, using ncursesw instead of SDL.

Yup, that's right. The custom GUI framework I've built for Lagrange is quite happy to run on a text-based canvas instead of a graphical one. 馃榿 Even all the UI animations are working.

There's a lot of polishing and tweaking still required, but it is already perfectly usable. I'm quite excited about this!

Show older

skyjake's choices:


skyjake's personal Mastodon instance