시몽

Status update, February 2020

The main event this month has been FOSDEM. This year’s edition has been great, I really enjoy meeting with folks I’ve been working with on various projects! I’ve seen folks from Sway/wlroots, SourceHut, KDE, kernel drivers, and many other projects.

I’ve also given a talk about libliftoff. First I’ve explained what DRM planes are, hopefully so that people not extremely familiar with Linux graphics can still understand it. Then I’ve presented the libliftoff project and its current status. Last, the next steps and future plans are laid out.

I’ve made a lot of progress on the koushin front. I’ve added a CardDAV and a CalDAV plugin, both are pretty basic right now but can easily be improved. Support for HTML e-mails has been merged, sandboxed <iframe> elements and Content-Security-Policy are used to further lock them down. The SourceHut theme has been updated to integrate the latest features from existing plugins. Drafts are now fully supported, although some more performance optimizations are planned (the CATENATE extension would prevent koushin from having to download and re-upload all attachments when updating a draft). A new API to store user settings has been added, it uses the IMAP METADATA extension under the hood to follow the near-zero-configuration koushin idiom. One the whole, I think the plugin architecture turned out pretty well.

I’ve worked a lot on go-webdav as well. Both the client-side and server-side of WebDAV and CardDAV are finished, CalDAV support is underway. A small WebDAV server program is now included and allows one to quickly serve files from a local directory. hydroxide now uses the new CardDAV server API. The main missing feature is locking support, I’ll try to spend some time designing a nice API (I don’t want this feature to be annoying to use).

I’ve spent some time writing a new Go library for dealing with PGP-encrypted e-mails: go-pgpmail. For now it only supports PGP/MIME, but it can already decrypt, verify, sign and encrypt messages. I plan to add support for reading inline PGP e-mails, but not for writing them. This library will be useful when adding support for PGP to aerc and koushin (signature verification only for the latter of course).

I’ve started a new project this month to replace the IRC bouncer I’m currently using, znc. I’d like to make it easier for users to join an existing IRC bouncer and try to make IRC more user-friendly in general. Among other things, I want to have better support for multiple clients (e.g. laptop + phone). I’d also like to experiment with some sort of connection multiplexing: allow a single connection to the bouncer to expose multiple upstream servers. Maybe an IRC extension would be better suited for this, we’ll see. Anyway, jounce is now able to relay messages to a client and replay history. A whole lot of features are missing: authentication, server configuration, TLS, database, logs, and many other things. More on this next month!

As always, progress on mrsh has been slow but steady. Drew DeVault overhauled the POSIX conformance test suite, uncovering some mrsh bugs in the process. Apart from this, focus has been bug-fixing and cleaning up the API. We’ll get there eventually.

That’s all, see you next month!


Questions, comments? Please use my public inbox by sending a plain-text email to ~emersion/public-inbox@lists.sr.ht.

Articles from blogs I follow

Unleashing Power: Enabling Super Pages on the RPi

Unleashing the power of 3D graphics in the Raspberry Pi is a key commitment for Igalia through its collaboration with Raspberry Pi. The introduction of Super Pages for the Raspberry Pi 4 and 5 marks another step in this journey, offering some performance enha…

via Maíra Canal

Recovery

Struggling

via Mike Blumenkrantz

AAA gaming on Asahi Linux

Gaming on Linux on M1 is here! We’re thrilled to release our Asahi game playing toolkit, which integrates our Vulkan 1.3 drivers with x86 emulation and Windows compatibility. Plus a bonus: conformant OpenCL 3.0. Asahi Linux now ships the only conformant OpenG…

via On Life and Lisp

Generated by openring