Backend for Preferences
In cutler's earlier versions, it used to wrap around the defaults
CLI using asynchronous command invocations. However, this had a counterpart of being slow and extensive in terms of I/O and shell command execution.
cutler's latest versions include defaults-rs, a frontend for macOS preferences which has been directly written for interop with cutler. Instead of command invocation, it parses the preferences and can also modify them in batches, all the while minimizing the amount of I/O per call.
It has a neat little Rust API which is also asynchronous.
This gives some visible benefits:
-
Instead of lag between commands, now you get instantaneous modifications to your settings (use
cutler apply -v
to feel the speed). -
Granular control over what gets modified and what doesn't.
-
The community gets to modify and upgrade the backend.