788 B
788 B
ADR 0001: Single Binary CLI And Daemon
Status
Accepted.
Decision
The project ships one executable: geth. It has daemon mode with
geth daemon run and control mode through commands such as geth status.
Control commands use a local Unix socket. There are no separate gethd or
gethctl binaries.
The same binary also owns daemon service installation through geth daemon service .... Service installation targets user service managers: systemd user
units on Linux, launchd user agents on macOS, and per-user scheduled tasks on
Windows.
Consequences
Packaging and user mental model stay simple. The daemon remains the owner of identity, Iroh endpoint state, resources, and synchronized data structures. The bootstrap avoids privileged system service installation.