You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rift 0.4.1 (Homebrew, launchd service homebrew.mxcl.rift)
macOS Darwin 25.5.0 (Tahoe)
hot_reload = true in config
Description
With hot_reload = true, changes to ~/.config/rift/config.toml are not applied. New windows created after the edit still follow the old rules. No errors in the service logs (/tmp/rift_chris.err.log / .out.log are empty).
Reproduction
hot_reload = true in config.
While rift is running, add an app rule, e.g. { app_id = "co.ensili.Yummy", floating = true } to app_rules (edit made with a tool that writes atomically, i.e. write-temp-then-rename — most editors do this).
Launch the app: window is tiled, not floating. rift-cli query windows shows "is_floating": false.
Same window now reports "is_floating": true — the rule itself is valid, only the reload never happened.
Suspected cause
Atomic-rename saves replace the file's inode. If the watcher follows the original inode (or watches the file directly rather than its parent directory), it never sees subsequent modifications. Watching the parent directory for rename/create events on the config filename (what most file watchers do to handle editor atomic writes) would fix it.
Environment
homebrew.mxcl.rift)hot_reload = truein configDescription
With
hot_reload = true, changes to~/.config/rift/config.tomlare not applied. New windows created after the edit still follow the old rules. No errors in the service logs (/tmp/rift_chris.err.log/.out.logare empty).Reproduction
hot_reload = truein config.{ app_id = "co.ensili.Yummy", floating = true }toapp_rules(edit made with a tool that writes atomically, i.e. write-temp-then-rename — most editors do this).rift-cli query windowsshows"is_floating": false.launchctl kickstart -k gui/$(id -u)/homebrew.mxcl.rift."is_floating": true— the rule itself is valid, only the reload never happened.Suspected cause
Atomic-rename saves replace the file's inode. If the watcher follows the original inode (or watches the file directly rather than its parent directory), it never sees subsequent modifications. Watching the parent directory for rename/create events on the config filename (what most file watchers do to handle editor atomic writes) would fix it.
Notes
launchctl kickstart -k gui/$(id -u)/homebrew.mxcl.rift.