On Windows the client configuration is always immediately saved to the registry whenever something is changed. Generally that happens when the options dialog is closed as that's when we call Set() for most things.
However on macOS and Linux we need to do an explicit call to StoreConfig() to get things saved. If that isn't done then the settings only live in memory.
Right now it looks like we call StoreConfig() in the places where we change things, but this can easily be missed in the future. We should probably look at making this implicit, just like it is on Windows.