feat(02-03): client socket, autostart daemon, switch handler, workspace wiring

- Client struct sends JSON requests to daemon over Unix socket
- EnsureDaemon auto-starts the daemon if not running (retry 50ms x 20)
- Switch handler uses FuzzyMatch + SwitchToWorkspace via i3 IPC
- InitWorkspaceResolver wires BuildTerminalWorkspaceMap + ResolveWorkspace
- sysattr_linux.go for Setsid detach on daemon spawn
This commit is contained in:
Pierre Martin
2026-03-23 17:51:31 +01:00
parent a388c9477d
commit a79a0e154c
4 changed files with 340 additions and 0 deletions

7
sysattr_linux.go Normal file
View File

@@ -0,0 +1,7 @@
package main
import "syscall"
func newSysProcAttr() *syscall.SysProcAttr {
return &syscall.SysProcAttr{Setsid: true}
}