# kordophoned This is the client Kordophone daemon. It exposes a dbus interface for accessing the caching layer, handles the update cycle, etc. # Building RPM Make sure cargo-generate-rpm is installed, `cargo install cargo-generate-rpm`. Then: ``` cargo build --release strip -s target/release/kordophoned cargo generate-rpm ``` ## Running on macOS Before any client can talk to the kordophone daemon on macOS, the XPC service needs to be manually registered with launchd. - Register using `launchctl load net.buzzert.kordophonecd.plist` Plans are to embed this into the app executable, which would then not need to be manually registered (only via the following Swift code): ```swift try? SMAppService.agent(plistName: "net.buzzert.kordophonecd.plist").register() ``` and the following in Info.plist: ```xml Labelnet.buzzert.kordophonecd BundleProgramContents/MacOS/kordophoned MachServicesnet.buzzert.kordophonecd KeepAlive ```