aboutsummaryrefslogtreecommitdiffstats
path: root/doc/s6-frontend-alias.html
blob: 369c79266ec504aba07d6f2d1b4102a17affe1f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<html>
  <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta http-equiv="Content-Language" content="en" />
    <title>s6-frontend: the s6-frontend-alias program</title>
    <meta name="Description" content="s6-frontend: the s6-frontend-alias program" />
    <meta name="Keywords" content="s6 command s6-frontend-alias daemontools runit" />
    <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> -->
  </head>
<body>

<p>
<a href="index.html">s6-frontend</a><br />
<a href="//skarnet.org/software/">Software</a><br />
<a href="//skarnet.org/">skarnet.org</a>
</p>

<h1> The <tt>s6-frontend-alias</tt> program </h1>

<p>
<tt>s6-frontend-alias</tt> is a multicall binary that implements
functionality from the
<a href="https://cr.yp.to/daemontools.html">daemontools</a> package,
and/or from the
<a href="http://smarden.org/runit/">runit</a> package, whenever
possible, via 
<a href="//skarnet.org/software/s6/">s6</a> commands.
</p>

<h2> Interface </h2>

<pre>
     s6-frontend-alias [ -v ] <em>daemontools_command</em> <em>args...</em>
     s6-frontend-alias [ -v ] <em>runit_command</em> <em>args...</em>
     <em>daemontools_command</em> <em>args...</em>
     <em>runit_command</em> <em>args...</em>
</pre>

<p>
<tt>s6-frontend-alias</tt> can be called as is: then it takes the command
name as its argument. Or, it can be called directly as the wanted command.
It finds the closest approximation of the command in the s6 world, and
executes into it. When it cannot find a suitable idiomatic s6 version of
the wanted command, it prints an explanatory message to stderr, then
exits 100.
</p>

<p>
<tt>s6-frontend-alias</tt> is only built when at least one of the
<tt>--enable-alias-daemontools</tt> and <tt>--enable-alias-runit</tt>
options have been given to configure at build time.
</p>

<p>
When the <tt>--enable-alias-daemontools</tt> option has been given,
the following commands are created at installation time as symbolic
links to <tt>s6-frontend-alias</tt>, which recognizes them:
</p>

<ul>
 <li> envdir </li>
 <li> envuidgid </li>
 <li> fghack </li>
 <li> multilog </li>
 <li> pgrphack </li>
 <li> readproctitle </li>
 <li> setlock </li>
 <li> setuidgid </li>
 <li> softlimit </li>
 <li> supervise </li>
 <li> svc </li>
 <li> svok </li>
 <li> svscan </li>
 <li> svscanboot </li>
 <li> svstat </li>
 <li> tai64n </li>
 <li> tai64nlocal </li>
</ul>

<p>
When the <tt>--enable-alias-runit</tt> option has been given,
the following commands are created at installation time as symbolic
links to <tt>s6-frontend-alias</tt>, which recognizes them:
</p>

<ul>
 <li> runit </li>
 <li> runit-init </li>
 <li> runsvdir </li>
 <li> runsvchdir </li>
 <li> runsv </li>
 <li> svlogd </li>
 <li> utmpset </li>
</ul>

<p>
(The <tt>chpst</tt> and <tt>sv</tt> runit commands are recognized
by <tt>s6-frontend-alias</tt>, but handled by specific programs,
<a href="s6-frontend-alias-chpst.html">s6-frontend-alias-chpst</a> and
<a href="s6-frontend-alias-sv.html">s6-frontend-alias-sv</a>, and the
<tt>chpst</tt> and <tt>sv</tt> symbolic links point directly to those
programs.)
</p>

<h2> Options </h2>

<ul>
 <li> <tt>-v</tt>&nbsp;: verbose. When <tt>s6-frontend-alias</tt>
is called under its own name and this option is given, it prints
an explanatory message to stderr before executing into the
corresponding idiomatic s6 command. </li>
</ul>

<h2> Notes </h2>

<ul>
 <li> <tt>s6-frontend-alias</tt> is a convenience program, written
so that daemontools and runit users can keep using their habits while
transitioning to s6. However, it is not an "official" interface,
because s6 is strictly more powerful than daemontools, and has a few
significant fundamental differences with runit. Daemontools and runit
users are still encouraged to learn and get used to the native
s6 commands. </li>
</ul>

</body>
</html>