<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>rosdep YAML format — rosdep 0.10.33 documentation</title> <link rel="stylesheet" href="_static/sphinxdoc.css" type="text/css" /> <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '', VERSION: '0.10.33', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="_static/jquery.js"></script> <script type="text/javascript" src="_static/underscore.js"></script> <script type="text/javascript" src="_static/doctools.js"></script> <link rel="top" title="rosdep 0.10.33 documentation" href="index.html" /> <link rel="next" title="rosdep sources list" href="sources_list.html" /> <link rel="prev" title="Contributing rosdep rules" href="contributing_rules.html" /> </head> <body> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="sources_list.html" title="rosdep sources list" accesskey="N">next</a> |</li> <li class="right" > <a href="contributing_rules.html" title="Contributing rosdep rules" accesskey="P">previous</a> |</li> <li><a href="contents.html">rosdep 0.10.33 documentation</a> »</li> </ul> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <p class="logo"><a href="contents.html"> <img class="logo" src="_static/ros.png" alt="Logo"/> </a></p> <h3><a href="contents.html">Table Of Contents</a></h3> <ul> <li><a class="reference internal" href="#">rosdep YAML format</a><ul> <li><a class="reference internal" href="#specification">Specification</a><ul> <li><a class="reference internal" href="#example">Example</a></li> <li><a class="reference internal" href="#os-name-identifiers-and-supported-package-managers">OS name identifiers and supported package managers</a></li> <li><a class="reference internal" href="#os-version-identifiers">OS version identifiers</a></li> <li><a class="reference internal" href="#disambiguation-of-os-version-and-package-manager">Disambiguation of OS_VERSION and PACKAGE_MANAGER</a></li> </ul> </li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="contributing_rules.html" title="previous chapter">Contributing rosdep rules</a></p> <h4>Next topic</h4> <p class="topless"><a href="sources_list.html" title="next chapter">rosdep sources list</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="_sources/rosdep_yaml_format.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="search.html" method="get"> <input type="text" name="q" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="rosdep-yaml-format"> <span id="rosdep-yaml"></span><h1>rosdep YAML format<a class="headerlink" href="#rosdep-yaml-format" title="Permalink to this headline">¶</a></h1> <p>The current rosdep YAML format specification was introduced in <a class="reference external" href="http://ros.org/reps/rep-0111.html">REP 111</a>.</p> <div class="section" id="specification"> <h2>Specification<a class="headerlink" href="#specification" title="Permalink to this headline">¶</a></h2> <p>rosdep supports both a <em>simple</em> and <em>versioned</em> syntax.</p> <blockquote> <div><ul> <li><dl class="first docutils"> <dt>Simple</dt> <dd><div class="first last highlight-python"><pre>ROSDEP_NAME: OS_NAME1: PACKAGE_MANAGER1: PACKAGE_ARGUMENTS_A OS_NAME2: PACKAGE_MANAGER2: PACKAGE_ARGUMENTS_A</pre> </div> </dd> </dl> </li> <li><dl class="first docutils"> <dt>Versioned</dt> <dd><div class="first last highlight-python"><pre>ROSDEP_NAME: OS_NAME1: OS_VERSION1: PACKAGE_MANAGER1: PACKAGE_ARGUMENTS_A OS_VERSION2: PACKAGE_MANAGER2: PACKAGE_ARGUMENTS_A2</pre> </div> </dd> </dl> </li> </ul> </div></blockquote> <p>The names above resolve as follows:</p> <blockquote> <div><ul class="simple"> <li><tt class="docutils literal"><span class="pre">ROSDEP_NAME</span></tt> is the name referred to by manifest files. Examples: <tt class="docutils literal"><span class="pre">log4cxx</span></tt> or <tt class="docutils literal"><span class="pre">gtest</span></tt>.</li> <li><tt class="docutils literal"><span class="pre">OS_NAME</span></tt> is the name of an OS. Examples: <tt class="docutils literal"><span class="pre">ubuntu</span></tt>, <tt class="docutils literal"><span class="pre">osx</span></tt>, <tt class="docutils literal"><span class="pre">fedora</span></tt>, <tt class="docutils literal"><span class="pre">debian</span></tt>, or <tt class="docutils literal"><span class="pre">windows</span></tt>.</li> <li><tt class="docutils literal"><span class="pre">OS_VERSION</span></tt> (<em>optional</em>) is the name of specific versions in the OS. Examples: <tt class="docutils literal"><span class="pre">lucid</span></tt> or <tt class="docutils literal"><span class="pre">squeeze</span></tt>. If no <tt class="docutils literal"><span class="pre">OS_VERSION</span></tt> is specified, the rule is assumed to apply to all versions.</li> <li><tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt> (<em>optional in ROS Electric, required in ROS Fuerte</em>) is a key to select which package manager to use for this rosdep. Examples: <tt class="docutils literal"><span class="pre">apt</span></tt>, <tt class="docutils literal"><span class="pre">easy_install</span></tt>, <tt class="docutils literal"><span class="pre">macports</span></tt>.</li> <li><tt class="docutils literal"><span class="pre">PACKAGE_ARGUMENT</span></tt> is free-form YAML that is be passed to the handler for the specified <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt>.</li> </ul> </div></blockquote> <div class="section" id="example"> <h3>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h3> <p>For Ubuntu the default package manager is apt. An example for the simple syntax is:</p> <div class="highlight-python"><pre>rosdep_name: ubuntu: apt: packages: [ debian-package-name, other-debian-package-name]</pre> </div> <p>or versioned as follows:</p> <div class="highlight-python"><pre>rosdep_name: ubuntu: lucid: apt: packages: [debian-package-name, other-debian-package-name]</pre> </div> </div> <div class="section" id="os-name-identifiers-and-supported-package-managers"> <h3>OS name identifiers and supported package managers<a class="headerlink" href="#os-name-identifiers-and-supported-package-managers" title="Permalink to this headline">¶</a></h3> <blockquote> <div><ul class="simple"> <li><tt class="docutils literal"><span class="pre">arch</span></tt>: Arch Linux<ul> <li><tt class="docutils literal"><span class="pre">pacman</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">cygwin</span></tt>: Cygwin<ul> <li><tt class="docutils literal"><span class="pre">apt-cyg</span></tt></li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">debian</span></tt>: Debian GNU/Linux<ul> <li><tt class="docutils literal"><span class="pre">apt</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">fedora</span></tt>: Fedora Project<ul> <li><tt class="docutils literal"><span class="pre">yum</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">freebsd</span></tt>: FreeBSD<ul> <li><tt class="docutils literal"><span class="pre">pkg_add</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">osx</span></tt> : Apple OS X<ul> <li>TODO: special notes on macports vs. homebrew</li> </ul> </li> <li><tt class="docutils literal"><span class="pre">opensuse</span></tt>: OpenSUSE<ul> <li><tt class="docutils literal"><span class="pre">zypper</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">rhel</span></tt> : Red Hat Enterprise Linux<ul> <li><tt class="docutils literal"><span class="pre">yum</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> <li><tt class="docutils literal"><span class="pre">ubuntu</span></tt>: Ubuntu<ul> <li><tt class="docutils literal"><span class="pre">apt</span></tt> (default)</li> <li><tt class="docutils literal"><span class="pre">pip</span></tt></li> <li><tt class="docutils literal"><span class="pre">source</span></tt></li> </ul> </li> </ul> </div></blockquote> <p>For backwards compatibility, <tt class="docutils literal"><span class="pre">macports</span></tt> is supported as an alias of <tt class="docutils literal"><span class="pre">osx</span></tt>.</p> </div> <div class="section" id="os-version-identifiers"> <h3>OS version identifiers<a class="headerlink" href="#os-version-identifiers" title="Permalink to this headline">¶</a></h3> <p>OS version identifiers use one-word codenames that refer to particular releases.</p> <p>Examples:</p> <blockquote> <div><ul class="simple"> <li>debian: <tt class="docutils literal"><span class="pre">squeeze</span></tt></li> <li>ubuntu: <tt class="docutils literal"><span class="pre">lucid</span></tt>, <tt class="docutils literal"><span class="pre">maverick</span></tt>, <tt class="docutils literal"><span class="pre">natty</span></tt>, <tt class="docutils literal"><span class="pre">oneiric</span></tt>, <tt class="docutils literal"><span class="pre">precise</span></tt></li> <li>osx: <tt class="docutils literal"><span class="pre">snow</span></tt>, <tt class="docutils literal"><span class="pre">lion</span></tt></li> </ul> </div></blockquote> </div> <div class="section" id="disambiguation-of-os-version-and-package-manager"> <h3>Disambiguation of OS_VERSION and PACKAGE_MANAGER<a class="headerlink" href="#disambiguation-of-os-version-and-package-manager" title="Permalink to this headline">¶</a></h3> <p>For backwards compatibility, the <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt> is allowed to be optional in the ROS Electric case. As both <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt> and <tt class="docutils literal"><span class="pre">OS_VERSION</span></tt> are optional, this creates an ambiguious case where either <tt class="docutils literal"><span class="pre">OS_VERSION</span></tt> or <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt> is specified, but not both.</p> <p>In this ambiguous case, rosdep first interprets the key as a <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt>. If this test fails, it will be interpreted as an <tt class="docutils literal"><span class="pre">OS_VERSION</span></tt>. Developers should exercise caution in keeping <tt class="docutils literal"><span class="pre">OS_VERSION</span></tt> and <tt class="docutils literal"><span class="pre">PACKAGE_MANAGER</span></tt> keys globally distinct.</p> </div> </div> </div> </div> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="sources_list.html" title="rosdep sources list" >next</a> |</li> <li class="right" > <a href="contributing_rules.html" title="Contributing rosdep rules" >previous</a> |</li> <li><a href="contents.html">rosdep 0.10.33 documentation</a> »</li> </ul> </div> <div class="footer"> © Copyright 2011, Willow Garage. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3. </div> </body> </html>