Pull request

-----BEGIN PGP SIGNATURE-----
 
 iQJQBAABCAA6FiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmCeWxgcHG1hcmNhbmRy
 ZS5sdXJlYXVAcmVkaGF0LmNvbQAKCRDa6OEJdZac5UK+EACC0TMP2wXKlUJm2xrH
 8Q4ToR5NHdKZAUo54RkIwrilHbXSLcCf6gsesz9Tya4LpY9MEb2522j2aUbeKz1c
 +/h9Gv0b4EMocOk/Yf5NsAotWkVmdN4SqFMPqe3UMkkzpavDnJw+ReEqqcd68iHh
 gKebuCUo1ri8pV42QIU4Bwbo2w157BtxL2uOLPK8vKmetv9yR4q7JxcKFXPQMcbn
 ifPTAiXTYDELqYzz/5baeDCEOWrq3ynsTS5Tm+qYif4UHeN7ibjlQ2bzfWWMM4/c
 opaYnQPaod+Cc0/y2ROoApPA9ETl085ciUh/HSX3Pqtaqwuzbj8ZJ7SMCjBEGq9g
 +V0oeiDXNIVZ3Q5yyr25epBOUB2ScQRnylCrwb3gIXhcZdX7zbswrWLQ9csXJhh8
 P+Y1P0TqyJZg9i5Osni7EaUaci/icPAvDTdTiIkVC1nRcRZ3ryC5EaCwOV1bIywI
 yDgBlloIMfL4x6gCh/dFA16xnDZIkXNZhAtKb781REmaMnHRt7uq0d3spq0aZBrc
 Pkukb+kNpEE98pGy2Gy11LDw9HePEoyFSwgP/QyfYbX4a9yvipJeWyJeF3yfhLcB
 BbpbUUnlxWWed2THfMCjhpcamuMZKsxmulNqSm7TuAM2etZettzq0d/mAFvIn1Ir
 V4DNS3PxD3oG4486WnlePCLw0Q==
 =9M1G
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/marcandre/tags/rtd-pull-request' into staging

Pull request

# gpg: Signature made Fri 14 May 2021 12:12:24 BST
# gpg:                using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg:                issuer "marcandre.lureau@redhat.com"
# gpg: Good signature from "Marc-André Lureau <marcandre.lureau@redhat.com>" [full]
# gpg:                 aka "Marc-André Lureau <marcandre.lureau@gmail.com>" [full]
# Primary key fingerprint: 87A9 BD93 3F87 C606 D276  F62D DAE8 E109 7596 9CE5

