시몽

Status update, November 2018

This month has been focused on sway mostly. We’ve released sway 1.0-beta.2, which brings a myriad of bugfixes and small enhancements. This is also the first release compatible with Firefox Nightly running with native Wayland. There are still some minor bugs but it’s overall pretty stable. If you want to try it, install Nightly and run it with GDK_BACKEND=wayland!

A lot of i3 4.16 features have been implemented in this release, like strip_workspace_name and title_align. Many new options let you customize sway further, for instance by tweaking the scroll speed or setting titlebar padding. Big thanks to all contributors!

Let’s continue with new relases: mako 1.2 has been published. This version adds elogind support for users not using systemd. Just like sway, a bunch of new customization options are available: size and margins in criteria, per-side padding, centering notifications. Notifications coming from clients not supporting markup are now displayed better (the spec is annoyingly not very clear about this).

To end this release party, let’s just mention that grim 1.0 and slurp 1.0 are now available. No major changes here, it’s just the first release. Note that Arch users can now install the grim package from the community repo.

mrsh development is still moving forward, little by little. Functions have been implemented by Drew Devault and the umask builtin by benofbrown (thanks!). Redirecting a builtin’s output now works (since builtins are not spawned in separate processes, we need to have special cases for those). Another notable addition is support for profiles, now mrsh can be used as a login shell!

I also spent quite some time trying to understand what was going on with a weird bug. After executing command substitution (for instance, ls $(cat file)), the next commands were executed twice. In fact, they were read twice from stdin. After discussing with the musl folks, I realized libc has some exit handlers for FILE * objects: it tries to rewind the file descriptor if it has some data in its internal buffer. Eh, I didn’t expect that! To fix this, I ended up removing all FILE * usage by switching to plain file descriptors.

Before wrapping up this status report, let me introduce you kanshi. It’s an output configuration daemon that dynamically switches between, ugh, configurations. I personally use it to turn off my internal laptop screen when docked (and turn it back on again when undocked). It’s still pretty unstable, please contribute to make it better! Once is not custom, it’s written in Rust.

In December I’ll continue some wlroots work to refactor the clipboard and drag-and-drop code (it needs some love!). I’ve started to look how to implement job control in mrsh, I’d like to complete this work (it’s currently not working, and it’s not easy to debug). We’ll see how this goes. Thanks for reading!


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

Reverse-engineering the Mali G78

After a month of reverse-engineering, we’re excited to release documentation on the Valhall instruction set, available as a PDF. The findings are summarized in an XML architecture description for machine consumption. In tandem with the documentation, we’v…

via On Life and Lisp

Status update, July 2021

Hallo uit Nederland! I’m writing to you from a temporary workstation in Amsterdam, pending the installation of a better one that I’ll put together after I visit a furniture store today. I’ve had to slow a few things down somewhat while I prepare for this mov…

via Drew DeVault's blog

Updating the Go Memory Model

What changes should we make to Go's memory model? (Memory Models, Part 3)

via research!rsc

Generated by openring