A bit of minor progress
I played around a bit with the rust sdl2 API to figure out how to use TTF fonts.
I am not sure I want to actually use the TTF stuff, as it is quite unwieldy. Text rendering in SDL2 is definitely not great. I guess the only benefit of directly using TTF is (in contrast to, say, a baked in bitmap font with some home grown text routines) that I don't need to care for UTF-8 characters (for naming things, mostly) as they will just work.
On the other hand, if we assume that people will name things with a controller based on-screen keyboard anyway, we can safely control the charset and thus using custom fonts with a very reduced character set would not matter.
At this point I am also not worrying at all about i18n. For the forseeable future, this will be english only software.
I've been looking at a couple of things to get inspiration, most notably MilkyTracker which has an SDL based Linux port and comes with a completely home grown UI framework.
My guess right now is that text output (which will be the majority of stuff on the screen) is not something I particularly need to worry about as it will be plenty fast in even the most unoptimised version.
Nevertheless, finding good abstractions for all of this is going to be tricky, especially in a language that still feels as foreign as rust. One of my goals for this week is to learn me a whole bunch more of that rusty goodness.
What feels a bit frustrating, still, is that a lot of the code examples are based on older rust editions and getting them working in my setup often requires guesswork on my end. Hopefully that gets better with more experience and more actual rust knowledge.