2024-04-17 I recently came across a GUI gemini browser in the style of qutebrowser https://git.sr.ht/~lufte/vimini I had been using qutebrowser as my primary browser for some time last year, so I was immediately intrigued when I saw this on bbs.geminispace.org. it's written in rust. it was fairly easy to get it compiled on my Mac. I made a color scheme based on Catpuccin-Mocha colors for it, and I could now use it by running `vimini` from the command line. the only hiccup was that it failed to create an SQLite database on startup. that's easy to fix. I simply needed to create the ~/.local/share/vimini directory. https://catppuccin.com/palette *** initial version of the theme [styles.document.colors] background_color = [0x1e, 0x1e, 0x2e] text_color = [0xcd, 0xd6, 0xf4] link_color = [0x89, 0xb4, 0xfa] pre_color = [0x94, 0xe2, 0xd5] header1_color = [0xf5, 0xe0, 0xdc] header2_color = [0xf5, 0xc2, 0xe7] header3_color = [0xcb, 0xa6, 0xf7] quote_color = [0xa6, 0xe3, 0xa1] list_item_color = [0x74, 0xc7, 0xec] *** note - another (minor) hiccup - the client cert Most gemini clients I've used have you configure client certificates by specifying two files, one to the (public) cert, and the other to the (private) key. Vimini requires the two to be in the same file. that's easy to do: cat cert.pem key.pem > certkey.pem echo $'[pki]\n'"client_certificate_path=\"$PWD/certkey.pem\" \ >> ~/.config/vimini/config.toml unfortunately, it only supports one certificate and it is enabled for *all URLs* you visit, as of writing. *** anyway. having to run the command from my command line to launch it each time is a little annoying. I would generally want for GUI apps to be MacOS "apps" in my /Applications folder, because I wish to use Alfred to launch it -- either than or be able to be pinned in my dock to launch it easily. this is how I launch Lagrange. although it is quite convenient to have the binary in my path and be able to use it for purposes such as scripting or setting environment variables (such as $EDITOR, $BROWSER), I don't wish to open my terminal *just to* launch a GUI app. https://www.alfredapp.com/ turns out, creating my own minimal application given only a binary is actually really, really easy! A single stack exchange result was enough to get me satisfied and move on. https://apple.stackexchange.com/questions/224394 1. mkdir Vimini.app 2. ln -s $PWD/target/releases/vimini $PWD/Vimini.app/Vimini (note that according the the SE answer, the name of the binary must be the same as the name of the .app directory) 3. open . 4. drag the Vimini.app to /Applications 5. use cmd+shift+4 to take a snip of some thing, optionally after opening Vimini to use it for the screenshot 6. Select "Get Info" on the /Applications/Vimini.app. 7. Click on the (currently unset) icon on the top left corner. 8. cmd+v and now, I have a minimal Vimini.app in my Applications with my custom application icon! when upgrading, I just need to cd into the source directory, rebuild and the next time it's launched it should be on the new release. *** for now, my primary GUI client is probably still Lagrange. Vimini is promising but still needs some work to be smoothly usable as a daily driver. although Lagrange's interface is a lot more complex and does not (yet?) support vim bindings, it still has a *lot* of features I never know whether I might need, but would be great to have when I want it. I'm quite impressed how easy it was for Vimini to get up and running, and the experience is *almost* as good as qutebrowser. it does give the nostalgic effect, too.