So client side update. We finally have support for the heresy known as “light mode”. I am trying to figure out how to change the icon with the theme but I haven’t figured that out yet. Webmentions support is happening very slowly but happening I have written a micro service for it but due to recent spam via webmentions I’ve been hesitant . I have an thought of an architecture like bellow, I’m not 100% on it yet but it is ready to deploy.
flowchart TD A[foxpost] -->|request to /webmention | B(push to postgresdb) B --> C[return 200] B --> D[webmention-handler] D --> E(process webmentions with microformats-rs) E --> F(push back to db) C --> G[request to post] G --> I[read mentions from db]
On the back end I’ve dropped hcaptcha-rs in favor of making the requests myself. I only need a portion of hcapthca-rs and it worked out to a sizable gain in binary size dropping hcpatcha-rs and using reqwest to make the call myself. This is also why I have a important PSA: ENABLE RUSTLS-TLS WITH REQWEST IF YOU DON’T WANT OPENSSL not doing so will lead to well the rust binary being compiled with rustls but not tls support so you can’t connect to https links. Along with this I’ve been messing with some cool stuff in terms of statically compiling rust. I suspect due to some funkiness with libpq not supporting static linking the whole thing crashes on start with a SIGSEV. Theres also the possibility of not being able to DL_OPEN pthread. DL_OPEN pthread?? yeah, you read that right, quick side note because i want to, glibc has pthread a so thats dl opened when needed, in other words you can never actually 100% statically compile glibc applications which is why people use musl instead for statically compiling rust.
Over all I’ve been doing some exciting side projects along with working on the blog. Hopefully you guys find this interesting.
– this is nullrequest signing off