Contributions for this document are very welcome. Whether you've found a typo or have written an entire new section, the best way to get in touch is via Bugzilla at bugs.gentoo.org.
The editors reserve the right to modify submissions as they see fit. Any substantial changes will of course be discussed with the submitter first — unless explicitly requested, minor typo corrections and formatting fixes will not be discussed.
This document is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If this is a problem, don't submit anything.
This document is produced using the DevBook XML build system. You can download
a snapshot of the system as well as the relevant XML files from Subversion. You
can also view the XML of any page by replacing index.html
with
text.xml
in the URL. If you'd rather just work with plain text, that's
fine too
—
the formatting can be easily done by someone else (meaning, us).
Currently, sources are hosted on
git.gentoo.org.
For current Gentoo developers, access is at
git+ssh://git@git.gentoo.org/proj/devmanual.git
.
Non-developers can clone the repository by typing
git clone git://anongit.gentoo.org/proj/devmanual.git
.
The sources are also hosted on
GitHub
for those who prefer to submit patches using pull requests.
To build the devmanual, simply run make
in the top directory of
the repository. You need xsltproc
(from
dev-libs/libxslt
) for the XML to HTML conversion and
convert
(from media-gfx/imagemagick
) for the SVG to PNG
conversion used in some of the figures throughout the document.
DevBook XML is heavily based on GuideXML and many tags are similar, if not the same. The main differences occur in layout which are designed to make a large-scale publication easier to produce and manage using a hierarchical tree system. Before starting off you really should first examine the GuideXML guide in a reasonable amount of depth.
<subsection>
but do indent tables, lists and definition lists.
Do not indent text in ordinary paragraph blocks.
<pre>
when you need no syntax
highlighting. When you need syntax highlighting use the <codesample>
tag along with a lang
attribute
—
usually you want this to be set to
ebuild
to syntax highlight ebuild code snippets.
<include>
flag. You must ensure that the self
tag
in each document correctly points to the relative path of the document from
the root node so that the tree-walking algorithms work correctly.
<d/>
tag. The build system will automatically turn
this into a proper Unicode long dash.