Hey David,<div><br></div><div>So, the current structure of things makes it pretty hard to write instructions that could allow someone to run their own ROS wiki/docs site. Code to make the wiki, docs, etc. turn over is spread among a number of different repositories, with even more repositories needed to hold meta-information (like the location of Doxygen tag files for cross-referencing purposes). Right now, we also assume that MoinMoin is configured a certain way (with a bunch of custom macros installed), we assume that a Jenkins build farm is set up to run jobs, and we assume certain repositories are used to store index information on what rosinstall files should be documented.</div>

<div><br></div><div>With that said, most of these assumptions are things that can be parameterized, scripts running inside a Jenkins chroot can be tweaked to allow for running on the command line, and instructions can be written on how to configure MoinMoin and the docs server correctly. So, in the long term, it's definitely possible to streamline the process, and allow for wiki/docs sites to be hosted by many different parties. There's just a lot of work involved in making that possibility a reality.</div>

<div><br></div><div>With <a href="http://www.ros.org/wiki/rosdoc_lite">rosdoc_lite</a>, we've taken a small step in the right direction since it allows users to document individual packages relatively easily. However, all the custom code to pass the right cross-referencing information to rosdoc_lite, update indexing systems, run many doc jobs in parallel, display the correct information on the wiki, and upload documentation to the correct location still makes cloning the wiki pipeline a mess. In particular, the need to support fuerte catkin, groovy catkin, and non-catkin packages (yes, they all have slightly different package or manifest xml files and CMake invocations) leads to some scripts that aren't as clean as you'd like. Once hydro comes around, and the build system finally settles, the task creating nice standalone tools will also get easier.</div>

<div><br></div><div>Hopefully, this is at least a reasonable explanation as to why the instructions you seek don't exist. If you were to get super ambitious, wanting to pull code apart and make it more generic, the following repositories would be of use:</div>

<div><br></div><div>roswiki (wiki macros we use for MoinMoin): <a href="http://ros.org/wiki/roswiki">http://ros.org/wiki/roswiki</a></div><div>jenkins_scripts (holds doc scripts that make all the cross-referencing goodness possible): <a href="http://ros.org/wiki/jenkins_scripts">http://ros.org/wiki/jenkins_scripts</a></div>

<div>jenkins_tools (tools that allow you to run the doc script in a local chroot or on a jenkins instance): <a href="http://ros.org/wiki/jenkins_tools">http://ros.org/wiki/jenkins_tools</a></div><div><br></div><div>Hope all is well,</div>

<div><br></div><div>Eitan</div><div><br></div><div><div class="gmail_quote">On Wed, Oct 24, 2012 at 2:22 PM, David Lu!! <span dir="ltr"><<a href="mailto:davidvlu@gmail.com" target="_blank">davidvlu@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">If someone wanted to set up their own wiki/docs site for experimenting<br>
with a fork of the current repo (and this person wasn't entirely too<br>
busy trying to graduate), are there any instructions on how to do<br>
that?<br>
<br>
After the conversations at ROSCon and on this list, I think there's<br>
potential for further documentation of code quality and maintenance.<br>
<br>
-DL!!<br>
<div><div class="h5"><br>
On Mon, Oct 22, 2012 at 8:00 PM, Eitan Marder-Eppstein <<a href="mailto:eitan@hidof.com">eitan@hidof.com</a>> wrote:<br>
> Hey all,<br>
><br>
> So, as part of the infrastructure changes that we're making for ROS Groovy,<br>
> we've revamped the way documentation generation and indexing works. The new<br>
> system handles cross-referencing of Doxygen properly, is capable of<br>
> documenting catkin packages, and can run documentation generation with<br>
> independent jobs for each repository indexed. To support this new system,<br>
> there is a new documentation generation tool for ROS called rosdoc_lite,<br>
> which is a stripped down version of rosdoc that adds support for Doxygen<br>
> cross-references and catkin. For more information on using rosdoc_lite as a<br>
> standalone tool, please see <a href="http://ros.org/wiki/rosdoc_lite" target="_blank">http://ros.org/wiki/rosdoc_lite</a>.<br>
><br>
> Since catkin packages were never properly documented and indexed in Fuerte,<br>
> we've also decided to roll out this new documentation indexer for Fuerte in<br>
> addition to Groovy. This means that, if you have Fuerte or Groovy packages<br>
> that you'd like to have indexed and documented on <a href="http://ros.org" target="_blank">ros.org</a>, you'll need to<br>
> register them with the new indexing system. For detailed instructions on how<br>
> to add your packages to the index, please see this page, but it should be as<br>
> simple as creating a rosinstall file for your stack, metapackage, or<br>
> repository group.<br>
><br>
> The new documentation also comes with updated wiki macros for generating<br>
> package and stack headers on <a href="http://ros.org" target="_blank">ros.org</a>. These headers have tabs for<br>
> diamondback, electric, fuerte, and groovy that you can easily switch<br>
> between. They also allow you to include distro specific information with<br>
> each package (much like with the version macro). For more information on<br>
> these new headers, and how they work, please see:<br>
> <a href="http://www.ros.org/wiki/WikiMacros" target="_blank">http://www.ros.org/wiki/WikiMacros</a>. Since they are backwards compatible,<br>
> we've already switched the wiki over.<br>
><br>
> On a logistical note, we're already using the new indexer to build<br>
> documentation for Groovy packages, but have not switched the wiki over to<br>
> use the new indexer for Fuerte quite yet. First, we want to make sure that<br>
> the community has a chance to add their packages to the indexer. So, within<br>
> the next two weeks, please take some time to add any package you maintain to<br>
> the indexer. Once again, to do this, please follow the instructions here.<br>
><br>
> Some useful pages:<br>
><br>
> Tickets for rosdoc_lite<br>
> (<a href="https://github.com/ros-infrastructure/rosdoc_lite/issues" target="_blank">https://github.com/ros-infrastructure/rosdoc_lite/issues</a>)<br>
> Tickets for indexing system<br>
> (<a href="https://github.com/ros-infrastructure/jenkins_scripts/issues" target="_blank">https://github.com/ros-infrastructure/jenkins_scripts/issues</a>)<br>
><br>
> Hope all is well,<br>
><br>
> Eitan<br>
><br>
> --<br>
> Eitan Marder-Eppstein<br>
> President, hiDOF Inc.<br>
> <a href="http://www.hidof.com" target="_blank">http://www.hidof.com</a><br>
><br>
><br>
</div></div>> _______________________________________________<br>
> ros-users mailing list<br>
> <a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
> <a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
><br>
_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Eitan Marder-Eppstein<div>President, hiDOF Inc.</div><div><a href="http://www.hidof.com" target="_blank">http://www.hidof.com</a></div><br>
</div>