What's everyone working on this week (39/2022)?

New week, new Rust! What are you folks up to?

Err... quite a few projects.

  • Egui and SDL2 on embedded linux (buildroot). I'm using plain software SDL2 to gain LInux KMS rendering, which means I can boot right to the app in a tty (my room4doom project can do this now also).

  • Huge refactor of asusctl to use tokio runtime instead of smol, sort of forced by inotify-rs using tokio. That's all good because the daemon gained superpowers thanks to tokio and a lot of code is now simplified.

  • Also refactored supergfxctl to add support for ASUS specific dGPU switches, update zbus version (amazing project!), and also use tokio because why not.

2 Likes

Kept learning, had to work around the limitations of xml-rs and refactor to quick-xml crate.

Got less blockers now, but some things still are painful. For instance, quick-xml has shortcut methods that let you create a tag and nest tags in it (<the_tag><nested_tag></the_tag>). The problem is that you have to use a closure for it, and it consumes the temporary writer struct. And the only way around is to avoid it at all and use low-level structs. It's still not clear to me where to expect such behavior.

Learned to use mem_take().

Also switched from generic Box<dyn Error> to my own error class, and wrote conversions into it from libraries errors. This made return types a lot lighter, and in the process I learned that there aren't that many of them really.