95acc120 |
1 | .Dd $Mdocdate$ |
2 | .Dt SYSTEMBSD 8 |
3 | .Os |
4 | .Sh NAME |
5 | .Nm systembsd |
6 | .Nd systemd compatibility layer |
7 | .\" .Sh SYNOPSIS |
8 | .\" .Nm systembsd |
9 | .Sh DESCRIPTION |
aa113e77 |
10 | .Nm provides the functionality of hostnamed, localed, timedated and |
11 | (eventually) logind, four systemd daemons. |
12 | .Sh OVERVIEW |
13 | .Nm systembsd emulates the DBus behavior of several afforementioned |
14 | systemd daemons by exposing matching interfaces on the system bus. The |
15 | systembsd executables themselves are run dynamically, as a call to a |
16 | DBus method/property listed in a .service file will cause DBus to |
17 | execute the systembsd binary with proper permissions. The resulting |
18 | proccess, after a period of inactivity, will exit() safely. |
19 | .Pp |
20 | .Nm systembsd was written to provide compatibility for large codebases |
21 | (e.g. GNOME) that depend on Linux's systemd. Systemd is decidedly |
22 | incompatibile on *BSD systems. Systembsd does not intend to bring |
23 | systemd philosphy or practices to its target platform. |
24 | .Sh HOSTNAMED |
25 | Hostnamed manages setting the system's hostnames, which comprise of the |
26 | dynamic hostname via sethostname(3), the static hostname via |
27 | sethostname(3) and /etc/myname, and the pretty hostname, a UTF-8 string |
28 | contained in /etc/machine-info. |
29 | .Pp |
30 | Hostnamed also handles determining the physical machine's |
31 | characteristics, which it reciprocates through the Chassis and IconName |
32 | properties. IconName is a string following the XDG naming specification |
33 | and is set based off the information from the Chassis property. The |
34 | Chassis property is a string, one of "desktop", "laptop", "server", |
35 | "tablet", "handset", "vm" or "container". Chassis determination involves |
36 | analyzing hwctl, dmesg, and uname output. |
37 | .Pp |
38 | The remaining Kernel* properties and OperatingSystemPrettyName are |
39 | analogous to corresponding uname(3) calls. OperatingSystemCPEName is a |
40 | string following the Common Platform Enumeration specification. |
41 | .Sh LOCALED |
42 | Write this! |
43 | .Sh TIMEDATED |
44 | Write this! |
45 | .Sh LOGIND |
46 | Not implemented yet, work ongoing. |
47 | .Sh FILES |
48 | |
49 | .Sh EXIT STATUS |
50 | .Nm systemd-*d will return 0 on success, 1 on failure. |
51 | .Sh HISTORY |
52 | systembsd was written as a Google Summer of Code project in 2014, |
53 | OpenBSD's first year participating. |
7759487c |
54 | .Br |
54d254c3 |
55 | Mentored by Antoine Jacoutot and Landry Breuil. |
aa113e77 |
56 | .Sh AUTHORS |
7759487c |
57 | .Nm Ian Sutton <ian@kremlin.cc> |