2016-01-05 09:32:41 +01:00
Proxmox VE Documentation
========================
2016-04-07 12:53:34 +02:00
We try to generate high quality documentation for
2016-10-04 14:10:23 +02:00
{website}[{pve}], and choose to use
2016-01-05 12:15:13 +01:00
http://www.methods.co.nz/asciidoc/[AsciiDoc] as base format.
2016-04-07 12:53:34 +02:00
The basic idea is to generate high quality manual pages, and assemble
them into a complete book, called link:pve-admin-guide.adoc[Proxmox VE
2016-01-05 12:15:13 +01:00
Administration Guide]. So we have one source, and generate several
documents from that. It is also possible to generate printable PDF
2016-09-23 13:58:45 +02:00
files, or ebook formats ('.epub').
2016-01-05 09:32:41 +01:00
2016-04-07 12:53:34 +02:00
When possible, we provide scripts to extract API definitions,
configuration or command line options from the source code.
To simplify the documentation task, we keep all Documentation within
2016-04-30 11:35:45 +02:00
this repository. It is possible to generate the docs without installing
any additional Proxmox packages with:
2016-04-07 12:53:34 +02:00
2016-04-30 11:13:12 +02:00
make index
2016-04-07 12:53:34 +02:00
2016-04-30 11:35:45 +02:00
To update the auto-generate API definitions use:
make update
NOTE: you need a fully installed development environment for that.
2016-04-30 11:13:12 +02:00
Debian Packages
---------------
We generate a development package called 'pve-doc-generator', which is
used by other Proxmox VE package to generate manual pages at package
build time.
Another package called 'pve-docs' is used to publish generated
'.html' and '.pdf' files on our web servers. You can generate
2016-09-23 09:28:14 +02:00
those Debian packages using:
2016-04-30 11:13:12 +02:00
make deb
2016-04-07 12:53:34 +02:00
2016-11-08 06:46:43 +01:00
Common Macro definition in link:asciidoc/asciidoc-pve.conf[]
------------------------------------------------------------
2016-01-06 17:58:58 +01:00
'asciidoc' allows us to define common macros, which can then be
referred to using `{macro}`. We try to use this mechanism to improve
consistency. For example, we defined a macro called `pve`, which
2016-10-04 14:10:23 +02:00
expands to "Proxmox VE".
For URLs which are used more than once, two macros should be defined:
* `{name-url}`, which just contains the http(s) URL
* `{name}`, which contains the complete link including the canonical
description
For example, the macro `{forum-url}` expands to {forum-url}, and the macro
`{forum}` expands to {forum}.
2016-11-08 06:46:43 +01:00
The plan is to add more such definitions for terms which are used more
than once.
2016-10-04 14:10:23 +02:00
2016-11-08 06:46:43 +01:00
WARNING: When asciidoc encounters a misspelled macro name, it will
silently drop the containing line!
2016-10-04 14:10:23 +02:00
2016-01-06 17:58:58 +01:00
2016-01-05 12:26:10 +01:00
Autogenerated CLI Command Synopsis
----------------------------------
We generate the command line synopsis for all manual pages
automatically. We can do that, because we have a full declarative
definition of the {pve} API. I added those generated files
('*-synopsis.adoc') to the git repository, so that it is possible to
build the documentation without having a fully installed {pve}
development environment.
2016-01-05 09:32:41 +01:00
2016-09-22 11:08:41 +02:00
Style Guide
-----------
'asciidoc' uses a fairly simple markup syntax for formatting content.
The following basic principles should be followed throughout our
documentation.
Sections
~~~~~~~~
Sections are formatted using `two-line titles', by adding a line of
the appropriate characters and of the same length as the section title
below the title text:
Level 0 (top level): ======================
Level 1: ----------------------
Level 2: ~~~~~~~~~~~~~~~~~~~~~~
Level 3: ^^^^^^^^^^^^^^^^^^^^^^
Level 4 (bottom level): ++++++++++++++++++++++
2016-09-23 09:28:14 +02:00
Section titles should always be preceded by two empty lines. Each word
2016-09-22 11:08:41 +02:00
in a title should be capitalized except for ``articles, coordinating
conjunctions, prepositions, and the word to in infinitives unless they
appear as the first or last word of a title'' (see
http://web.mit.edu/course/21/21.guide/capitals.htm[Mayfield Electronic Handbook of Technical & Scientific Writing]).
Lists
~~~~~
Numbered Lists
^^^^^^^^^^^^^^
Numbered lists should be created using the implicit numbering format:
-----
. First level
.. Second level
. First level again
-----
. First level
.. Second level
. First level again
Bulleted Lists
^^^^^^^^^^^^^^
Bulleted lists should be created using the '*' symbol:
-----
* First level
** Second level
* First level again
-----
* First level
** Second level
* First level again
Labeled Lists
^^^^^^^^^^^^^
Labeled lists should be used to make lists of key-value style text
2016-09-23 09:28:14 +02:00
more readable, such as command line parameters or configuration options:
2016-09-22 11:08:41 +02:00
.Regular labeled lists
-----
First Label Text::
Element text paragraph
Second Label Text::
Another element text paragraph.
-----
First Label Text::
Element text paragraph
Second Label Text::
Another element text paragraph.
.Horizontal labeled lists
-----
[horizontal]
First Label Text:: Element text paragraph
Second Label Text:: Another element text paragraph.
-----
creates
[horizontal]
First Label Text:: Element text paragraph
Second Label Text:: Another element text paragraph.
The FAQ section uses a special questions and answers style for
labeled lists.
Text and Block Styles
~~~~~~~~~~~~~~~~~~~~~
'asciidoc' offers a wide range of default text styles:
* 'Emphasized text': created using \'text', used for emphasizing words
and phrases
* `Monospaced text`: created using \`text`, used for command / program
2016-09-23 13:58:45 +02:00
names, file paths, in-line commands, option names and values
2016-09-22 11:08:41 +02:00
* *Strong text*: created using \*text*, used for emphasizing concepts
or names when first introduced in a section.
2016-09-23 13:58:45 +02:00
There are also different built-in block styles that are used in
2016-09-22 11:08:41 +02:00
our documentation:
Complete paragraphs can be included literally by prepending each
of their lines with whitespace. Use this for formatting complete
commands on their own line, such as:
pct set ID -option value
----
By surrounding a paragraph with lines containing at least four '-'
characters, its content is formatted as listing.
Use this for formatting file contents or command output.
----
Specially highlighted 'notes', 'warnings' and 'important' information
can be created by starting a paragraph with `NOTE:`, `WARNING:` or
`IMPORTANT:`:
NOTE: this is a note
WARNING: this is warning
IMPORTANT: this is important information
For each of these blocks (including lists and paragraphs), a block header
can be defined by prepending the block with a `.' character and the header
text:
-----
.Title of List
* First element
* Second element
* Third element
-----
.Title of List
* First element
* Second element
* Third element
For example, block headers can be used to add file names/paths to file
content listings.
2016-01-05 09:32:41 +01:00
Copyright
---------
2016-01-05 16:47:42 +01:00
Copyright (C) 2016 Proxmox Server Solutions Gmbh
2016-01-05 09:32:41 +01:00
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
2016-01-05 16:21:17 +01:00
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
copy of the license is included in the link:LICENSE[LICENSE] file.