* remotes/marcandre/tags/rtd-pull-request:
  sphinx: adopt kernel readthedoc theme

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
master
Peter Maydell 2021-05-14 17:20:07 +01:00
commit 6d34aa9969
16 changed files with 200 additions and 59 deletions

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -29,6 +29,7 @@
import os
import sys
import sphinx
from distutils.version import LooseVersion
from sphinx.errors import ConfigError
# Make Sphinx fail cleanly if using an old Python, rather than obscurely
@ -150,38 +151,47 @@ with open(os.path.join(qemu_docdir, 'defs.rst.inc')) as f:
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
try:
import sphinx_rtd_theme
except ImportError:
raise ConfigError(
'The Sphinx \'sphinx_rtd_theme\' HTML theme was not found.\n'
)
html_theme = 'sphinx_rtd_theme'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
# We initialize this to empty here, so the per-manual conf.py can just
# add individual key/value entries.
html_theme_options = {
}
if LooseVersion(sphinx_rtd_theme.__version__) >= LooseVersion("0.4.3"):
html_theme_options = {
"style_nav_header_background": "#802400",
}
html_logo = os.path.join(qemu_docdir, "../ui/icons/qemu_128x128.png")
html_favicon = os.path.join(qemu_docdir, "../ui/icons/qemu_32x32.png")
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# QEMU doesn't yet have any static files, so comment this out so we don't
# get a warning about a missing directory.
# If we do ever add this then it would probably be better to call the
# subdirectory sphinx_static, as the Linux kernel does.
# html_static_path = ['_static']
html_static_path = [os.path.join(qemu_docdir, "sphinx-static")]
html_css_files = [
'theme_overrides.css',
]
html_context = {
"display_gitlab": True,
"gitlab_user": "qemu-project",
"gitlab_repo": "qemu",
"gitlab_version": "master",
"conf_py_path": "/docs/", # Path in the checkout to the docs root
}
# Custom sidebar templates, must be a dictionary that maps document names
# to template names.
#
# This is required for the alabaster theme
# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars
html_sidebars = {
'**': [
'about.html',
'editpage.html',
'navigation.html',
'searchbox.html',
]
}
#html_sidebars = {}
# Don't copy the rST source files to the HTML output directory,
# and don't put links to the sources into the output HTML.

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/devel/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/interop/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -27,10 +27,9 @@ if sphinx_build.found()
build_docs = (sphinx_build_test_out.returncode() == 0)
if not build_docs
warning('@0@ is either too old or uses too old a Python version'
.format(sphinx_build.full_path()))
warning('@0@: @1@'.format(sphinx_build.full_path(), sphinx_build_test_out.stderr()))
if get_option('docs').enabled()
error('Install a Python 3 version of python-sphinx')
error('Install a Python 3 version of python-sphinx and the readthedoc theme')
endif
endif
endif

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/specs/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -0,0 +1,161 @@
/* -*- coding: utf-8; mode: css -*-
*
* Sphinx HTML theme customization: read the doc
* Based on Linux Documentation/sphinx-static/theme_overrides.css
*/
/* Improve contrast and increase size for easier reading. */
body {
font-family: serif;
color: black;
font-size: 100%;
}
h1, h2, .rst-content .toctree-wrapper p.caption, h3, h4, h5, h6, legend {
font-family: sans-serif;
}
.rst-content dl:not(.docutils) dt {
border-top: none;
border-left: solid 3px #ccc;
background-color: #f0f0f0;
color: black;
}
.wy-nav-top {
background: #802400;
}
.wy-side-nav-search input[type="text"] {
border-color: #f60;
}
.wy-menu-vertical p.caption {
color: white;
}
.wy-menu-vertical li.current a {
color: #505050;
}
.wy-menu-vertical li.on a, .wy-menu-vertical li.current > a {
color: #303030;
}
.fa-gitlab {
box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2), 0 3px 10px 0 rgba(0,0,0,0.19);
border-radius: 5px;
}
div[class^="highlight"] pre {
font-family: monospace;
color: black;
font-size: 100%;
}
.wy-menu-vertical {
font-family: sans-serif;
}
.c {
font-style: normal;
}
p {
font-size: 100%;
}
/* Interim: Code-blocks with line nos - lines and line numbers don't line up.
* see: https://github.com/rtfd/sphinx_rtd_theme/issues/419
*/
div[class^="highlight"] pre {
line-height: normal;
}
.rst-content .highlight > pre {
line-height: normal;
}
/* Keep fields from being strangely far apart due to inheirited table CSS. */
.rst-content table.field-list th.field-name {
padding-top: 1px;
padding-bottom: 1px;
}
.rst-content table.field-list td.field-body {
padding-top: 1px;
padding-bottom: 1px;
}
@media screen {
/* content column
*
* RTD theme's default is 800px as max width for the content, but we have
* tables with tons of columns, which need the full width of the view-port.
*/
.wy-nav-content{max-width: none; }
/* table:
*
* - Sequences of whitespace should collapse into a single whitespace.
* - make the overflow auto (scrollbar if needed)
* - align caption "left" ("center" is unsuitable on vast tables)
*/
.wy-table-responsive table td { white-space: normal; }
.wy-table-responsive { overflow: auto; }
.rst-content table.docutils caption { text-align: left; font-size: 100%; }
/* captions:
*
* - captions should have 100% (not 85%) font size
* - hide the permalink symbol as long as link is not hovered
*/
.toc-title {
font-size: 150%;
font-weight: bold;
}
caption, .wy-table caption, .rst-content table.field-list caption {
font-size: 100%;
}
caption a.headerlink { opacity: 0; }
caption a.headerlink:hover { opacity: 1; }
/* Menu selection and keystrokes */
span.menuselection {
color: blue;
font-family: "Courier New", Courier, monospace
}
code.kbd, code.kbd span {
color: white;
background-color: darkblue;
font-weight: bold;
font-family: "Courier New", Courier, monospace
}
/* fix bottom margin of lists items */
.rst-content .section ul li:last-child, .rst-content .section ul li p:last-child {
margin-bottom: 12px;
}
/* inline literal: drop the borderbox, padding and red color */
code, .rst-content tt, .rst-content code {
color: inherit;
border: none;
padding: unset;
background: inherit;
font-size: 85%;
}
.rst-content tt.literal,.rst-content tt.literal,.rst-content code.literal {
color: inherit;
}
}

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/system/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/tools/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -1,5 +0,0 @@
<div id="editpage">
<ul>
<li><a href="https://gitlab.com/qemu-project/qemu/-/blob/master/docs/user/{{pagename}}.rst">Page source</a></li>
</ul>
</div>

View File

@ -39,6 +39,7 @@ ENV PACKAGES \
pulseaudio-dev \
python3 \
py3-sphinx \
py3-sphinx_rtd_theme \
shadow \
snappy-dev \
spice-dev \

View File

@ -32,6 +32,7 @@ RUN apt update && \
psmisc \
python3 \
python3-sphinx \
python3-sphinx-rtd-theme \
$(apt-get -s build-dep --arch-only qemu | egrep ^Inst | fgrep '[all]' | cut -d\ -f2)
ENV FEATURES docs

View File

@ -92,6 +92,7 @@ ENV PACKAGES \
python3-pillow \
python3-pip \
python3-sphinx \
python3-sphinx_rtd_theme \
python3-virtualenv \
rdma-core-devel \
SDL2-devel \

View File

@ -63,6 +63,7 @@ ENV PACKAGES \
ninja-build \
python3-yaml \
python3-sphinx \
python3-sphinx-rtd-theme \
sparse \
xfslibs-dev
RUN apt-get update && \

View File

@ -48,6 +48,7 @@ ENV PACKAGES \
make \
python3-yaml \
python3-sphinx \
python3-sphinx-rtd-theme \
ninja-build \
sparse \
xfslibs-dev

View File

@ -58,6 +58,7 @@ ENV PACKAGES flex bison \
python3-pil \
python3-pip \
python3-sphinx \
python3-sphinx-rtd-theme \
python3-venv \
python3-yaml \
rpm2cpio \