<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xdg-settings</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" title="xdg-settings"><a name="xdg-settings"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>xdg-settings &#8212; get various settings from the desktop environment</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="command">xdg-settings</code>  { <code class="option"><em class="replaceable"><code>get</code></em></code>  |   <code class="option"><em class="replaceable"><code>check</code></em></code>  |   <code class="option"><em class="replaceable"><code>set</code></em></code> } {<code class="option">property</code>} [<code class="option">subproperty</code>] [<code class="option">value</code>]</p></div><div class="cmdsynopsis"><p><code class="command">xdg-settings</code>  { <code class="option">--help</code>  |   <code class="option">--list</code>  |   <code class="option">--manual</code>  |   <code class="option">--version</code> }</p></div></div><div class="refsect1" title="Description"><a name="description"></a><h2>Description</h2><p>
      xdg-settings gets various settings from the desktop environment.
      For instance, desktop environments often provide proxy configuration
      and default web browser settings. Using xdg-settings these parameters
      can be extracted for use by applications that do not use the desktop
      environment's libraries (which would use the settings natively).
    </p><p>
      xdg-settings is for use inside a desktop session only.
      It is not recommended to use xdg-settings as root.
    </p></div><div class="refsect1" title="Options"><a name="options"></a><h2>Options</h2><div class="variablelist"><dl><dt><span class="term"><code class="option">--help</code></span></dt><dd>
            Show command synopsis.
          </dd><dt><span class="term"><code class="option">--list</code></span></dt><dd>
            List all properties xdg-settings knows about.
          </dd><dt><span class="term"><code class="option">--manual</code></span></dt><dd>
            Show this manualpage.
          </dd><dt><span class="term"><code class="option">--version</code></span></dt><dd>
            Show the xdg-utils version information.
          </dd></dl></div></div><div class="refsect1" title="Properties"><a name="properties"></a><h2>Properties</h2><p>
      When using xdg-settings to get, check or set a destkop setting, properties
      and possibly sub-properties are used to specify the setting to be changed.
    </p><p>
      Some properties (such as default-web-browser) fully describe the setting
      to be changed. Other properties (such as default-url-scheme-handler) require
      more information (in this case the actual scheme to set the default handler
      for) which must be provided in a sub-property.
    </p></div><div class="refsect1" title="Exit Codes"><a name="exitcodes"></a><h2>Exit Codes</h2><p>
      An exit code of 0 indicates success while a non-zero exit code
      indicates failure. The following failure codes can be returned:
    </p><div class="variablelist"><dl><dt><span class="term"><code class="option">1</code></span></dt><dd>
            Error in command line syntax.
          </dd><dt><span class="term"><code class="option">2</code></span></dt><dd>
            One of the files passed on the command line did not exist.
          </dd><dt><span class="term"><code class="option">3</code></span></dt><dd>
            A required tool could not be found. 
          </dd><dt><span class="term"><code class="option">4</code></span></dt><dd>
            The action failed. 
          </dd></dl></div></div><div class="refsect1" title="Examples"><a name="examples"></a><h2>Examples</h2><p>
      Get the desktop file name of the current default web browser
      </p><pre class="programlisting">
        xdg-settings get default-web-browser
      </pre><p>
    </p><p>
      Check whether the default web browser is firefox.desktop, which can be
      false even if "get default-web-browser" says that is the current value
      (if only some of the underlying settings actually reflect that value)
      </p><pre class="programlisting">
        xdg-settings check default-web-browser firefox.desktop
      </pre><p>
    </p><p>
      Set the default web browser to google-chrome.desktop
      </p><pre class="programlisting">
        xdg-settings set default-web-browser google-chrome.desktop
      </pre><p>
    </p><p>
      Set the default mailto URL scheme handler to be evolution.desktop
      </p><pre class="programlisting">
        xdg-settings set default-url-scheme-handler mailto evolution.desktop
      </pre><p>
    </p></div></div></body></html>
