<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>dbus-update-activation-environment</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry"><a name="dbus-update-activation-environment.1"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>dbus-update-activation-environment — update environment used for D-Bus session services</p></div><div class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">dbus-update-activation-environment</code> [--systemd] [--verbose] --all | <em class="replaceable"><code>VAR</code></em>... | <em class="replaceable"><code>VAR</code></em>=<em class="replaceable"><code>VAL</code></em>... </p></div></div><div class="refsect1"><a name="description"></a><h2>DESCRIPTION</h2><p><span class="command"><strong>dbus-update-activation-environment</strong></span> updates the list of environment variables used by <span class="command"><strong>dbus-daemon --session</strong></span> when it activates session services without using <span class="command"><strong>systemd</strong></span>.</p><p>With the <code class="option">--systemd</code> option, if an instance of <span class="command"><strong>systemd --user</strong></span> is available on D-Bus, it also updates the list of environment variables used by <span class="command"><strong>systemd --user</strong></span> when it activates user services, including D-Bus session services for which <span class="command"><strong>dbus-daemon</strong></span> has been configured to delegate activation to <span class="command"><strong>systemd</strong></span>. This is very similar to the <code class="option">import-environment</code> command provided by <span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span>).</p><p>Variables that are special to <span class="command"><strong>dbus-daemon</strong></span> or <span class="command"><strong>systemd</strong></span> may be set, but their values will be overridden when a service is started. For instance, it is not useful to add <code class="envar">DBUS_SESSION_BUS_ADDRESS</code> to <span class="command"><strong>dbus-daemon</strong></span>'s activation environment, although it might still be useful to add it to <span class="command"><strong>systemd</strong></span>'s activation environment.</p></div><div class="refsect1"><a name="options"></a><h2>OPTIONS</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><code class="option">--all</code></span></dt><dd><p>Set all environment variables present in the environment used by <span class="command"><strong>dbus-update-activation-environment</strong></span>. </p></dd><dt><span class="term"><code class="option">--systemd</code></span></dt><dd><p>Set environment variables for systemd user services as well as for traditional D-Bus session services.</p></dd><dt><span class="term"><code class="option">--verbose</code></span></dt><dd><p>Output messages to standard error explaining what dbus-update-activation-environment is doing.</p></dd><dt><span class="term"><em class="replaceable"><code>VAR</code></em></span></dt><dd><p>If <em class="replaceable"><code>VAR</code></em> is present in the environment of <span class="command"><strong>dbus-update-activation-environment</strong></span>, set it to the same value for D-Bus services. Its value must be UTF-8 (if not, it is skipped with a warning). If <em class="replaceable"><code>VAR</code></em> is not present in the environment, this argument is silently ignored. </p></dd><dt><span class="term"><em class="replaceable"><code>VAR</code></em>=<em class="replaceable"><code>VAL</code></em></span></dt><dd><p>Set <em class="replaceable"><code>VAR</code></em> to <em class="replaceable"><code>VAL</code></em>, which must be UTF-8.</p></dd></dl></div></div><div class="refsect1"><a name="examples"></a><h2>EXAMPLES</h2><p> <span class="command"><strong>dbus-update-activation-environment</strong></span> is primarily designed to be used in Linux distributions' X11 session startup scripts, in conjunction with the "user bus" design. </p><p>To propagate <code class="envar">DISPLAY</code> and <code class="envar">XAUTHORITY</code> to <span class="command"><strong>dbus-daemon</strong></span> and, if present, <span class="command"><strong>systemd</strong></span>, and propagate <code class="envar">DBUS_SESSION_BUS_ADDRESS</code> to <span class="command"><strong>systemd</strong></span>: </p><pre class="programlisting"> dbus-update-activation-environment --systemd \ DBUS_SESSION_BUS_ADDRESS DISPLAY XAUTHORITY </pre><p> </p><p>To propagate all environment variables except <code class="envar">XDG_SEAT</code>, <code class="envar">XDG_SESSION_ID</code> and <code class="envar">XDG_VTNR</code> to <span class="command"><strong>dbus-daemon</strong></span> (and, if present, <span class="command"><strong>systemd</strong></span>) for compatibility with legacy X11 session startup scripts: </p><pre class="programlisting"> # in a subshell so the variables remain set in the # parent script ( unset XDG_SEAT unset XDG_SESSION_ID unset XDG_VTNR dbus-update-activation-environment --systemd --all ) </pre><p> </p></div><div class="refsect1"><a name="exit_status"></a><h2>EXIT STATUS</h2><p> <span class="command"><strong>dbus-update-activation-environment</strong></span> exits with status 0 on success, EX_USAGE (64) on invalid command-line options, EX_OSERR (71) if unable to connect to the session bus, or EX_UNAVAILABLE (69) if unable to set the environment variables. Other nonzero exit codes might be added in future versions.</p></div><div class="refsect1"><a name="environment"></a><h2>ENVIRONMENT</h2><p><code class="envar">DBUS_SESSION_BUS_ADDRESS</code>, <code class="envar">XDG_RUNTIME_DIR</code> and/or <code class="envar">DISPLAY</code> are used to find the address of the session bus.</p></div><div class="refsect1"><a name="limitations"></a><h2>LIMITATIONS</h2><p> <span class="command"><strong>dbus-daemon</strong></span> does not provide a way to unset environment variables after they have been set (although <span class="command"><strong>systemd</strong></span> does), so <span class="command"><strong>dbus-update-activation-environment</strong></span> does not offer this functionality either. </p><p> POSIX does not specify the encoding of non-ASCII environment variable names or values and allows them to contain any non-zero byte, but neither <span class="command"><strong>dbus-daemon</strong></span> nor <span class="command"><strong>systemd</strong></span> supports environment variables with non-UTF-8 names or values. Accordingly, <span class="command"><strong>dbus-update-activation-environment</strong></span> assumes that any name or value that appears to be valid UTF-8 is intended to be UTF-8, and ignores other names or values with a warning. </p></div><div class="refsect1"><a name="bugs"></a><h2>BUGS</h2><p>Please send bug reports to the D-Bus bug tracker or mailing list. See <a class="ulink" href="http://www.freedesktop.org/software/dbus/" target="_top">http://www.freedesktop.org/software/dbus/</a>.</p></div><div class="refsect1"><a name="see_also"></a><h2>SEE ALSO</h2><p><span class="citerefentry"><span class="refentrytitle">dbus-daemon</span>(1)</span>, <span class="citerefentry"><span class="refentrytitle">systemd</span>(1)</span>, the <code class="option">import-environment</code> command of <span class="citerefentry"><span class="refentrytitle">systemctl</span>(1)</span></p></div></div></body></html>