[elbe-devel] [PATCH 8/9] treewide: clean up remnants of old documentation generation

Thomas Weißschuh thomas.weissschuh at linutronix.de
Mon Apr 8 15:08:43 CEST 2024


The following components are dropped:

* elbe xsdtoasciidoc
* various dependencies
* asciidoc doc files
* gitignore files

Signed-off-by: Thomas Weißschuh <thomas.weissschuh at linutronix.de>
---
 .gitignore                         |   6 -
 bash-completion                    |   7 +-
 debian/control                     |   4 -
 debian/python3-elbe-bin.install    |   2 -
 docs/Makefile                      | 130 -----
 docs/asciidoc.conf                 |  97 ----
 docs/elbe-add.txt                  |  39 --
 docs/elbe-buildchroot.txt          |  98 ----
 docs/elbe-buildsdk.txt             |  39 --
 docs/elbe-buildsysroot.txt         |  65 ---
 docs/elbe-check_updates.txt        |  69 ---
 docs/elbe-chg_archive.txt          |  63 ---
 docs/elbe-chroot.txt               |  82 ----
 docs/elbe-control.txt              | 280 -----------
 docs/elbe-daemon.txt               |  38 --
 docs/elbe-db.txt                   | 133 -----
 docs/elbe-debianize.txt            |  70 ---
 docs/elbe-diff.txt                 |  37 --
 docs/elbe-fetch_initvm_pkgs.txt    |  75 ---
 docs/elbe-gen_update.txt           |  74 ---
 docs/elbe-genlicence.txt           |  61 ---
 docs/elbe-get_archive.txt          |  46 --
 docs/elbe-hdimg.txt                |  63 ---
 docs/elbe-init.txt                 |  85 ----
 docs/elbe-initvm.txt               | 168 -------
 docs/elbe-mkcdrom.txt              |  92 ----
 docs/elbe-parselicence.txt         | 349 --------------
 docs/elbe-pbuilder.txt             | 153 ------
 docs/elbe-pkgdiff.txt              |  40 --
 docs/elbe-preprocess.txt           |  43 --
 docs/elbe-prjrepo.txt              |  79 ---
 docs/elbe-remove_sign.txt          |  44 --
 docs/elbe-repodir.txt              |  73 ---
 docs/elbe-setsel.txt               |  57 ---
 docs/elbe-show.txt                 |  48 --
 docs/elbe-sign.txt                 |  51 --
 docs/elbe-toolchainextract.txt     |  90 ----
 docs/elbe-updated.txt              |  74 ---
 docs/elbe-validate.txt             |  42 --
 docs/elbe-xsdtoasciidoc.rst        |  57 ---
 docs/elbe-xsdtoasciidoc.txt        |  49 --
 docs/elbe.rst                      |   4 -
 docs/elbe.txt                      | 108 -----
 docs/elbeoverview-en.txt           | 965 -------------------------------------
 docs/manpage-1.72.xsl              |  14 -
 docs/manpage-base-url.xsl.in       |  10 -
 docs/manpage-base.xsl              |  35 --
 docs/manpage-normal.xsl            |  13 -
 docs/quickstart.txt                | 504 -------------------
 elbepack/commands/xsdtoasciidoc.py |  39 --
 elbepack/xsdtoasciidoc.mako        | 175 -------
 setup.py                           |   1 -
 52 files changed, 1 insertion(+), 5039 deletions(-)

diff --git a/.gitignore b/.gitignore
index f1f0bed2555e..27efdf75573b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -24,12 +24,6 @@ debian/debhelper-build-stamp
 *.pyc
 build
 docs/_build
-docs/*.1
-docs/*.html
-docs/*.png
-docs/*.xml
-docs/manpage-base-url.xsl
-docs/elbe-schema-reference.txt
 debian/.control.swp
 debian/elbe.debhelper.log
 debian/elbe
diff --git a/bash-completion b/bash-completion
index d010e4ccec8f..5de50c81d69a 100644
--- a/bash-completion
+++ b/bash-completion
@@ -16,7 +16,7 @@ _elbe_commands()
         # list (as of Nov 2022)
         echo 'add check_updates chg_archive control diff get_archive
               init initvm parselicence pbuilder pin_versions pkgdiff preprocess
-              prjrepo remove_sign repodir setsel show sign validate xsdtoasciidoc'
+              prjrepo remove_sign repodir setsel show sign validate'
     fi
 }
 
@@ -166,11 +166,6 @@ _cmd_args_completion_elbe()
                 file_arg=true
                 cmd_opt=$(_elbe_cmd_with_options '-h --help --verbose --skip-validation')
                 ;;
-            xsdtoasciidoc)
-                file_arg=true
-                disable_space=true
-                cmd_opt=$(_elbe_cmd_with_options '-h --help --output=')
-                ;;
             *)
                 ;;
         esac
diff --git a/debian/control b/debian/control
index 86c815226b93..5ffaba1da6bf 100644
--- a/debian/control
+++ b/debian/control
@@ -10,13 +10,9 @@ Build-Depends: debhelper-compat (= 12),
   python3-lxml,
   python3-mako,
   python3-parted,
-  asciidoc,
-  xmlto,
   lintian,
-  source-highlight,
   git,
   xml-core,
-  pandoc,
   python3-beaker,
   python3-cherrypy3,
   python3-debian,
diff --git a/debian/python3-elbe-bin.install b/debian/python3-elbe-bin.install
index 6c6f640558b5..22619510bd1f 100644
--- a/debian/python3-elbe-bin.install
+++ b/debian/python3-elbe-bin.install
@@ -17,5 +17,3 @@
 ./usr/lib/python3.*/*-packages/elbepack/commands/show.py
 ./usr/lib/python3.*/*-packages/elbepack/commands/sign.py
 ./usr/lib/python3.*/*-packages/elbepack/commands/validate.py
-./usr/lib/python3.*/*-packages/elbepack/commands/xsdtoasciidoc.py
-./usr/lib/python3.*/*-packages/elbepack/xsdtoasciidoc.mako
diff --git a/docs/Makefile b/docs/Makefile
index e65c9eb47e41..2a1044325434 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -2,63 +2,18 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 # SPDX-FileCopyrightText: 2013-2015, 2017-2018 Linutronix GmbH
 
-ELBE_VERSION=$(`../elbe --version | awk '{ print $2 }'`)
-
-MAN1_TXT= \
-	$(filter-out $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \
-		$(wildcard elbe-*.txt)) \
-	elbe.txt
-MAN5_TXT=
-MAN7_TXT=
-
-MAN_TXT = $(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT)
-MAN_XML=$(patsubst %.txt,%.xml,$(MAN_TXT))
-MAN_HTML=$(patsubst %.txt,%.html,$(MAN_TXT))
-
-DOC_HTML=$(MAN_HTML)
-
-SP_ARTICLES= elbeoverview-en quickstart elbe-schema-reference
-
-DOC_HTML+=$(patsubst %,%.html,$(SP_ARTICLES))
-
-DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
-DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
-DOC_MAN7=$(warning $(DOC_HTML)) $(patsubst %.txt,%.7,$(MAN7_TXT))
-
 prefix?=$(HOME)
-bindir?=$(prefix)/bin
 htmldir?=$(prefix)/share/doc/elbe
-pdfdir?=$(prefix)/share/doc/elbe
 mandir?=$(prefix)/share/man
 man1dir=$(mandir)/man1
-man5dir=$(mandir)/man5
-man7dir=$(mandir)/man7
 
 sphinxbuilddir?=_build
 
-MAN_BASE_URL = file://$(htmldir)/
-
-ASCIIDOC=asciidoc
-ASCIIDOC_EXTRA =
-MANPAGE_XSL = manpage-normal.xsl
-XMLTO_EXTRA =
 INSTALL?=install
 RM ?= rm -f
 CP ?= cp
 
-DOCBOOK_XSL_172=1
-
-ifdef DOCBOOK_XSL_172
-ASCIIDOC_EXTRA += -a git-asciidoc-no-roff -a max-width=55em -a icons -a images
-MANPAGE_XSL = manpage-1.72.xsl
-else
-ASCIIDOC_EXTRA += -a git-asciidoc-no-roff -a data-uri -a max-width=55em -a data-uri 
-endif
-
-ASCIIDOC_DATA_URI = -a data-uri -a iconsdir=/usr/share/asciidoc/icons
-
 all: sphinx
-html: $(DOC_HTML)
 
 sphinx:
 	sphinx-build -b man  . $(sphinxbuilddir)/man
@@ -73,90 +28,5 @@ install-sphinx: sphinx
 
 install: install-sphinx
 
-install-man: man
-	$(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
-	$(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(man1dir)
-
-install-html:
-	$(INSTALL) -d -m 755 $(DESTDIR)$(htmldir)
-	$(INSTALL) -m 644 $(DOC_HTML) $(DESTDIR)$(htmldir)
-
-$(DOC_HTML) $(DOC_MAN1) $(DOC_MAN5) $(DOC_MAN7): asciidoc.conf
-
-man: man1 man5 man7
-man1: $(DOC_MAN1)
-man5: $(DOC_MAN5)
-man7: $(DOC_MAN7)
-
-
 clean:
 	$(RM) -r $(sphinxbuilddir)
-	$(RM) article*.rst elbe*.rst *.xml *.xml+ *.html *.html+ *.1 *.5 *.7
-	$(RM) *.texi *.texi+ *.texi++ git.info gitman.info
-	$(RM) *.pdf
-	$(RM) howto-index.txt howto/*.html doc.dep
-	$(RM) technical/api-*.html technical/api-index.txt
-	$(RM) $(cmds_txt) *.made
-	$(RM) manpage-base-url.xsl
-	$(RM) elbe-schema-reference.txt
-
-$(MAN_HTML): %.html : %.txt
-	$(RM) $@+ $@ && \
-	$(ASCIIDOC) -b xhtml11 -d manpage -f asciidoc.conf \
-		$(ASCIIDOC_EXTRA) -agit_version=$(ELBE_VERSION) -o $@+ $< && \
-	mv $@+ $@
-
-manpage-base-url.xsl: manpage-base-url.xsl.in
-	sed "s|@@MAN_BASE_URL@@|$(MAN_BASE_URL)|" $< > $@
-
-%.1 %.5 %.7 : %.xml manpage-base-url.xsl
-	$(RM) $@ && \
-	xmlto -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
-
-%.xml : %.txt
-	$(RM) $@+ $@ && \
-	$(ASCIIDOC) -d article -b docbook -agit_version=$(ELBE_VERSION) -o $@ $< && \
-	pandoc -r docbook -w rst -o $*.rst $@
-	sed -i "1s/^/************************\n\n/" $*.rst
-	sed -i "1s/^/$*\n/" $*.rst
-	sed -i "1s/^/************************\n/" $*.rst
-	$(ASCIIDOC) -b docbook -d manpage -f asciidoc.conf \
-		$(ASCIIDOC_EXTRA) -agit_version=$(ELBE_VERSION) -o $@+ $< && \
-	mv $@+ $@
-
-elbeoverview-en.html : elbeoverview-en.txt
-	$(ASCIIDOC) -d article -b docbook -agit_version=$(ELBE_VERSION) -o elbeoverview-en.xml $< && \
-	pandoc -r docbook -w rst -o article-elbeoverview-en.rst elbeoverview-en.xml
-	sed -i "1s/^/************************\n\n/" article-elbeoverview-en.rst
-	sed -i "1s/^/ELBE Overview\n/" article-elbeoverview-en.rst
-	sed -i "1s/^/************************\n/" article-elbeoverview-en.rst
-	$(ASCIIDOC) -a toc2 $(ASCIIDOC_EXTRA) $(ASCIIDOC_DATA_URI) -b xhtml11 elbeoverview-en.txt
-
-quickstart.html : quickstart.txt
-	$(ASCIIDOC) -d article -b docbook -agit_version=$(ELBE_VERSION) -o quickstart.xml $< && \
-	pandoc -r docbook -w rst -o article-quickstart.rst quickstart.xml
-	sed -i "1s/^/************************\n\n/" article-quickstart.rst
-	sed -i "1s/^/ELBE Quickstart\n/" article-quickstart.rst
-	sed -i "1s/^/************************\n/" article-quickstart.rst
-	$(ASCIIDOC) -a toc2 $(ASCIIDOC_EXTRA) $(ASCIIDOC_DATA_URI) -b xhtml11 quickstart.txt
-
-elbeoverview-en-ie.html: elbeoverview-en.txt
-	$(ASCIIDOC) -d article -b docbook -agit_version=$(ELBE_VERSION) -o $*.xml $< && \
-	pandoc -r docbook -w rst -o article-$*.rst $*.xml
-	sed -i "1s/^/************************\n\n/" $*.rst
-	sed -i "1s/^/$*\n/" $*.rst
-	sed -i "1s/^/************************\n/" $*.rst
-	$(ASCIIDOC) -b html5 -a icons -a toc2 -a theme=flask -o elbeoverview-en.html elbeoverview-en.txt
-
-elbe-schema-reference.txt: ../elbepack/schema/dbsfed.xsd ../elbepack/xsdtoasciidoc.mako
-	../elbe xsdtoasciidoc --output elbe-schema-reference.txt ../elbepack/schema/dbsfed.xsd
-	$(ASCIIDOC) -a toc2 $(ASCIIDOC_EXTRA) $(ASCIIDOC_DATA_URI) -b xhtml11 elbe-schema-reference.txt
-
-elbe-schema-reference.html: %.html : %.txt
-	$(ASCIIDOC) -d article -b docbook -agit_version=$(ELBE_VERSION) -o $*.xml $< && \
-	pandoc -r docbook -w rst -o article-$*.rst $*.xml
-	sed -i "1s/^/*************************\n\n/" article-$*.rst
-	sed -i "1s/^/ELBE XML Reference\n/" article-$*.rst
-	sed -i "1s/^/*************************\n/" article-$*.rst
-	sed -i "s/<#/<#type-/g" article-$*.rst
-	$(ASCIIDOC) -a toc $(ASCIIDOC_EXTRA) -b xhtml11 $*.txt
diff --git a/docs/asciidoc.conf b/docs/asciidoc.conf
deleted file mode 100644
index d4078b1e6a83..000000000000
--- a/docs/asciidoc.conf
+++ /dev/null
@@ -1,97 +0,0 @@
-## linkgit: macro
-# SPDX-License-Identifier: 0BSD
-# SPDX-FileCopyrightText: Linutronix GmbH
-#
-# Usage: linkgit:command[manpage-section]
-#
-# Note, {0} is the manpage section, while {target} is the command.
-#
-# Show GIT link as: <command>(<section>); if section is defined, else just show
-# the command.
-
-[macros]
-(?su)[\\]?(?P<name>linkgit):(?P<target>\S*?)\[(?P<attrlist>.*?)\]=
-
-[attributes]
-asterisk=*
-plus=+
-caret=^
-startsb=[
-endsb=]
-backslash=\
-tilde=~
-apostrophe='
-backtick=`
-litdd=--
-
-ifdef::backend-docbook[]
-[linkgit-inlinemacro]
-{0%{target}}
-{0#<citerefentry>}
-{0#<refentrytitle>{target}</refentrytitle><manvolnum>{0}</manvolnum>}
-{0#</citerefentry>}
-endif::backend-docbook[]
-
-ifdef::backend-docbook[]
-ifndef::git-asciidoc-no-roff[]
-# "unbreak" docbook-xsl v1.68 for manpages. v1.69 works with or without this.
-# v1.72 breaks with this because it replaces dots not in roff requests.
-[listingblock]
-<example><title>{title}</title>
-<literallayout>
-ifdef::doctype-manpage[]
-
.ft C

-endif::doctype-manpage[]
-|
-ifdef::doctype-manpage[]
-
.ft

-endif::doctype-manpage[]
-</literallayout>
-{title#}</example>
-endif::git-asciidoc-no-roff[]
-
-ifdef::git-asciidoc-no-roff[]
-ifdef::doctype-manpage[]
-# The following two small workarounds insert a simple paragraph after screen
-[listingblock]
-<example><title>{title}</title>
-<literallayout>
-|
-</literallayout><simpara></simpara>
-{title#}</example>
-
-[verseblock]
-<formalpara{id? id="{id}"}><title>{title}</title><para>
-{title%}<literallayout{id? id="{id}"}>
-{title#}<literallayout>
-|
-</literallayout>
-{title#}</para></formalpara>
-{title%}<simpara></simpara>
-endif::doctype-manpage[]
-endif::git-asciidoc-no-roff[]
-endif::backend-docbook[]
-
-ifdef::doctype-manpage[]
-ifdef::backend-docbook[]
-[header]
-template::[header-declarations]
-<refentry>
-<refmeta>
-<refentrytitle>{mantitle}</refentrytitle>
-<manvolnum>{manvolnum}</manvolnum>
-<refmiscinfo class="source">Elbe</refmiscinfo>
-<refmiscinfo class="version">{git_version}</refmiscinfo>
-<refmiscinfo class="manual">Elbe Manual</refmiscinfo>
-</refmeta>
-<refnamediv>
-  <refname>{manname}</refname>
-  <refpurpose>{manpurpose}</refpurpose>
-</refnamediv>
-endif::backend-docbook[]
-endif::doctype-manpage[]
-
-ifdef::backend-xhtml11[]
-[linkgit-inlinemacro]
-<a href="{target}.html">{target}{0?({0})}</a>
-endif::backend-xhtml11[]
diff --git a/docs/elbe-add.txt b/docs/elbe-add.txt
deleted file mode 100644
index f664c9d12c6a..000000000000
--- a/docs/elbe-add.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-add(1)
-===========
-
-NAME
-----
-elbe-add - Insert new package(s) into the target package list.
-
-SYNOPSIS
---------
-[verse]
-'elbe add' [options] <xmlfile> <package name> [<package name>]*
-
-
-DESCRIPTION
------------
-This command adds an entry to the target pkg-list of the given XML file. If
-more than one package name was given, all the packages are added to the list.
-If a package already exists in the list, the package isn't added twice.
-
-OPTIONS
--------
-<xmlfile>::
-	The xmlfile to be modified.
-
-EXAMPLES
---------
-
-* Add 'vim-nox' and 'mc' into 'mybsp.xml'
-+
-------------
-$ elbe add mybsp.xml vim-nox mc
-------------
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-buildchroot.txt b/docs/elbe-buildchroot.txt
deleted file mode 100644
index d41576224bfd..000000000000
--- a/docs/elbe-buildchroot.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-buildchroot(1)
-===================
-
-
-NAME
-----
-elbe-buildchroot - Build a root filesystem.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe buildchroot' [ OPTIONS ] <xmlfile>
-
-<xmlfile>::
-	The XML describing the Elbe project.
-
-
-DESCRIPTION
------------
-'elbe buildchroot' builds a root filesystem using the settings specified in the
-given XML file. This command has to be run as root *inside the Elbe build VM*.
-
-By default, also an ISO image for a binary CD-ROM will be generated, which will
-contain all packages installed into the root filesystem. It can also be used
-as an installation source. For details, please refer to
-linkgit:elbe-mkcdrom[1]. Optionally, a source CD-ROM image can be generated,
-too.
-
-
-OPTIONS
--------
-
--t, --target <targetdir>::
-	Target directory for the build. The directory must not exist before
-	calling this command. Defaults to './build'
-
--o, --output <logfile>::
-	Name of the file to write the build report to. If not specified, the report is written
-	to stdout.
-
--n, --name <projectname>::
-	Override the name of the project (used in the build report),
-
---build-bin::
-	Build Debian binary cdrom. All binaries used are built onto the cdrom.
-	And this iso image can later be used to reproduce the images.
-
---build-sources::
-	Build a Debian source CD-ROM image, containing the source packages used by the
-	project.
-
---debug::
-	Enables a few features that allow for better debugging of the build process.
-
---buildtype <buildtype>::
-	Override the build type specified in the XML file. (Not recommended)
-
---cdrom-size <N>
-	ISO Cdrom size, after which a new volume is generated.
-	
---skip-validation::
-	Skip the validation of the XML file. (Not recommended)
-
---skip-debootstrap::
-	Skip debootstrap.
-
---skip-pkglist::
-	Ignore changes to the pkglist, and don't rebuild the buildimage.
-        (Not recommended)
-
---skip-cdrom::
-	Obsolete option, from the time, before --build-bin and --build-sources existed.
-
-EXAMPLES
---------
-* Build a root filesystem from 'myarm.xml' in '/root/myarm'. Log to
-'myarm.txt'. Do not build any ISO-Images.
-+
---------
-# elbe buildchroot --output myarm.txt --target /root/myarm myarm.xml
---------
-
-* Build a root filesystem from 'myarm.xml' in '/root/myarm'. Log to
-'myarm.txt'. Also build source and binary ISO-Images.
-+
---------
-# elbe buildchroot --output myarm.txt --target /root/myarm \
-	--build-sources --build-bin myarm.xml
---------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-buildsdk.txt b/docs/elbe-buildsdk.txt
deleted file mode 100644
index 99d28dc33af5..000000000000
--- a/docs/elbe-buildsdk.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-buildsdk(1)
-================
-
-
-NAME
-----
-elbe-buildsdk - Build a yocto style sdk.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe buildsdk' <directory>
-
-<directory>::
-	directory containing the elbe project.
-
-
-DESCRIPTION
------------
-creates a yocto style SDK
-
-
-EXAMPLES
---------
-* Build a root filesystem from 'myarm.xml' in '/root/myarm'. Log to
-'myarm.txt'. Then create a SDK for this RFS.
-+
---------
-# elbe buildchroot --output myarm.txt --target /root/myarm myarm.xml
-# elbe buildsdk /root/myarm
---------
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-buildsysroot.txt b/docs/elbe-buildsysroot.txt
deleted file mode 100644
index 4926404211d5..000000000000
--- a/docs/elbe-buildsysroot.txt
+++ /dev/null
@@ -1,65 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-buildsysroot(1)
-====================
-
-
-NAME
-----
-elbe-buildsysroot - Build a sysroot archive.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe buildsysroot' \
-	[ --buildtype <type> ] \
-	[ --skip-validation ] \
-	<builddir>
-
-
-DESCRIPTION
------------
-'elbe buildsysroot' builds a sysroot tar archive from the given build
-directory (built with linkgit:elbe-buildchroot[1] before), containing the
-libraries and header files of the root filesystem. This can be used for
-cross-compiling. For example, if a Linaro 2014.02 toolchain is used,
-the archive can be unpacked into
-'gcc-linaro-arm-linux-gnueabihf-*/arm-linux-gnueabihf/libc'
-to set up a cross-toolchain for the given root filesystem.
-
-The archive will be created as 'sysroot.tar.xz' in the build directory.
-
-This command has to be run as root *inside the Elbe build VM*.
-
-Please note that the package 'symlinks' has to be included in the package
-list of the project for this to work, as well as the relevant development
-packages. The XML file of the project also needs a 'triplet' definition.
-
-
-OPTIONS
--------
-
---buildtype <buildtype>::
-	Override the build type specified in the XML file.
-
---skip-validation::
-	Skip the validation of the XML file. (Not recommended)
-
-<builddir>::
-	The build directory to generate the sysroot archive from.
-
-
-EXAMPLES
---------
-* Build a sysroot archive from the project located at '/root/myarm'
-+
---------
-# elbe buildsysroot /root/myarm
---------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-check_updates.txt b/docs/elbe-check_updates.txt
deleted file mode 100644
index 76f9077ed962..000000000000
--- a/docs/elbe-check_updates.txt
+++ /dev/null
@@ -1,69 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-check_updates(1)
-=====================
-
-NAME
-----
-elbe-check_updates - Check whether package updates are available for an Elbe project.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe check_updates' \
-	[ --script <script> ] \
-	[ --skip-validation ] \
-	<source-xmlfile>
-
-DESCRIPTION
------------
-'elbe check_updates' checks if package updates are available for a given Elbe
-project. The command will also detect package names that are specified in the
-package list of the project but missing in the package repositories.
-
-Optionally the command can run a script if some packages are missing or have
-updates available. If at least one package is missing, the script will be
-invoked with the following command line:
-[verse]
-<script> ERRORS <source-xmlfile>
-
-Otherwise, if at least one package can be updated, the script will be started
-like this:
-[verse]
-<script> UPDATE <source-xmlfile>
-
-If none of the above is true, the script will not be started.
-
-
-OPTIONS
--------
-
---script <script>::
-	File name of a script to run, if an update is required or packages
-	are missing.
-
---skip-validation::
-	Skip the validation of the XML file. (Not recommended)
-
-<source-xmlfile>::
-	Path to the 'source.xml' file of the project.
-
-
-EXAMPLES
---------
-
-* Check the project in '/scratch/example' for available updates and missing
-  packages. Run the script '/scratch/fixpackages.sh', if necessary.
-+
-------------
-$ elbe check_updates --script /scratch/fixpackages.sh \
-	/scratch/example/source.xml
-------------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-chg_archive.txt b/docs/elbe-chg_archive.txt
deleted file mode 100644
index ffbb0dd173de..000000000000
--- a/docs/elbe-chg_archive.txt
+++ /dev/null
@@ -1,63 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-chg_archive(1)
-===================
-
-NAME
-----
-elbe-chg_archive - Insert a new config archive (.tbz) into a XML file.
-
-SYNOPSIS
---------
-[verse]
-'elbe chg_archive' [options] <xmlfile> [<archive.tar.bz2> | <directory>]
-
-
-DESCRIPTION
------------
-This command exchanges the archive file inside the xml file with the one specified.
-
-The archive tbz is used to insert configuration files into the root-filesystem.
-
-OPTIONS
--------
---keep-attributes::
-	This is only parsed, if the specified input is a <directory>. If specified
-	the local owners and groups will be stored inside the archive. If not all
-	files and directories will belong to user root and group root.
-
-<xmlfile>::
-	The xmlfile to be modified.
-
-<archive.tar.bz2>::
-	The archive which must be a tar.bz2.
-	The archive is uuencoded and swapped with the archive in the xml file.
-	If no archive exists, the archive xmlnode will be created.
-
-<directory>::
-	A local directory that will be used as archive. The content of the directory
-	will be archived in a tar.bz2 format and then stored uuencoded in the
-	<archive> tag of the specified <xmlfile>.
-
-EXAMPLES
---------
-
-* Insert 'myarch.tar.bz2' into 'mybsp.xml'
-+
-------------
-$ elbe chg_archive mybsp.xml myarch.tar.bz2
-------------
-
-* Insert 'my-rfs-overlay' into 'mybsp.xml'
-+
-------------
-$ mkdir -p my-rfs-overlay/etc
-$ echo 'my-very-special-config' > my-rfs-overlay/etc/my.cfg
-$ elbe chg_archive mybsp.xml my-rfs-overlay
-------------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-chroot.txt b/docs/elbe-chroot.txt
deleted file mode 100644
index 74f6682f4555..000000000000
--- a/docs/elbe-chroot.txt
+++ /dev/null
@@ -1,82 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-chroot(1)
-==============
-
-
-NAME
-----
-elbe-chroot - Enter an Elbe root filesystem using chroot.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe chroot' [--skip-validation] [--buildtype=TYPE] [--target] <builddir> \
-	["command"]
-
-
-DESCRIPTION
------------
-Enters buildenv of a previously built Elbe root filesystem using chroot.
-The command has to be run as root *inside the Elbe build VM* (created with
-linkgit:elbe-init[1]).
-
-
-OPTIONS
--------
-
---skip-validation::
-	Do not validate the source.xml file in <builddir> against the
-	XML schema. (Not recommended.)
-
---buildtype=TYPE::
-	Override the buildtype specified in the source.xml file.
-
---target::
-	chroot into target rfs instead of buildenv
-
-<builddir>::
-	The build directory of the root filesystem to work with.
-
-
-EXAMPLES
---------
-
-* Work with the root filesystem built in '/root/testrfs_arm'
-+
-------------
-# elbe chroot /root/testrfs_arm "ls -lh /"
-work on existing rfs
-running cmd +chroot /root/testrfs_arm/chroot debconf-set-selections < /root/testrfs_arm/chroot/var/cache/elbe/preseed.txt+
-total 64K
--rw-r--r--  1 root root    0 Jun  3 09:31 aptcache.log
-drwxr-xr-x  2 root root 4.0K Jun  3 09:28 bin
-drwxr-xr-x  2 root root 4.0K Jun  3 09:29 boot
-drwxr-xr-x 13 root root 3.0K Jun 23 12:38 dev
-drwxr-xr-x 51 root root 4.0K Jun  3 12:10 etc
-drwxr-xr-x  2 root root 4.0K Apr 20 03:33 home
-drwxr-xr-x 11 root root 4.0K Jun  3 09:26 lib
-drwxr-xr-x  2 root root 4.0K Jun  3 09:23 media
-drwxr-xr-x  2 root root 4.0K Apr 20 03:33 mnt
-drwxr-xr-x  2 root root 4.0K Jun  3 09:23 opt
-dr-xr-xr-x 69 root root    0 Jun 23 12:38 proc
-drwx------  2 root root 4.0K Jun  3 12:10 root
-drwxr-xr-x  6 root root 4.0K Jun  3 09:27 run
-drwxr-xr-x  2 root root 4.0K Jun  3 09:28 sbin
-drwxr-xr-x  2 root root 4.0K Jun 10  2012 selinux
-drwxr-xr-x  2 root root 4.0K Jun  3 09:23 srv
-drwxr-xr-x 13 root root    0 Jun 23 12:38 sys
-drwxrwxrwt  2 root root 4.0K Jun  3 09:28 tmp
-drwxr-xr-x 10 root root 4.0K Jun  3 09:23 usr
-drwxr-xr-x 11 root root 4.0K Jun  3 09:23 var
-
-# elbe chroot /root/testrfs_arm
-(chroot) #
-------------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-control.txt b/docs/elbe-control.txt
deleted file mode 100644
index 5afb51a5ce73..000000000000
--- a/docs/elbe-control.txt
+++ /dev/null
@@ -1,280 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-control(1)
-===============
-
-NAME
-----
-elbe-control - Low level interface to elbe Soap Daemon running in initvm
-
-
-SYNOPSIS
---------
-[verse]
-'elbe control' [options] 'list_projects'
-'elbe control' [options] 'create_project'
-'elbe control' [options] 'build_sysroot' <build-dir>
-'elbe control' [options] 'build_cdroms' <build-dir>
-'elbe control' [options] 'set_pdebuild' <project-dir> <pdebuild file>
-'elbe control' [options] 'get_files' <build-dir>
-'elbe control' [options] 'build_chroot_tarball' <build-dir>
-'elbe control' [options] 'build_sdk' <build-dir>
-'elbe control' [options] 'set_orig' <build-dir>
-'elbe control' [options] 'set_cdrom' <build-dir> <iso-img>
-'elbe control' [options] 'reset_project' <build-dir>
-'elbe control' [options] 'list_users'
-'elbe control' [options] 'wait_busy' <build-dir>
-'elbe control' [options] 'set_xml' <build-dir> <xmlfile>
-'elbe control' [options] 'del_project' <build-dir>
-'elbe control' [options] 'build_pbuilder' <build-dir>
-'elbe control' [options] 'build' <build-dir>
-'elbe control' [options] 'rm_log' <build-dir>
-'elbe control' [options] 'get_file' <build-dir> <filename>
-'elbe control' [options] 'dump_file' <build-dir> <filename>
-'elbe control' [options] 'shutdown_initvm'
-'elbe control' [options] 'install_elbe_version' <version>
-
-DESCRIPTION
------------
-
-Low Level interface to
-control an elbe daemon running inside an initvm.
-It allows one to submit xml files etc.
-
-For the high level interface, see 'elbe initvm'
-
-Please take notice, that a single user can only have a single project
-opened inside the soap server. So it is not possible to have a single user
-build 2 projects at once.
-
-You can only wait on the project, that you are currently building.
-
-OPTIONS
--------
-
---host <hostname>::
-	ip or hostname of the elbe-deamon (defaults to localhost, which
- 	is the default, where an initvm would be listening).
-
---port <N>::
-	Port of the soap interface on the elbe-daemon.
-
---user <username>::
-	Username to use for login (defaults to root).
-
---pass <password>::
-	Password for login (defaults to 'foo').
-
---retries <N>:: How many times to retry the connection to the server before
-	giving up (default is 10 times, yielding 10 seconds).
-
---build-bin::
-	Build binary repository CDROM, for exact reproduction.
-
---build-sources::
-	Build source CDROM.
-
---output <directory>::
-	Output downloaded files to <directory>.
-
---pbuilder-only::
-	Only list/download pbuilder files.
-
---profile::
-	Specify pbuilder profile(s) to build. Provide multiple profiles as a comma separated list.
-
-COMMANDS
---------
-
-'list_projects'::
-
-List projects available on the elbe daemon.
-
-'create_project'::
-
-Create a new project on soap server.
-a new build-dir is created.
-+
-The name of the created <build-dir> is printed to stdout, for further
-reference in subsequent commands.
-
-
-'build_sysroot' <build-dir>::
-
-Build a sysroot for the specified project.
-
-The sysroot can be used with a toolchain for cross-compiles.
-
-
-'build_cdroms' <build-dir>::
-
-Build ISO images containing the Debian binary or source packages used by the
-given build-dir. Either --build-bin or --build-sources or both needs to be
-specified.
-
-
-'set_pdebuild' <build-dir> <pdebuild file>
-
-Build a Debian Project using a pbuilder.
-
-The pdebuild file needs to be a .tar.gz archive of a project
-containing a ./debian folder with a valid debianization.
-+
-The generated debian packages are stored inside the initvm.
-+
-Use get_files to retrieve them.
-
-
-'get_files' <build-dir>::
-
-Get list of files in the <build-dir>.
-+
-If the --output option is specified, the files are downloaded to
-the directory specified in the option. If the --matches option is
-specified only files matching the wildcard expression are shown/downloaded.
-Note that you have to put the wildcard expression in quotation marks.
-
-
-'build_chroot_tarball' <build-dir>::
-
-Creates a tarball of the chroot environment in <build_dir>.
-
-
-'build_sdk' <build-dir>::
-
-Creates a yocto-style SDK.
-
-
-'set_orig' <build-dir> <orig-file>::
-
-Uploads a quilt orig-file to the initvm.
-+
-This command shall be run before building a Debian package with `elbe pbuilder
-build` if the package is given in the quilt source format.
-
-
-'set_cdrom' <build-dir> <iso-img>::
-
-Set the cdrom iso image. The <iso-img> is uploaded into the intivm.
-And the source.xml in the <build-dir> is modified, that it builds from
-the cdrom mirror now.
-
-
-'reset_project' <build-dir>::
-
-Reset project database status for <build-dir>.
-+
-When the database becomes inconsistent, this allows us to
-access an otherwise blocked project again.
-+
-Use with care.
-
-
-'list_users'::
-
-List configured users. Only admins may use this command.
-
-
-'add_user' <name> <fullname> <password> <email>::
-
-Create a user inside the initvm. The user is not an Admin user.
-When the user already exists, nothing is done. Only admins may use this command.
-
-
-'wait_busy' <build-dir>::
-
-Wait, while <build-dir> is busy.
-
-
-'set_xml' <build-dir> <xmlfile>::
-
-Upload a new xml File into the given <build-dir>.
-This is most likely going to change the status of the project to
-'needs_rebuild'.
-
-
-'del_project' <build-dir>::
-
-Delete project in <build-dir>
-
-
-'build_pbuilder' <build-dir>::
-
-Build a pbuilder environment for the given project <build-dir>.
-
-
-'build' <build-dir>::
-
-Trigger building the project.
-Status will change to busy.
-
-
-'rm_log' <build-dir>::
-
-Deletes log file for the given project <build-dir>
-
-
-'get_file' <build-dir> <filename>::
-
-Download a single file from the project.
-
-
-'dump_file' <build-dir> <filename>::
-
-Dump a single File from the project to stdout.
-
-
-'shutdown_initvm'::
-
-Make the initvm shutdown.
-
-
-'install_elbe_version' [version]::
-
-Make the initvm install a specific elbe version.
-Defaults to the version of the elbe executable.
-This requires, that the initvm has package sources
-configured properly.
-
-
-Examples
---------
-
-* List current Projects
-+
-------------
-$ elbe control list_projects
-/var/cache/elbe/982d64de-e69f-48c7-8942-66d8d480f3dc    rescue image    1.0     build_done      2015-06-08 15:29:29.613620
-/var/cache/elbe/dd37a03e-31bd-45db-afd4-fc51d51fa90a    rescue image    1.0     build_done      2015-06-09 08:53:26.658500
-/var/cache/elbe/8d62928f-4e75-47cf-aec9-d2365ca59003    rescue image    1.0     build_done      2015-06-09 09:14:15.371456
-------------
-
-* Create a new Project, trigger build, and wait till it finishes.
-+
-------------
-$ elbe control create_project examples/rescue.xml
-/var/cache/elbe/f310dcbc-f5fc-423e-99e4-fb72d7b9dd5f
-$ elbe control build /var/cache/elbe/f310dcbc-f5fc-423e-99e4-fb72d7b9dd5f
-$ elbe control wait_busy /var/cache/elbe/f310dcbc-f5fc-423e-99e4-fb72d7b9dd5f
-project still busy, waiting
-project still busy, waiting
-...
-project still busy, waiting
-$ elbe control get_files /var/cache/elbe/f310dcbc-f5fc-423e-99e4-fb72d7b9dd5f
-source.xml      (Current source.xml of the project)
-rescue.cpio     (Image)
-validation.txt  (Package list validation result)
-elbe-report.txt         (Report)
-log.txt         (Log file)
-------------
-
-
-SEE ALSO
---------
-linkgit:elbe-initvm[1]
-linkgit:git-daemon[1]
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-daemon.txt b/docs/elbe-daemon.txt
deleted file mode 100644
index 0c02eb3829a9..000000000000
--- a/docs/elbe-daemon.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-daemon(1)
-==============
-
-NAME
-----
-elbe-daemon - control the ELBE daemon.
-
-SYNOPSIS
---------
-[verse]
-'elbe daemon' [options]
-
-
-DESCRIPTION
------------
-This command controls the ELBE daemon and is run inside the inivm.
-
-
-OPTIONS
--------
---host <hostname>::
-	ip or hostname of the elbe-deamon (defaults to localhost, which
- 	is the default, where an initvm would be listening).
-
---port <N>::
-	Port of the soap interface on the elbe-daemon.
-
---<daemon>::
-	Enable <daemon>.
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-db.txt b/docs/elbe-db.txt
deleted file mode 100644
index 48770047e0de..000000000000
--- a/docs/elbe-db.txt
+++ /dev/null
@@ -1,133 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-db(1)
-==========
-
-NAME
-----
-elbe-db - interface to the ELBE db. Must be run inside the initvm.
-
-SYNOPSIS
---------
-[verse]
-'elbe db' [options] 'list_projects'
-'elbe db' [options] 'create_project' <project_dir>
-'elbe db' [options] 'get_files' <project_dir>
-'elbe db' [options] 'reset_project' <project_dir>
-'elbe db' [options] 'list_users'
-'elbe db' [options] 'save_version' <project_dir>
-'elbe db' [options] 'set_xml' <project_dir> <xml_file>
-'elbe db' [options] 'del_project' <project_dir>
-'elbe db' [options] 'print_version_xml' <project_dir> <version>
-'elbe db' [options] 'init'
-'elbe db' [options] 'del_user' <userid>
-'elbe db' [options] 'set_project_version' <project_dir> <version>
-'elbe db' [options] 'add_user' <username>
-'elbe db' [options] 'list_versions' <project_dir>
-'elbe db' [options] 'del_versions' <project_dir> <version>
-'elbe db' [options] 'build' <project_dir>
-
-
-DESCRIPTION
------------
-This command controls the ELBE daemon and is run inside the initvm.
-
-
-OPTIONS
--------
--h, --help::
-	Displays help.
-
---name::
-	Sets the name of the new user.
-
---fullname::
-	Sets the full name of the new user.
-
---password::
-	Sets the password of the new user.
-
---email::
-	Sets the email address of the new user.
-
---noadmin:: TODO!! MACHT MEINER MEINUNG NACH DAS GLEICHE WIE ADMIN.
-
---admin::
-	Gives the new user admin privileges. (Boolean variable, default=False).
-
---delete-projects::
-	Delete all projects owned by the user.
-
---quiet::
-	TODO
-
---user::
-	User name of the project owner.
-
---clean::
-	Deletes the target and chroot directory in <project-dir>.
-
---description::
-	Description of the project version which shall be stored in the database.
-
-
-COMMANDS
---------
-'init'::
-	Creates a new ELBE database and adds one new user. Options: name[=root],
-	fullname[=Admin], password[=foo], email[=root at localhost], noadmin[=True].
-
-'add_user' <username>::
-	Adds a new user. Options: fullname, password, email, admin=[False].
-
-'del_user' <userid>::
-	Deletes user <userid>. Options: delete-projects[=False], quiet=[False].
-
-'list_projects'::
-	Lists all projects stored in the database.
-
-'list_users'::
-	Lists all users registered in the ELBE database.
-
-'create_project' <project_dir>::
-	Creates a new project in directory <project_dir>. Options: user.
-
-'del_project' <project_dir>::
-	Removes project in <project_dir> from ELBE database.
-
-'set_xml' <project_dir> <xml_file>::
-	Assigns the file <xml_file> as ELBE recipe to the project in <project_dir>.
-
-'build' <project_dir>::
-	Builds the project in <project_dir>.
-
-'get_files' <project_dir>::
-	Returns a list of all files and directories in <project_dir>
-
-'reset_project' <project_dir>::
-	Resets the project state in the database. Can be useful if a build has been
-	aborted and the project is set `busy` in in the database obstructing future
-	actions on this project. Options: clean[=False].
-
-'set_project_version' <project_dir> <version>::
-	Sets the project version of project <project_dir> to <version>.
-
-'list_versions' <project_dir>::
-	Lists all versions of project <project_dir>.
-
-'save_version' <project_dir>::
-	Saves current state of project <project_dir> as version. Options: description.
-
-'del_versions' <project_dir> <version>::
-	Deletes the version <version> of project <project_dir>.
-
-'print_version_xml' <project_dir> <version>::
-	Prints ELBE xml file in <project_dir> of version <version>.
-
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-debianize.txt b/docs/elbe-debianize.txt
deleted file mode 100644
index 41fbcada0ade..000000000000
--- a/docs/elbe-debianize.txt
+++ /dev/null
@@ -1,70 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-debianize(1)
-=================
-
-NAME
-----
-elbe-debianize - How to debianize software
-
-
-DESCRIPTION
------------
-'elbe debianize' used to be a command that generated a 'debian' directory
-inside a source tree of the Linux kernel, U-Boot, or Barebox. The templates
-that the command used for that directory do not follow Debian's best practices
-and broke for Linux >= 5.16. Therefore, 'elbe debianize' was removed and is no
-longer supported.
-
-In order to package U-Boot, please use the u-boot source package from the Debian
-archive. Modifying it for your target architecture or a vendor source tree
-should be straight-forward.
-
-For Barebox, there is no alternative currently.
-However, Debian bug #900958 asks for a barebox package.
-When that is resolved, please refer to that package.
-
-Linux has a built-in deb-pkg make target for a long time.
-The problem with using it as 'elbe debianize' alternative is that it builds the
-source and binary packages directly after inserting the debian directory into
-the source. To build only the source package, one must set the make variable
-DPKG_FLAGS=-S on the deb-pkg call. Just be sure to configure the kernel so that
-a .config file is available, and to set the variables that are evaluated by the
-script. See this man page's EXAMPLES section.
-After the source package is built, there is one generated file that does not
-belong to an unbuilt debian directory: debian/files.
-
-Instead of specifying a specific defconfig the .config will end up being used.
-There is no compiler prefix embedded in debian/rules for cross compilation,
-so you need to specify it while building the package.
-
-This will only generate the source package format that is specified in the
-Linux tree, which is 1.0 for versions < 6.3.
-The resulting kernel image format will be the default for the build architecture
-and the uImage load address is not included in the debian directory but it
-should be derived from some defconfig value if needed.
-
-Several Linux versions will not generate all the Build-Depends that are needed
-to build in a clean environment and you will probably need to fix them manually.
-
-
-EXAMPLES
---------
-In order to debianize and build a stable kernel for an arm64 system use the
-following commands. Most of the environment and make variables are optional
-but demonstrate the replacements for the 'elbe debianize' fields.
-+
-------------
-$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
-$ cd linux-stable
-$ export CROSS_COMPILE=aarch64-linux-gnu-
-$ export DEBEMAIL="`git config user.name` <`git config user.email`>"
-$ export KDEB_CHANGELOG_DIST=unstable
-$ make ARCH=arm64 defconfig
-$ make ARCH=arm64 DPKG_FLAGS=-S KERNELRELEASE=6.2-elbe deb-pkg
-$ rm debian/files
-$ git add -f debian
-$ git commit -sm 'add the deb-pkg generated debianization'
-$ CC=aarch64-linux-gnu-gcc dpkg-buildpackage -b -aarm64
-------------
diff --git a/docs/elbe-diff.txt b/docs/elbe-diff.txt
deleted file mode 100644
index 71cb273851f4..000000000000
--- a/docs/elbe-diff.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-diff(1)
-============
-
-NAME
-----
-elbe-diff - Looks at 2 directories and makes Suggestions to modify the xml file.
-
-SYNOPSIS
---------
-[verse]
-'elbe diff' <generated_dir> <fixed_dir>
-
-
-DESCRIPTION
------------
-This command is useful, when the initially generated RootFS needs some tweaks.
-It is supplied with the generated and the fixed rootfs, and will suggest a finetuning section
-and a commandline to generate an archive file.
-
-
-OPTIONS
--------
-<generated_dir>::
-	This should point to the originally generated directory.
-
-<fixed_dir>::
-	This should point to the fixed directory.
-
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-fetch_initvm_pkgs.txt b/docs/elbe-fetch_initvm_pkgs.txt
deleted file mode 100644
index 0d9b099069c5..000000000000
--- a/docs/elbe-fetch_initvm_pkgs.txt
+++ /dev/null
@@ -1,75 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-fetch_initvm_pkgs(1)
-=========================
-
-NAME
-----
-elbe-fetch_initvm_pkgs - Download initvm binary and source Packages
-
-SYNOPSIS
---------
-[verse]
-'elbe fetch_initvm_pkgs' [--binrepo <dir> ] \
-	[--srcrepo <dir>] \
-	[--skip-validation] \
-	[--cdrom-mount-path <path>] \
-	[--cdrom-device <dev>] \
-	[--apt-archive <dir>] \
-	[--src-archive <dir>] \
-	[--skip-build-source] \
-	[--skip-build-bin] \
-	<xmlfile>
-
-
-DESCRIPTION
------------
-'elbe fetch_initvm_pkgs' downloads source and binary packages of software
-installed into the initvm. These packages are installed into debian
-repositories.
-
-Later on in the target build process, these Repositories are used to
-generate the initvm related repositories.
-
-This command is used by elbe internally during the creation of the initvm.
-It is currently not supposed to be called by users.
-
-
-OPTIONS
--------
-
---binrepo <dir>::
-	directory where the bin repo should reside
-
---srcrepo <dir>::
-	directory where the src repo should reside
-
---skip-validation::
-	Skip xml schema validation
-
---cdrom-mount-path <path>::
-	path where cdrom is mounted
-
---cdrom-device <device>::
-	cdrom device, in case it has to be mounted
-
---apt-archive <dir>::
-	path where binary packages are downloaded to.
-
---src-archive <dir>::
-	path where src packages are downloaded to.
-
---skip-build-sources::
-	skip downloading Source Packages
-
---skip-build-bin::
-	skip downloading binary packages
-
-<xmlfile>::
-	the XML file to use.
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-gen_update.txt b/docs/elbe-gen_update.txt
deleted file mode 100644
index 18be3016ffa1..000000000000
--- a/docs/elbe-gen_update.txt
+++ /dev/null
@@ -1,74 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-gen_update(1)
-==================
-
-NAME
-----
-elbe-gen_update - Generate an update archive to be used by elbe-updated.
-
-SYNOPSIS
---------
-[verse]
-'elbe gen_update' --target <targetdir> --output <outputfile> \
-	[ --buildtype <type> ] \
-	[ --debug ] \
-	[ --name <name> ] \
-	[ --skip-validation ] \
-	<base_sourcexml>
-
-
-DESCRIPTION
------------
-'elbe gen_update' creates an update archive by comparing the packages
-installed in the given target project against the packages listed in
-the given base XML file. The resulting update archive will contain all new and
-all updated packages and can be used to update the target system with
-linkgit:elbe-updated[1].
-
-This command has to be run as root *inside the Elbe build VM*.
-
-
-OPTIONS
--------
---target <targetdir>::
-	The project directory to generate the update for.
-
---output <outputfile>::
-    Name of the update archive to generate.
-
---buildtype <type>::
-	Override the build type specified in the XML file.
-
---debug::
-	Enable a few debug features.
-
---name <name>::
-	Override the name of the project.
-
---skip-validation::
-	Skip validation of the passed XML file and of the 'source.xml' file
-	in the target directory (Not recommended).
-
-<base_sourcexml>::
-	The 'source.xml' file of the base version of the project.
-
-
-EXAMPLES
---------
-* Create an update package for 'myproject' including all packages installed or
-  updated via 'apt-get' since the project has been built with 'v0.1.xml'.
-  Write the update archive to 'v0.1-v0.2.upd'.
-+
----------
-# elbe gen_update --target /root/myproject \
-    --output /root/v0.1-v0.2.upd \
-	/root/v0.1.xml
----------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-genlicence.txt b/docs/elbe-genlicence.txt
deleted file mode 100644
index d508242c9e03..000000000000
--- a/docs/elbe-genlicence.txt
+++ /dev/null
@@ -1,61 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-genlicence(1)
-==================
-
-NAME
-----
-elbe-genlicence - Generate a file containing the licences of the packages
-included in a project.
-
-SYNOPSIS
---------
-[verse]
-'elbe genlicence' \
-	[ --output <filename> ] \
-	[ --xml <xmlfilename> ] \
-	<project-dir>
-
-
-DESCRIPTION
------------
-'elbe-genlicence' creates a file which will contain the licences of the
-packages included in a project, generated from the 'copyright' files in the
-'/usr/share/doc/*' directories of the root filesystem.
-
-This command has to be run *inside the Elbe build VM*.
-
-
-OPTIONS
--------
---output <filename>::
-	Write the result to <filename> instead of 'licence.txt'.
-
---xml <xmlfilename>::
-	Write an xml file with all the licenses to <xmlfilename>.
-
---buildtype <buildtype>::
-	Override the buildtype.
-
---skip-validation::
-	Skip xml schema validation.
-
-<project>::
-	The build directory of the project to process.
-
-
-EXAMPLES
---------
-* Generate a licence file for the project in '/var/cache/elbe/<uuid>' and name the result
-  'myproject-licences.txt'.
-+
----------
-# elbe genlicence --output myproject-licences.txt /var/cache/elbe/<uuid>
----------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-get_archive.txt b/docs/elbe-get_archive.txt
deleted file mode 100644
index b671e125556b..000000000000
--- a/docs/elbe-get_archive.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-get_archive(1)
-===================
-
-NAME
-----
-elbe-get_archive - Extract the archive from an xmlfile.
-
-SYNOPSIS
---------
-[verse]
-'elbe get_archive' <xmlfile> <archive>
-
-
-DESCRIPTION
------------
-This command extracts the archive from an xml file.
-It will not overwrite anything.
-
-
-OPTIONS
--------
-<xmlfile>::
-	The xml file to use.
-
-<archive>::
-	Name of the extracted archive file.
-	The archive must be a tar.bz2.
-
-
-EXAMPLES
---------
-
-* Extract the archive in 'project.xml' to 'archive.tar.bz2'
-+
-------------
-$ elbe get_archive project.xml archive.tar.bz2
-------------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-hdimg.txt b/docs/elbe-hdimg.txt
deleted file mode 100644
index 1822495f35d0..000000000000
--- a/docs/elbe-hdimg.txt
+++ /dev/null
@@ -1,63 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-hdimg(1)
-=============
-
-NAME
-----
-elbe-hdimg - Create hard disk and flash images from the given XML file.
-
-SYNOPSIS
---------
-[verse]
-'elbe hdimg' --target <dir> --output <out> \
-	[ --buildtype <type> ] \
-	[ --skip-validation ] \
-	[ --skip-grub ] \
-	<xmlfile>
-
-
-DESCRIPTION
------------
-'elbe hdimg' creates hard disk and flash images from the 'images' section in
-the given XML file. The command has to be run as root *inside the Elbe build
-VM*.
-
-
-OPTIONS
--------
---target <dir>::
-	Operate on the given project directory.
-
---output <out>::
-	Name of the log file.
-
---buildtype <type>::
-	Override the build type specified in the XML file.
-
---skip-validation::
-	Do not validate the XML file against the Elbe XML schema (Not
-	recommended).
-
---skip-grub::
-	Skip GRUB installation.
-
-<xmlfile>::
-	The XML file to use.
-	
-
-
-EXAMPLES
---------
-* Build images for the project in '/root/myproject'
-+
----------
-elbe hdimg --target /root/myproject --output /root/hdimg.log \
-	/root/myproject/source.xml
----------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-init.txt b/docs/elbe-init.txt
deleted file mode 100644
index 430127c5f65a..000000000000
--- a/docs/elbe-init.txt
+++ /dev/null
@@ -1,85 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-init(1)
-============
-
-NAME
-----
-elbe-init - create a project for an Elbe build virtual machine
-
-
-SYNOPSIS
---------
-[verse]
-'elbe init' \
-	[ --build-source ] \
-	[ --buildtype <buildtype> ] \
-	[ --debug ] \
-	[ --directory <directory> ] \
-	[ --skip-cds ] \
-	[ --skip-validation ] \
-	<xmlfile>
-
-DESCRIPTION
------------
-This command generates a project directory for an Elbe build virtual
-machine.
-
-When 'make' is executed in that directory, a VM is started, which
-installs Debian and the Elbe build environment. If the XML file contains a
-'target' section, then the target root filesystem will be built inside the
-virtual machine using linkgit:elbe-buildchroot[1].
-
-The build VM can be started by executing 'make run' (or 'make run-con', if
-a serial console is enough). After that, the virtual machine can be used
-to work inside the generated root filesystem. To do so, please use the
-linkgit:elbe-chroot[1] command *inside the VM*.
-
-
-OPTIONS
--------
-
---build-source::
-	Build a Debian source CD-ROM image, containing the source packages used by the
-	project.
-
---buildtype <buildtype>::
-	Override the build type specified in the XML file.
-
---debug::
-	Enables a few features that allow for better debugging of the build process.
-
---directory <dir>::
-	The location of the project directory. If this option isn't given, a directory
-	'build' is created in the current working directory. The directory must not
-	exist.
-
---skip-cds::
-	Skip the generation of Debian binary cdroms. This makes the build faster.
-	Otherwise all used binary packages are stored on an ISO cdrom image.
-
---skip-validation::
-	Skip the validation of the XML file. (Not recommended)
-
-<xmlfile>::
-	The XML describing the Elbe project.
-
-
-EXAMPLES
---------
-
-* Generate a build VM directory for the project specified in 'project.xml'
-and build the target root filesystem.
-+
-------------
-$ elbe init --directory=/scratch/example project.xml
-$ cd /scratch/example
-$ make
-------------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-initvm.txt b/docs/elbe-initvm.txt
deleted file mode 100644
index 712de94a310d..000000000000
--- a/docs/elbe-initvm.txt
+++ /dev/null
@@ -1,168 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-initvm(1)
-===============
-
-NAME
-----
-elbe-initvm - High Level Interface to the ELBE System.
-              Allows one to create an initvm and directly build Rootfilesystems using ELBE.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe initvm' [options] 'attach'
-'elbe initvm' [options] 'create' [<xmlfile> | <isoimage>]
-'elbe initvm' [options] 'submit' [<xmlfile> | <isoimage>]
-'elbe initvm' [options] 'start'
-'elbe initvm' [options] 'stop'
-'elbe initvm' [options] 'ensure'
-
-DESCRIPTION
------------
-
-This command allows one to build and manage an initvm.
-
-Initvms are managed via libvirt, and it's necessary that a user is a member of the
-libvirt group.
-
-
-OPTIONS
--------
-
---directory <dir>::
-	Directory where the initvm resides, or is supposed to reside.
-	(Defaults to './initvm')
-
---cdrom <CDROM>::
-	ISO image of Binary cdrom.
-
---devel::
-	Install elbe Version from the current working into initvm.
-
---skip-download::
-	After the build has finished, the generated Files are downloaded from
-	the initvm to the host. This step is skipped, when this option is specified.
-
---output <dir>::
-	Directoryname where the generated and downloaded Files should be saved.
-	The default is to generate a directory with a timestamp in the current working
-	directory.
-
---skip-build-bin::
-	Skip building binary repository CDROM, for exact reproduction.
-
---skip-build-sources::
-	Skip building source CDROM.
-	
---output <directory>::
-	Output downloaded files to <directory>.
-
---keep-files::
-	Don't delete elbe project files after a build in the initvm
-	use 'elbe control list_projects' to get a list of available projects
-
---writeproject <file>::
-	Write project name to <file>.
-
---nesting::
-	Allow initvm to support nested kvm.
-	This makes /proc/cpuinfo inside initvm differ per host.
-
---build-sdk::
-	Also make 'initvm submit' build an SDK.
-
---qemu::
-	Use QEMU directly instead of libvirt.
-
-XML OPTIONS
------------
-
---variant <variant>::
-	comma separated list of variants
-
---proxy <proxy>::
-	add proxy to mirrors
-
-COMMANDS
---------
-
-'attach'::
-
-Attach to the initvm console, which is accessed via virsh.
-+
-User 'root', password 'root'.
-
-
-'create' [ <xmlfile> | <isoimage> ]::
-
-This command triggers a complete rebuild of the Elbe XML File.
-It also includes rebuilding the initvm.
-+
-If an initvm is already available, you should use the 'submit' command,
-to build a project in an existing initvm.
-+
-Note that only a single initvm can be running on your host.
-+
-When an iso Image with the binaries has been built earlier, it can also
-be used to recreate the original image. The source.xml from the iso will
-be used, and all the binary packages available also.
-
-
-'submit' [ <xmlfile> | <isoimage> ]::
-
-This command triggers a complete rebuild of the Elbe XML File.
-It will however use an existing initvm.
-+
-When an iso Image with the binaries has been built earlier, it can also
-be used to recreate the original image. The source.xml from the iso will
-be used, and all the binary packages available also.
-
-
-'start'::
-
-Start initvm in the Background.
-
-
-'stop'::
-
-Shutdown running initvm.
-
-
-'sync'::
-
-Upload elbe Version from the current working into initvm using rsync.
-Before using this command, you'll have to add your client SSH key to
-'/root/.ssh/authorized_keys' in initvm manually.
-
-
-'ensure'::
-
-Make sure an initvm is running in the Background.
-
-
-Examples
---------
-
-* Build an initvm and on that build an elbe example:
-+
-------------
-$ elbe initvm create /usr/share/doc/elbe-doc/examples/rescue.xml
-------------
-
-* Reuse the initvm built in the previous Step to build another example xml
-+
-------------
-$ elbe initvm submit /usr/share/doc/elbe-doc/examples/elbe-desktop.xml
-------------
-
-
-SEE ALSO
---------
-linkgit:elbe-control[1]
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-mkcdrom.txt b/docs/elbe-mkcdrom.txt
deleted file mode 100644
index 88c6924bdf48..000000000000
--- a/docs/elbe-mkcdrom.txt
+++ /dev/null
@@ -1,92 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-mkcdrom(1)
-===============
-
-NAME
-----
-elbe-mkcdrom - Create an ISO image containing binary and/or source packages
-used in the given project.
-
-SYNOPSIS
---------
-[verse]
-'elbe mkcdrom' \
-	[ --arch <arch> ] \
-	[ --binary ] \
-	[ --buildtype <type> ] \
-	[ --codename <codename> ] \
-	[ --log <logfile> ] \
-	[ --skip-validation ] \
-	[ --source ] \
-	[ --rfs-only ] \
-	<builddir>
-
-
-DESCRIPTION
------------
-'elbe mkcdrom' creates an ISO image containing the binary and/or source
-packages used in the given project. This command has to be run as root
-*inside the Elbe build VM*.
-
-
-OPTIONS
--------
---arch <arch>::
-	Override the architecture.
-
---binary::
-	Build an ISO file for a binary CD-ROM. It will contain all installed
-	packages, including those pulled in by debootstrap (except if 
-	'--rfs-only' is used, see down below) and those installed from
-	additional sources. It can also be used as an installation source,
-	see linkgit:elbe-setcdrom[1].
-
---buildtype <type>::
-	Override the build type specified in the XML file.
-
---codename <codename>::
-	Override the Debian code name.
-
---log <logfile>::
-	Write a log file.
-
---skip-validation::
-	Do not validate the 'source.xml' file in <builddir> against the XML
-	schema (Not recommended).
-
---source::
-	Build an ISO image for a source CD-ROM.
-
---rfs-only::
-	<builddir> is not a build directory, but the path to a root filesystem.
-	In that case, the packages pulled in only by debootstrap will not be
-	included in the ISO image for binary CD-ROM.
-
-<builddir>::
-	The path to the Elbe build directory to create the ISO image for. It is
-	also possible to specify the path to the root filesystem instead of
-	the build directory. In that case the '--rfs-only' option has to be
-	given.
-	
-
-
-EXAMPLES
---------
-* Build a binary CD-ROM image for the project in foo/myproject
-+
----------
-# elbe mkcdrom --binary foo/myproject
----------
-
-* Build a source CD-ROM image for the project in foo/myproject
-+
----------
-# elbe mkcdrom --source foo/myproject
----------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-parselicence.txt b/docs/elbe-parselicence.txt
deleted file mode 100644
index cd861380cdc9..000000000000
--- a/docs/elbe-parselicence.txt
+++ /dev/null
@@ -1,349 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-parselicence(1)
-===================
-
-NAME
-----
-elbe-parselicence - Generate a file containing the licences of the packages
-included in a project.
-
-SYNOPSIS
---------
-[verse]
-'elbe parselicence' \
-	--mapping <filename> \
-	[ --output <filename> \
-	[ --tvout <filename> \
-	[ --use-nomos ] \
-	[ --errors-only ] \
-	<licence.xml filename>
-
-
-DESCRIPTION
------------
-'elbe-parselicence' parses an xml file with licence information.
-This xml file is generated during an elbe build.
-SPDX Licenses information is generated using mappings and overrides found
-in the mapping file.
-
-This information is written to an output xml file, and to a tagvalue based
-SPDX File.
-
-OPTIONS
--------
-
---mapping <filename>::
-	Use <filename> to aid with packages which contain non-machine-readable
-	or incomplete Licence infos. The format is explained in the chapter MAPPING FILE.
-
---output <filename>::
-	Write the xml result to <filename>.
-
---tvout <filename>::
-	Write the tagvalue result to <filename>.
-
---use-nomos::
-	Also pipe licence text through nomos, and add this info
-	to xml Datastructures.
-
---errors-only::
-	Only Output Packages with errors.
-	This is useful during the Phase where the mapping file is setup.
-
-<licence.xml filename>::
-	licence.xml File generated during elbe build.
-
-WORKFLOW
---------
-
-Elbe generates a `license.xml` File. This file is then parsed using
-
---------------------------------------------------------------------------------------------------
-elbe parselicence --mapping my_mapping.xml /path/to/license.xml --errors-only --output out.xml
---------------------------------------------------------------------------------------------------
-
-NOTE: an example mapping is still missing. Maybe you can use some text from this man page.
-
-The previous step will only output nodes into out.xml where an error happened.
-The errors need to be fixed by expanding `my_mapping.xml`
-
-NOTE: `my_mapping.xml` is describe in it own chapter.
-
-When no more errors happen, one can remove the option `--errors-only` and
-use the out.xml or generate tag-value output using option `--tvout <filename>`
-
---------------------------------------------------------------------------------------------------
-elbe parselicence --mapping my_mapping.xml /path/to/license.xml --tvout spdx_licenses.tagvalue
---------------------------------------------------------------------------------------------------
-
-
-LICENSE.XML FILE
-----------------
-
-When elbe builds an image, it will look at all `/usr/share/doc/*/copyright` Files,
-and concatenate them into `license.txt`. Elbe will also generate
-`license.xml`, which also contains meta-data extracted from machine-readable copyright
-files, or generated via heuristics.
-
-There are 3 possibitlities per Package:
-
-Copyright File is machine-readable
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-The debian Licenses and all per file information is put into the xml file
-if the copyright file is machine-readable.
-
-The `<pkglicense>` tag will contain a `<machinereadable />` tag,
-and also `<debian_licenses>` and a `<detailed>` tag.
-
-Example:
-
-[source,xml]
------------------------------------------------------------------------------------------------------------------------
-<pkglicense name="liblogging-stdlog0"><text>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: liblogging
-Source: http://www.liblogging.org/
-
-Files: *
-Copyright: 2002-2014 Rainer Gerhards and Adiscon GmbH.
-License: BSD-2-Clause
-
-License: BSD-2-Clause
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
- 1. Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in the
-    documentation and/or other materials provided with the distribution.
- .
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE HOLDERS OR
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-</text>
-<machinereadable />
-<debian_licenses><license>BSD-2-Clause</license>
-</debian_licenses>
-<detailed><files><glob>*</glob>
-<license>BSD-2-Clause</license>
-<copyright>2002-2014 Rainer Gerhards and Adiscon GmbH.</copyright>
-</files>
-</detailed>
-</pkglicense>
------------------------------------------------------------------------------------------------------------------------
-
-Some information can be extracted via heuristics
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-There are quite a few copyright files which almost adopted the
-new machine readable Format. But the parser does not accept it.
-
-The heuristic will look for lines containing `License: *` and will
-extract that info into a `<debian_licenses>` tag.
-
-Example:
-
-[source,xml]
------------------------------------------------------------------------------------------------------------------------
-<pkglicense name="libapt-pkg4.12"><text>Apt is copyright 1997, 1998, 1999 Jason Gunthorpe and others.
-Apt is currently developed by APT Development Team <deity at lists.debian.org>.
-
-License: GPLv2+
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
-
-See /usr/share/common-licenses/GPL-2, or
-<http://www.gnu.org/copyleft/gpl.txt> for the terms of the latest version
-of the GNU General Public License.
-
-</text>
-<heuristics />
-<debian_licenses><license>GPLv2+</license>
-</debian_licenses>
-</pkglicense>
------------------------------------------------------------------------------------------------------------------------
-
-No information can be extracted automatically
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Only the text will be put into the xml File.
-
-Example:
-
-[source,xml]
------------------------------------------------------------------------------------------------------------------------
-<pkglicense name="bsd-mailx"><text>This package was debianized by Loic Prylli <lprylli at graville.fdn.fr> on
-Mon, 23 Dec 1996 00:13:13 +0100.
-The package is currently maintained by Robert Luberda <robert at debian.org>
-
-It is now based on OpenBSD in directory src/usr.bin/mail on a lot of major
-ftp sites.
-See the README.Debian (and changelog.Debian) for the complicated history
-of the Debian package.
-
-Copyright (c) 1980, 1993 The Regents of the University of California.
-
-
-
-This software is licensed under the BSD License. The complete text of
-the license is included below:
-
-
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-   3. Neither the name of the University nor the names of its contributors
-      may be used to endorse or promote products derived from this software
-      without specific prior written permission.
-
-   THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-   ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-   ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-   FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-   OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-   HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-   OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-   SUCH DAMAGE.
-</text>
-</pkglicense>
------------------------------------------------------------------------------------------------------------------------
-
-MAPPING FILE
-------------
-
-In order to help `elbe parselicence` with decisions, which it can not make automatically,
-a mapping file is needed.
-
-It defines the following items:
-
-- global mappings from Debian License to SPDX License Identifier in node `<global>`
-- per package mappings `<perpackage> <package> <mapping>`
-- per package override definitions
-
-Here is an example mapping.xml:
-
-[source,xml]
---------------------------------------------------------------------------------------------------------------------
-<?xml version='1.0' encoding='utf-8'?>
-<license_map>
-	<global>
-		<mapping name='GPL-1+'>GPL-1.0+</mapping>
-		<mapping name='GPL-2'>GPL-2.0</mapping>
-		<mapping name='GPL-2.0'>GPL-2.0</mapping>
-		<mapping name='GPL-2+'>GPL-2.0+</mapping>
-		<mapping name='GPLv2+'>GPL-2.0+</mapping>
-		<mapping name='GPL-2.0+'>GPL-2.0+</mapping>
-		<mapping name='GPL-2.1+'>GPL-2.1+</mapping>
-		<mapping name='GPL-3+'>GPL-3.0+</mapping>
-		<mapping name='GPLv3+'>GPL-3.0+</mapping>
-		<mapping name='GPL-3.0+'>GPL-3.0+</mapping>
-
-		<mapping name='LGPL-2'>LGPL-2.0</mapping>
-		<mapping name='LGPL-2.0'>LGPL-2.0</mapping>
-		<mapping name='LGPL-2+'>LGPL-2.0+</mapping>
-		<mapping name='LGPL2.1'>LGPL-2.1</mapping>
-		<mapping name='LGPL-2.1'>LGPL-2.1</mapping>
-		<mapping name='LGPL-2.1+'>LGPL-2.1+</mapping>
-		<mapping name='LGPL-3+'>LGPL-3.0+</mapping>
-		<mapping name='LGPL-3.0+'>LGPL-3.0+</mapping>
-		<mapping name='LGPL'>LGPL-3.0+</mapping>
-
-		<mapping name='GFDL-1.2'>GFDL-1.2</mapping>
-		<mapping name='GFDL-1.2+'>GFDL-1.2+</mapping>
-		<mapping name='GFDL-1.3'>GFDL-1.3</mapping>
-		<mapping name='GFDL-1.3+'>GFDL-1.3+</mapping>
-
-		<mapping name='BSD-2-clause'>BSD-2-Clause</mapping>
-		<mapping name='BSD-2-Clause'>BSD-2-Clause</mapping>
-		<mapping name='BSD-3-clause'>BSD-3-Clause</mapping>
-		<mapping name='BSD-3-Clause'>BSD-3-Clause</mapping>
-		<mapping name='BSD-4-clause'>BSD-4-Clause</mapping>
-		<mapping name='BSD-4-Clause'>BSD-4-Clause</mapping>
-		<mapping name='MIT'>MIT</mapping>
-		<mapping name='CC-BY-SA-3.0'>CC-BY-SA-3.0</mapping>
-
-		<mapping name='ZLIB'>Zlib</mapping>
-		<mapping name='MPL-2.0'>MPL-2.0</mapping>
-		<mapping name='Apache-2.0'>Apache-2.0</mapping>
-		<mapping name='GPL-3.0-with-GCC-exception'>GPL-3.0 WITH GCC-exception-3.1</mapping>
-		<mapping name='GPL-3+ with GCC-Runtime-3.1 exception'>GPL-3.0+ WITH GCC-exception-3.1</mapping>
-		<mapping name='Artistic'>Artistic-1.0</mapping>
-		<mapping name='Artistic-2'>Artistic-2.0</mapping>
-		<mapping name='GPL-3+ with OpenSSL exception'>GPL-3.0+ WITH openvpn-openssl-exception</mapping>
-		<mapping name='FTL'>FTL</mapping>
-		<mapping name='ISC'>ISC</mapping>
-		<mapping name='Gzip'>Zlib</mapping>
-
-		<mapping name='X-Consortium'>X11</mapping>
-
-		<mapping name='Expat'>MIT</mapping>
-		<mapping name='public-domain'>CC-0</mapping>
-	</global>
-
-	<perpackage>
-		<package name='grub-common'>
-			<!-- heuristics override, because of error in machine read-->
-			<license>GPL-3.0+</license>
-			<license>MIT</license>
-			<license>CC-BY-SA-3.0</license>
-		</package>
-		<package name='init-system-helpers'>
-			<mapping name='BSD'>BSD-3-Clause</mapping>
-		</package>
-
-		<package name='liblzo2-2'>
-			<license>GPL-2.0+</license>
-		</package>
-		<package name='logrotate'>
-			<license>GPL-2.0+</license>
-		</package>
-	</perpackage>
-</license_map>
---------------------------------------------------------------------------------------------------------------------
-
-As you can see, it is also necessary to add identity mappings, like
-`<mapping name='GPL-2.0'>GPL-2.0</mapping>`
-
-Its not allowed to mix `<license>` and `<mapping>` in a single <package> node.
-
-NOMOS
------
-
-Nomos is part of fossology. See https://www.fossology.org/get-started/
-to find out, how to install the nomos executable.
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-pbuilder.txt b/docs/elbe-pbuilder.txt
deleted file mode 100644
index f72978478336..000000000000
--- a/docs/elbe-pbuilder.txt
+++ /dev/null
@@ -1,153 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-pbuilder(1)
-================
-
-NAME
-----
-elbe-pbuilder - High Level Interface to the ELBE Package Build System.
-              Allows one to create a package builder for a project and to build
-              Debian packages.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe pbuilder' 'build'  [--project <project> | --xmlfile <xmlfile>]
-'elbe pbuilder' 'create' [--project <project> | --xmlfile <xmlfile>] [--writeproject <filename>]
-
-DESCRIPTION
------------
-
-Creates a pbuilder for a specified project and builds the Debian package
-like pbuilder, but for the configured ELBE project.
-
-OPTIONS
--------
-
---project <dir>::
-	'key' (/var/cache/elbe/<uuid> for the project inside the initvm to use.
-	Use 'elbe control list_projects' to get a list of the available projects.
-	Another option would be to use the --writeproject option, when the
-	pbuilder is created.
-
---xmlfile <xmlfile>::
-	This file is used to create a new ELBE project including the pbuilder
-	environment.
-
---cpuset <int>::
-	When this value is not -1 (the default), the pbuilder is run using
-	'taskset <cpuset>' which allows one to limit the number of cpus used
-	for the build. This is useful when multithreading and qemu-user
-	yield problem with e.g. java.
-
---profile string::
-	Specify the build profile(s) to build. (dpkg-buildpackage -P<profile>)
-	Provide multiple profiles as a comma separated list.
-
---cross::
-        Combined with the create command it creates a chroot environment to make
-        crossbuilding possible. Combined with the build command it will use
-        this environment for crossbuilding.
-
---no-ccache::
-        The compiler cache 'ccache' is activated by default. Use this option
-        with the 'create' command to deactivate it.
-
---ccache-size <string>::
-        Use this option to configure the limit of the compiler cache.
-        Should be a number followed by an optional suffix: k, M, G, T.
-        Use 0 for no limit.
-
-XML OPTIONS
------------
-
---variant <variant>::
-	comma separated list of variants
-
---proxy <proxy>::
-	add proxy to mirrors
-
-COMMANDS
---------
-
-'create'::
-
-A pbuilder environment for the given project or xml File will be created.
-If --cross is given the pbuilder environment will be created to crossbuild
-packages. (If --cross is given with the create command you have to use --cross
-with the build command also.) The compiler cache `ccache` gets installed by
-default to speed up recompilations. To deactivate use `--no-ccache` with the
-create command. It is possible to change the size with `--ccache-size <string>`
-where string should be a number followed by an optional suffix: k, M, G, T.
-For no limit use 0.
-
-'build'::
-
-Build the 'Debianized Project' in the current working directory. (A valid
-./debian directory needs to exist.) If --project was specified, the specified
-build environment will be used. If --xmlfile is specified, a new build
-environment will be created for the given ELBE XML File, and the 'Debianized
-Project' in the current working directory will be built. The result of the
-package build is stored in ../ like pbuilder does.
-
-NOTES
------
-In this benchmark all opportunitys for creating a pbuilder environment and
-building a package with it were tested. All environments were created with the
-'armhf-ti-beaglebone-black.xml' example and with cross, ccache, no-cross or
-no-ccache in all possible variations. The build command was tested with the zlib
-package. All times are real-time captures. The build command with ccache was
-tested twice to see the impact of ccache.
-
-
-pbuilder no-ccache create        6m35,003s
-pbuilder no-ccache build         7m19,467s
-
-pbuilder no-ccache cross create  4m2,553s
-pbuilder no-ccache build         2m39,151s
-
-pbuilder ccache create           6m44,117s
-pbuilder ccache build         1. 7m36,130s
-                              2. 4m47,050s
-
-pbuilder ccache cross create     4m4,190s
-pbuilder ccache cross build   1. 2m40,159s
-                              2. 2m32,650s
-
-EXAMPLES
---------
-
-* Build a pbuilder for 'myarm.xml'. Save project name into myarm.prj
-+
---------
-# elbe pbuilder create --xmlfile myarm.xml --writeproject myarm.prj 
---------
-
-* Use the pbuilder we have built, to build 'program', using the prj
-  File generated in parent directory
-+
---------
-# cd program
-# elbe pbuilder build --project `cat ../myarm.prj`
---------
-
-* Use the pbuilder we have built, to build 'program', using the prj
-  File generated in parent directory. And don't use more than one CPU
-  as a workaround for qemu-user and java problems.
-+
---------
-# cd program
-# elbe pbuilder build --project `cat ../myarm.prj` --cpuset 1
---------
-
-SEE ALSO
---------
-linkgit:elbe-control[1]
-linkgit:elbe-initvm[1]
-linkgit:pdebuild[1]
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-pkgdiff.txt b/docs/elbe-pkgdiff.txt
deleted file mode 100644
index 65e30e2cd30f..000000000000
--- a/docs/elbe-pkgdiff.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-pkgdiff(1)
-===============
-
-NAME
-----
-elbe-pkgdiff - Compare two directories for differing packages and suggest how to modify the Elbe XML file.
-
-SYNOPSIS
---------
-[verse]
-'elbe pkgdiff' <generated_dir> <fixed_dir>
-
-
-DESCRIPTION
------------
-This command is useful if new packages have been installed to a root filesystem
-or if some packages have been removed from it after it was created. It suggests
-changes to the pkg-list section to include the added packages and to exclude
-the removed ones. The command is supplied with the path to the originally
-generated directory and the path to the directory with the modified root
-filesystem.
-
-
-OPTIONS
--------
-<generated_dir>::
-	This should point to the originally generated directory.
-
-<fixed_dir>::
-	This should point to the fixed directory.
-
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-preprocess.txt b/docs/elbe-preprocess.txt
deleted file mode 100644
index e488b409a7f3..000000000000
--- a/docs/elbe-preprocess.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-preprocess(1)
-==================
-
-NAME
-----
-elbe-preprocess - resolves xinclude, external resources and resolves variants
-
-
-SYNOPSIS
---------
-[verse]
-'elbe preprocess [options] <xmlfile>
-
-DESCRIPTION
------------
-
-Typically elbe preprocess is used to generate an elbe XML file from a XML file
-that uses Xincludes, or other XML features. It can be also used for variant
-management with the 'variant=' attribute.
-
-If e.g. a variant="audio,video" attribute is added to any XML tag, the tag will
-only be used if 'elbe preprocess' is called with --variant=audio or
---variant=video or --variant=audio,video. If no --variant is given, the tag
-will be dropped.
-
-OPTIONS
--------
-
---variant <variant>::
-	comma separated list of variants
-
---proxy <proxy>::
-	add proxy to mirrors
-
---output <filename>::
-	preprocessed output file, defaults to preprocess.xml
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-prjrepo.txt b/docs/elbe-prjrepo.txt
deleted file mode 100644
index 59613e72e84a..000000000000
--- a/docs/elbe-prjrepo.txt
+++ /dev/null
@@ -1,79 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-prjrepo(1)
-===============
-
-NAME
-----
-elbe-prjrepo - Provides access to the Debian repositories in each project folder.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe prjrepo download' <project_dir>
-'elbe prjrepo upload_pkg' <project_dir> [<debfile> | <dscfile> | <changesfile>]
-'elbe prjrepo list_packages' <project_dir>
-
-DESCRIPTION
------------
-
-Whenever ELBE pbuilder builds a Debian package, it is added to a local Debian
-repository which is located in the project folder inside the initvm. Packages in
-this repository can then be installed into a root file system. The
-`elbe-prjrepo` command allows the user to interact with this repository,
-i.e. list, upload and download packages.
-
-OPTIONS
--------
-
---user <username>::
-	Username to use for login (defaults to root).
-
---pass <password>::
-	Password for login (defaults to 'foo').
-
---retries <N>::
-	How many times to retry the connection to the server before giving up
-	(default is 10 times, yielding 10 seconds).
-
-COMMANDS
---------
-
-'download' <project_dir>::
-
-Downloads the Debian repository of the project located in <project_dir> to the
-host machine.
-
-
-'upload_pkg' <project_dir> [<debfile> | <dscfile> | <changesfile>]::
-
-Loads a Debian package into the Debian repository of an existing Elbe project in
-the initvm. Both binary and source packages are supported. In order to upload a
-source package you need to specify the dsc-file in the command as shown above.
-The actual source files which are required for the source package need to be
-located in the same directory as the dsc-file. The same is true for a changes
-file.  The actual files defined in the changes file need to reside in the same
-directory.
-
-
-'list_packages' <project_dir>::
-
-Lists all packages available in the Debian repository of the project.
-
-
-Example
--------
-
-* List the packages available in the project 38599ce2-4cad-4578-bfe1-06fa793b883a:
-+
-------------
-$ elbe prjrepo list_packages "/var/cache/elbe/38599ce2-4cad-4578-bfe1-06fa793b883a"
-------------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-remove_sign.txt b/docs/elbe-remove_sign.txt
deleted file mode 100644
index f206685aca95..000000000000
--- a/docs/elbe-remove_sign.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-remove_sign(1)
-===================
-
-NAME
-----
-elbe-remove_sign - Verify a signed file and remove the signature.
-
-SYNOPSIS
---------
-[verse]
-'elbe remove_sign' <filename>
-
-
-DESCRIPTION
------------
-This command checks the validity of a file signed with linkgit:elbe-sign[1]
-or 'gpg --sign'. It uses the GPG keyring of the current user, so for this
-to work the public key of the signer has to be added to the keyring. Note
-that to get 'VALID (Trusted)', the key has to have ultimate trust.
-
-
-OPTIONS
--------
-<filename>::
-	The name of the file to sign.
-
-
-EXAMPLES
---------
-
-* check validity of 'rfs.tar.bz2.gpg' and remove the signature
-+
-----------
-elbe remove_sign rfs.tar.bz2.gpg
-----------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-repodir.txt b/docs/elbe-repodir.txt
deleted file mode 100644
index 6ac05631553e..000000000000
--- a/docs/elbe-repodir.txt
+++ /dev/null
@@ -1,73 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-repodir(1)
-===============
-
-NAME
-----
-elbe-repodir - preprocesses and hosts repodirs on an Elbe client
-
-SYNOPSIS
---------
-[verse]
-'elbe repodir [options] <xmlfile>
-
-DESCRIPTION
------------
-elbe repodir preprocesses an XML file to convert <repodir> tags to valid
-<url> tags. It runs a web server on a random TCP port with the root set
-to a repodir's PATH, which can be a relative path to the XML file
-or an absolute filesystem path.
-
-The repository is not considered to be signed unless the repodir contains a
-signed-by attribute, which will then copy the given ascii-armored OpenPGP
-keyring file as <raw-key> to the <url> node. The key file must be a relative
-path to repodir's PATH.
-
-After the output file is written, the started webserver(s) will log their
-accessed files.
-
-OPTIONS
--------
-
---output <filename>::
-	preprocessed output file, defaults to repodir.xml.
-	If this exists it will be overridden.
-
-EXAMPLES
---------
-The source ...
-
-[source,xml]
-------------------------------------------------------------------------------
-<repodir>PATH1 bullseye main contrib</repodir>
-<repodir signed-by="relative-path.asc">PATH2 buster main</repodir>
-------------------------------------------------------------------------------
-
-... is preprocessed to:
-
-[source,xml]
-------------------------------------------------------------------------------
-<url>
-  <binary>http://LOCALMACHINE:36071 bullseye main contrib</binary>
-  <source>http://LOCALMACHINE:36071 bullseye main contrib</source>
-  <options>
-    <option>trusted=yes</option>
-  </options>
-</url>
-<url>
-  <binary>http://LOCALMACHINE:33187 buster main</binary>
-  <source>http://LOCALMACHINE:33187 buster main</source>
-  <raw-key>
-    CONTENT OF KEYRING FILE "PATH2/relative-path.asc"
-  </raw-key>
-</url>
-------------------------------------------------------------------------------
-
-... with randomly chosen TCP port 36071 serving PATH1 and port 33187 serving
-PATH2.
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-setsel.txt b/docs/elbe-setsel.txt
deleted file mode 100644
index 62336bf4add8..000000000000
--- a/docs/elbe-setsel.txt
+++ /dev/null
@@ -1,57 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-setsel(1)
-==============
-
-NAME
-----
-elbe-setsel - Replace the package list of an Elbe XML file by a list obtained
-from 'dpkg-getselections'.
-
-SYNOPSIS
---------
-[verse]
-'elbe setsel' <xmlfile> <pkglist>
-
-
-DESCRIPTION
------------
-'elbe setsel' replaces the package list of an Elbe XML file by a package list
-obtained from 'dpkg --get-selections'. Together with the setsel mode of Elbe,
-this offers a more fine-grained control on which packages are installed (even
-apt and aptitude can be excluded from the root filesystem). The recommended
-usage is as follows:
-
-. Generate an image using the default mode of Elbe.
-. Run the image and use 'apt-get' to purge unwanted packages.
-. Maybe even use 'dpkg' to remove apt and aptitude.
-. Generate the list of selected packages using
-  'dpkg --get-selections > selections.list'
-. Transfer this file to the host system.
-. Use 'elbe setsel <xmlfile> selections.list' to import the package list into
-  the XML file.
-. Rebuild using the setsel mode of Elbe.
-
-OPTIONS
--------
-<xmlfile>::
-	The XML file to modify.
-
-<pkglist>::
-	The package list from 'dpkg --get-selections'.
-
-
-EXAMPLES
---------
-* Replace the package list of myproject.xml with the packages listed by
-  'dpkg --get-selections > myproject.pkgs'.
-+
----------
-$ elbe setsel myproject.xml myproject.pkgs
----------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-show.txt b/docs/elbe-show.txt
deleted file mode 100644
index d2810aa8ea13..000000000000
--- a/docs/elbe-show.txt
+++ /dev/null
@@ -1,48 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-show(1)
-============
-
-
-NAME
-----
-elbe-show - Get a human readable representation of a ELBE XML file.
-
-
-SYNOPSIS
---------
-[verse]
-'elbe show' [--verbose] <xmlfile>
-
-
-DESCRIPTION
------------
-This command generates a human readable overview of a given ELBE XML file.
-
-It's useful to get an idea what a specific XML file was designed for.
-
-
-OPTIONS
--------
-
---verbose::
-	Give more information, e.g. the package list of the target root-filesystem.
-
-<xmlfile>::
-	The xmlfile to be shown.
-
-
-EXAMPLES
---------
-
-* get a human readable representation of 'project.xml'
-+
-------------
-$ elbe show project.xml
-------------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-sign.txt b/docs/elbe-sign.txt
deleted file mode 100644
index dacdf93e17d4..000000000000
--- a/docs/elbe-sign.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-sign(1)
-============
-
-NAME
-----
-elbe-sign - Add a signature to the given file
-
-SYNOPSIS
---------
-[verse]
-'elbe sign' <filename> <fingerprint>
-
-
-DESCRIPTION
------------
-Sign the given file with the GPG key having the specified fingerprint.
-The resulting file will contain both the compressed data and the signature
-(the same format 'gpg --sign' uses if no other arguments are specified),
-and it will get a '.gpg' extension.
-
-The person receiving the file can use 'gpg --decrypt' or
-linkgit:elbe-remove_sign[1] to verify the file and to get the original content.
-
-
-OPTIONS
--------
-<filename>::
-	The name of the file to sign.
-
-<fingerprint>::
-	The fingerprint of the private GPG key to use for signing the file.
-
-
-EXAMPLES
---------
-
-* sign 'rfs.tar.bz2' with the key having the fingerprint 'FEE1DEAD'
-+
------------
-elbe sign rfs.tar.bz2 FEE1DEAD
------------
-
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-toolchainextract.txt b/docs/elbe-toolchainextract.txt
deleted file mode 100644
index 24163bb4c8b5..000000000000
--- a/docs/elbe-toolchainextract.txt
+++ /dev/null
@@ -1,90 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-toolchainextract(1)
-========================
-
-
-NAME
-----
-elbe-toolchainextract - extract libraries from a cross-toolchain
-
-
-SYNOPSIS
---------
-[verse]
-'elbe toolchainextract' \
-	[ --path <path to toolchain> ] \
-	[ --output <output repository path> ]
-	[ --codename <distro codename for repository> ]
-	[ --buildtype <shortname for the toolchain type> ]
-
-
-DESCRIPTION
------------
-'elbe toolchainextract' builds a debian repository containing debian packages
-that have been generated from a given cross-toolchain.
-
-This command has to be run as root *inside the Elbe build VM*.
-
-OPTIONS
--------
-
---path <path to toolchain>::
-	basepath to the toolchain that is used to extract the debian packages.
-
---output <output repository path>::
-	path were the debian repo will be generated.
-
---codename <distro codename for repository>::
-	codename of the debian suite for which the repo should be built for.
-
---buildtype <shortname of the toolchain type>::
-	currently armhf-linaro48 or armel-linaro48 can be used.
-
-EXAMPLES
---------
-* Build a repo containing the lib packages from a Linaro armhf toolchain.
-+
---------
-# elbe initvm attach
-
-login: root  # (password root)
-
-# elbe toolchainextract \
-    -p /opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux \
-    -o /opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo \
-    -c stretch \
-    -b armhf-linaro48
-
-# ls /opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/*/*
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/liba/libasan0:
-libasan0_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/liba/libatomic1:
-libatomic1_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libg/libgcc1:
-libgcc1_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libg/libgfortran3:
-libgfortran3_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libg/libgomp1:
-libgomp1_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libm/libmudflap0:
-libmudflap0_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libs/libssp0:
-libssp0_4.8.3_armhf.deb
-
-/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_repo/pool/main/libs/libstdc++6:
-libstdc++6_4.8.3_armhf.deb
---------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-updated.txt b/docs/elbe-updated.txt
deleted file mode 100644
index f1c177c16f91..000000000000
--- a/docs/elbe-updated.txt
+++ /dev/null
@@ -1,74 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-updated(1)
-===============
-
-NAME
-----
-elbe-updated - Elbe update daemon.
-
-SYNOPSIS
---------
-[verse]
-'elbe updated' \
-	[ --directory <update_dir> ] \
-	[ --host <host> ] \
-	[ --nosign ] \
-	[ --port <port> ] \
-	[ --usb ]
-
-
-DESCRIPTION
------------
-'elbe updated' is the Elbe update daemon, which runs on the target system. It
-watches a directory for incoming update packages (which have been created with
-linkgit:elbe-gen_update[1] in the build VM) and applies them to the system. By
-default, only signed update packages are allowed. To sign an update package,
-please use linkgit:elbe-sign[1].
-It is also possible to monitor the USB bus and to install updates located on an
-USB drive.
-
-'elbe updated' also has a built in SOAP interface which can be used to monitor
-the status of the update daemon and to initiate downgrades.
-
-This command has to be run as root *on the target system*. Please note that
-'elbe updated' is usually started by the init script of its package, so in most
-cases there should be no need to start it by invoking this command directly.
-
-
-OPTIONS
--------
---directory <update_dir>::
-	Monitor the given directory for incoming update packages. Default is:
-	'/var/cache/elbe/updates'
-
---host <host>::
-	Bind address for the SOAP interface. Default is to bind to all network
-	interfaces.
-
---nosign::
-	Accept update packages without signatures.
-
---port <port>::
-	Port for the SOAP interface. Default is 8088.
-
---usb::
-	Enable the USB monitor. This option requires pyudev module and an automount
-	system for the usb drives (e.g. usbmount).
-
-
-EXAMPLES
---------
-* Start the update daemon, watch '/updates' for updates and accept update
-packages without a signature.
-+
----------
-# elbe updated --directory /updates --nosign
----------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-validate.txt b/docs/elbe-validate.txt
deleted file mode 100644
index 82e2e24a2634..000000000000
--- a/docs/elbe-validate.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-validate(1)
-================
-
-NAME
-----
-elbe-validate - validate xml file.
-
-SYNOPSIS
---------
-[verse]
-'elbe validate' <xmlfile>
-
-
-DESCRIPTION
------------
-This command validates the xmlfile provided, and prints out errors.
-
-
-OPTIONS
--------
-<xmlfile>::
-	The xml file to validate.
-
-
-
-EXAMPLES
---------
-
-* Validate 'project.xml'
-+
-------------
-$ elbe validate project.xml
-------------
-
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe-xsdtoasciidoc.rst b/docs/elbe-xsdtoasciidoc.rst
deleted file mode 100644
index 9f68bd16446b..000000000000
--- a/docs/elbe-xsdtoasciidoc.rst
+++ /dev/null
@@ -1,57 +0,0 @@
-************************
-elbe-xsdtoasciidoc
-************************
-
-.. _`_name`:
-
-NAME
-====
-
-elbe-xsdtoasciidoc - Create an asciidoc documentation from an annotated
-XML Schema file (xsd).
-
-.. _`_synopsis`:
-
-SYNOPSIS
-========
-
-   ::
-
-      elbe xsdtoasciidoc [options] <xmlfile>
-
-.. _`_description`:
-
-DESCRIPTION
-===========
-
-This command generates documentation for the format of any ELBE XML
-file. It parses the ELBE schema file and creates an asciidoc
-documentation out of the annotations in the xsd file.
-
-.. _`_options`:
-
-OPTIONS
-=======
-
---output=FILE specify output filename
-
-<xsdfile>
-   The xsdfile to be used.
-
-.. _`_examples`:
-
-EXAMPLES
-========
-
--  get the documentation of the elbe xml format
-
-   ::
-
-      $ elbe xsdtoasciidoc /usr/share/elbe/dbsfed.xsd
-
-.. _`_elbe`:
-
-ELBE
-====
-
-Part of the ``elbe(1)`` suite
diff --git a/docs/elbe-xsdtoasciidoc.txt b/docs/elbe-xsdtoasciidoc.txt
deleted file mode 100644
index 9b60f6ced3c6..000000000000
--- a/docs/elbe-xsdtoasciidoc.txt
+++ /dev/null
@@ -1,49 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe-xsdtoasciidoc(1)
-=====================
-
-
-NAME
-----
-elbe-xsdtoasciidoc - Create an asciidoc documentation from an annotated XML
-Schema file (xsd).
-
-
-SYNOPSIS
---------
-[verse]
-'elbe xsdtoasciidoc' [options] <xmlfile>
-
-
-DESCRIPTION
------------
-
-This command generates documentation for the format of any ELBE XML file.
-It parses the ELBE schema file and creates an asciidoc documentation out of the
-annotations in the xsd file.
-
-
-OPTIONS
--------
-
---output=FILE  specify output filename
-
-<xsdfile>::
-	The xsdfile to be used.
-
-
-EXAMPLES
---------
-
-* get the documentation of the elbe xml format
-+
-------------
-$ elbe xsdtoasciidoc /usr/share/elbe/dbsfed.xsd
-------------
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbe.rst b/docs/elbe.rst
index f5b8ddb02d3b..b4ea50251a09 100644
--- a/docs/elbe.rst
+++ b/docs/elbe.rst
@@ -102,10 +102,6 @@ Elbe COMMANDS
 ``elbe-validate(1)``
    validate the given XML file against the Elbe XML Schema.
 
-``elbe-xsdtoasciidoc(1)``
-   create an asciidoc documentation from an annotated XML Schema file
-   (xsd).
-
 .. _`_see_also`:
 
 SEE ALSO
diff --git a/docs/elbe.txt b/docs/elbe.txt
deleted file mode 100644
index f0f44b9d3095..000000000000
--- a/docs/elbe.txt
+++ /dev/null
@@ -1,108 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-elbe(1)
-=======
-
-NAME
-----
-elbe - Embedded Linux Build Environment
-
-
-SYNOPSIS
---------
-[verse]
-'elbe' <command> [<args>]
-
-
-DESCRIPTION
------------
-Elbe is a system to build Rootfilesystems from XML description files.
-It also includes tools to modify xml files.
-
-The '<command>' is a name of an Elbe command (see below).
-
-
-Elbe COMMANDS
--------------
-
-linkgit:elbe-initvm[1]::
-	build and manage initvm. Also allows one to submit xml Files into the initvm
-
-linkgit:elbe-control[1]::
-	low-level interface to projects inside the initvm.
-
-linkgit:elbe-buildchroot[1]::
-	build a root filesystem.
-
-linkgit:elbe-buildsysroot[1]::
-	build a sysroot archive.
-
-linkgit:elbe-check_updates[1]::
-	check whether package updates are available for a given project.
-
-linkgit:elbe-chg_archive[1]::
-	insert a new config archive (.tbz) into a XML file.
-
-linkgit:elbe-chroot[1]::
-	enter a root filesystem with chroot.
-
-linkgit:elbe-diff[1]::
-	compare two root file systems for differing files.
-
-linkgit:elbe-gen_update[1]::
-	generate an update archive for elbe-updated.
-
-linkgit:elbe-genlicence[1]::
-	generate a file containing the licences of all packages included in a
-	project.
-
-linkgit:elbe-get_archive[1]::
-	extract a config archive (.tbz) from a XML file.
-
-linkgit:elbe-hdimg[1]::
-	create a hard disk image from the given XML file.
-
-linkgit:elbe-init[1]::
-	create a project for an Elbe build virtual machine.
-
-linkgit:elbe-mkcdrom[1]::
-	create an ISO image containing all binary or source packages used in
-	the given project.
-
-linkgit:elbe-pbuilder[1]::
-	generate a pbuilder environment and build packages within it
-
-linkgit:elbe-pkgdiff[1]::
-	compare two root filesystems for differing packages.
-
-linkgit:elbe-remove_sign[1]::
-	verify a signed file and remove the signature.
-
-linkgit:elbe-setsel[1]::
-	update the packagelist from the output of dpkg-getselections.
-
-linkgit:elbe-show[1]::
-	show a textual information about the given XML file.
-
-linkgit:elbe-sign[1]::
-	add a signature to the given file.
-
-linkgit:elbe-updated[1]::
-	start the Elbe update daemon.
-
-linkgit:elbe-validate[1]::
-	validate the given XML file against the Elbe XML Schema.
-
-linkgit:elbe-xsdtoasciidoc[1]::
-	create an asciidoc documentation from an annotated XML Schema file (xsd).
-
-
-SEE ALSO
---------
-linkgit:elbe[1]
-
-
-ELBE
-----
-Part of the linkgit:elbe[1] suite
diff --git a/docs/elbeoverview-en.txt b/docs/elbeoverview-en.txt
deleted file mode 100644
index e74e1ab3baa7..000000000000
--- a/docs/elbeoverview-en.txt
+++ /dev/null
@@ -1,965 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-Embedded Linux Build Environment (elbe)
-=======================================
-
-Debian-based system to generate root filesystems for embedded devices.
-
-General Notes
--------------
-
-Generally, root filesystem creation faces the following requirements:
-
-- Creation of root filesystem for a specific architecture.
-- Generation of a development environment for the specific architecture.
-
-Trying to solve this via cross-compilation of the required packages,
-we face the following problems:
-
-- Many packages are not designed and tested for cross-compilation.
-- Big projects consume a significant amount of time to cross-compile.
-- Dependencies are not resolved automatically. The developer is required to
-  manually find out which package versions of dependencies are required.
-- Changes and patches to the packages need to be updated for newer versions.
-  This process makes an update a very time-consuming process.
-- One must make sure that the same toolchain is used in the development
-  environment and in the root filesystem.
-
-Elbe takes a different approach to solve these problems:
-
-- Standard packages are not self-compiled.
-  Elbe uses binary packages from their respective Debian distributions.
-- Own applications are not cross-compiled.
-  They are built natively on the target architecture in a chroot environment
-  using qemu.
-- The root filesystem is a subset of the Debian system inside the chroot
-  environment. This implicitly ensures that the same toolchain is used
-  on the development machine and on the target.
-- Updating, adding, or removing a package is done via Debian's package-management
-  (apt) which also resolves package dependencies.
-
-
-Overview
---------
-
-The Elbe system consists of the program `elbe` which is implemented
-in Python. Similar to git, it can be called with several sub commands.
-For example:
-
----------------------------------------------------
-elbe <command>
-elbe initvm create --directory /scratch/example example.xml
-elbe chg_archive example.xml archive.tar.bz2
----------------------------------------------------
-
-An Elbe project consists of an XML file that describes the project.
-
-This xml File is processed inside a virtual machine because we need root
-privileges to create the Rootfilesystem.
-This virtual machine is called 'initvm' in the following text.
-
-When an xml File is now submitted into the initvm, the following happens:
-
-- Debian's 'debootstrap' utility is used to setup a Debian base system.
-- The packages specified in the package list of the XML file are installed
-  in the base system. The result of this is called the build environment.
-- A copy of the environment is used as the target system.
-  There is a set of different modes for this copy.
-- If the XML file contains an archive, it will be unpacked into the target, so
-  the fine-tuning commands can use the content of the archive, too.
-- Inside a chroot environment, the fine-tuning commands are applied to the
-  target.
-- The archive from the XML file is unpacked again. This is to ensure the target
-  filesystem contains all files from the archive, even if some of them have
-  been deleted by a fine-tuning command.
-- According to what is specified in the XML file, the target filesystem is then
-  baked into a tar archive and/or a filesystem image.
-
-This diagram illustrates the complete process:
-
-["graphviz", "elbe-process.png", "neato"]
-------------------------------------------------------------------------------
-include::elbe-process.dot[]
-------------------------------------------------------------------------------
-
-The following figure shows the steps performed inside the build VM during the
-build process of the target. The highlighted steps are performed inside a
-chroot environment:
-
-[graphviz]
-------------------------------------------------------------------------------
-include::emu-process.dot[]
-------------------------------------------------------------------------------
-
-.No automatic startup of services during package installation
-******************************************************************************
-On regular Debian installations, init scripts installed by packages are
-started automatically during the post-installation step. Please note that
-Elbe *will not start any services during package installation*.
-
-As a consequence, packages that require a specific service to be running will
-cause problems during installation. This typically includes database
-application packages, which set up a database in their postinst script and
-rely on the database server to be already running.
-******************************************************************************
-
-Create initvm and build a first xml file from the examples
-----------------------------------------------------------
-
-In order to use elbe, a user needs to be member of the `libvirt` system
-group.
-
-To create an initvm and make that initvm build a first Rootfilesystem,
-use the following command:
-
-----------------------------------------------------------------------------------------------------------
-elbe initvm create --directory ~/elbe-initvm /usr/share/doc/elbe-doc/examples/x86_32-pc-hdimg-minimal-grub-buster.xml
-----------------------------------------------------------------------------------------------------------
-
-This will take quite a while.
-
-.Note
-**********************************************************
-Only one initvm may run on a single computer.
-If an initvm is already running in the background, this
-command will exit with a failure notice.
-**********************************************************
-
-The initvm will keep on running, after this command. Further xml Files may be built using
-
-----------------------------------------------------------------------------------------------------------
-elbe initvm submit --directory ~/elbe-initvm /usr/share/doc/elbe-doc/examples/x86_32-pc-hdimg-minimal-grub-buster.xml
-----------------------------------------------------------------------------------------------------------
-
-.Note
-**********************************************************
-The initvm will not be restarted upon a reboot of the machine.
-**********************************************************
-
-If you need to start the initvm again, use
-
-----------------------------------------------------------------------------------------------------------
-elbe initvm start --directory ~/elbe-initvm
-----------------------------------------------------------------------------------------------------------
-
-
-Example XML Files
-~~~~~~~~~~~~~~~~~
-
-A root-filesystem-project is described with a XML file.
-
-Elbe ships with a set of example XML files.
-
-The following XML file describes a simple system in the default full copy mode.
-The root filesystem is essentially identical to the build environment and it
-will be saved as `nfsroot.tar.gz`
-
-.example.xml
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<ns0:RootFileSystem xmlns:ns0="https://www.linutronix.de/projects/Elbe"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	created="2009-05-20T08:50:56" revision="6"
-	xsi:schemaLocation="https://www.linutronix.de/projects/Elbe dbsfed.xsd">
-	<project>
-		<name>ARMexample</name>
-		<version>08.15</version>
-		<description>full featured debian system</description>
-		<buildtype>armel</buildtype>
-		<mirror>
-			<primary_host>debian.tu-bs.de</primary_host>
-			<primary_path>/debian</primary_path>
-			<primary_proto>http</primary_proto>
-			<options>
-				<option>trusted=yes</option>
-			</options>
-		</mirror>
-		<suite>buster</suite>
-	</project>
-	<target>
-		<hostname>myARM</hostname>
-		<domain>tec.linutronix.de</domain>
-		<passwd>foo</passwd>
-		<console>ttyS0,115200</console>
-		<package>
-			<tar>
-				<name>nfsroot.tar.gz</name>
-			</tar>
-		</package>
-		<finetuning>
-		</finetuning>
-		<pkg-list>
-			<pkg>bash</pkg>
-			<pkg>openssh-server</pkg>
-		</pkg-list>
-	</target>
-</ns0:RootFileSystem>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-To generate the project directory from the XML file the following command is
-used:
-
------------------------------------------------------
-elbe initvm submit --directory ~/elbe-initvm example.xml
------------------------------------------------------
-
-The directory `~/elbe-initvm` must contain a running initvm.
-If an initvm has not been created yet, use:
-
------------------------------------------------------
-elbe initvm create --directory ~/elbe-initvm example.xml
------------------------------------------------------
-
-Passwords in XML
-~~~~~~~~~~~~~~~~
-
-Using plain-text passwords in XML has advantages and disadvantages. The main
-advantage is the documentation of the login credentials for the generated
-systems. But storing plain-text passwords on a system is a significant
-weakening of system security. For that reason, all XML files, which are
-generated by Elbe during the build process (`/etc/elbe_base.xml` and
-`source.xml`) contain only hashed passwords.
-
-If a plain-text password for root or a user is specified in the input XML,
-it is converted into a hashed password during the XML preprocessing. The
-preprocessed XML only contains the hashed password, the plain-text password
-will be removed. The XML preprocessing only supports the hashing method
-`sha512crypt` at the moment, which is the default in most of the supported
-Debian releases.
-
-Hashed passwords can be used right from the start and directly placed into
-the input XML. A plain-text password can be hashed with the tool `mkpasswd`
-or with various hashing libraries like crypt (C/C++) or passlib (Python).
-If the hashed passwords are generated manually, all hashing methods can be
-used, which are supported by the PAM configuration on the target system. If
-unsure, `sha512crypt` should be used.
-
-The following example uses the tool `mkpasswd` to hash the password. The
-tool will ask for a plain-text password (in this example "foo").
-
-------------------------------------------------------------------------------
-mkpasswd --method=sha512crypt --rounds=656000
-Password:
-$6$rounds=656000$b.Wh.guGMquBcUeA$T7zTO/icEQarZ8mOvhjok4eR2X3ERazvMW2b07n52w.C.BERGYgOyKT0wZehikY97ISAP41ihPk9C0EVxp3n70
-------------------------------------------------------------------------------
-
-The generated line contains the hashing parameters and the hashed password
-and has to be copied completely to the XML, either as `passwd_hashed` node
-for the root password or as `passwd_hashed` attribute for other users in
-`adduser` nodes.
-
-[source,xml]
-------------------------------------------------------------------------------
-<target>
-	<!-- hashed password for root -->
-	<passwd_hashed>$6$rounds=656000$b.Wh.guGMquBcUeA$T7zTO/icEQarZ8mOvhjok4eR2X3ERazvMW2b07n52w.C.BERGYgOyKT0wZehikY97ISAP41ihPk9C0EVxp3n70</passwd_hashed>
-</target>
-------------------------------------------------------------------------------
-
-[source,xml]
-------------------------------------------------------------------------------
-<finetuning>
-	<!-- hashed password for user elbe -->
-	<adduser passwd_hashed="$6$rounds=656000$b.Wh.guGMquBcUeA$T7zTO/icEQarZ8mOvhjok4eR2X3ERazvMW2b07n52w.C.BERGYgOyKT0wZehikY97ISAP41ihPk9C0EVxp3n70" shell="/bin/bash">elbe</adduser>
-</finetuning>
-------------------------------------------------------------------------------
-
-.Note
-**********************************************************
-If the XML contains an action `login`, the password for
-the root login must be given in plain-text. This
-plain-text password will not be removed by the
-preprocessing and will stay also in the generated XML
-files `/etc/elbe_base.xml` and `source.xml`.
-**********************************************************
-
-Changing the subset that is extracted as the root filesystem
-------------------------------------------------------------
-
-Elbe has several methods to select the subset that is packaged as the
-root-filesystem.
-
-- The finetuning section allows to remove, copy or move files before the
-  archive will be extracted and the target image is generated.
-- The 'install-recommends' tag.
-- The initial copy has several modes, which allow to extract very small subsets.
-- The embedded archive.
-
-
-Finetuning
-~~~~~~~~~~
-
-The finetuning section allows to copy, move and delete files in the
-root-filesystem. Additionally it is possible to run commands. Here is an
-example finetuning section:
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-  <finetuning>
-    <rm>/usr/share/doc</rm>						<1>
-    <mkdir>/mydir</mkdir>						<2>
-    <mknod opts="c 1 5">/dev/zero</mknod>				<3>
-    <buildenv_mkdir>/mydir</buildenv_mkdir>				<4>
-    <cp path="/copy/me">/my/destination</cp>				<5>
-    <buildenv_cp path="/copy/me">/my/destination</buildenv_cp>		<6>
-    <b2t_cp path="/copy/me">/my/name/on/target</b2t_cp>			<7>
-    <t2b_cp path="/copy/me">/my/name/on/buildenv</b2t_cp>		<8>
-    <mv path="/var">/var_ro</mv>					<9>
-    <buildenv_mv path="/var">/var_ro</buildenv_mv>			<10>
-    <command>echo "T0:23:respawn:/sbin/getty -L ttyO0 115200 vt102" >> /etc/inittab</command>	<11>
-    <buildenv_command>some_command</buildenv_command>			<12>
-    <purge>apt</purge>							<13>
-    <addgroup>mygroup</addgroup>							<14>
-    <adduser groups='mygroup,audio' passwd='huhu' shell='/bin/zsh'>manut</adduser>							<15>
-    <adduser passwd='test' shell='/bin/bash'>test</adduser>							<15>
-  </finetuning>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> Remove the directory '/usr/share/doc' from the target.
-
-<2> Create the directory '/mydir' on the target.
-
-<3> Create the character device '/dev/zero' with major number 1 and
-    minor number 5 on the target.
-
-<4> Create the directory '/mydir' in the build environment.
-
-<5> Copy '/copy/me' on the target to '/my/destination'.
-
-<6> Copy '/copy/me' in the build environment to '/my/destination'.
-
-<7> Copy '/copy/me' from the build environment to '/my/name/on/target' on
-    the target.
-
-<8> Copy '/copy/me' from the target to '/my/name/on/buildenv' in the build
-    environment.
-
-<9> Move '/var' to '/var/ro' in the target root filesystem.
-
-<10> Move '/var' to '/var/ro' in the build environment.
-
-<11> Execute the given command in the target root filesystem. In this example
-     a line is added to '/etc/inittab' in order to permit logins via the serial
-     console.
-
-<12> Execute 'some_command' in the build environment.
-
-<13> Remove the 'apt' package from the target root filesystem using
-     'dpkg --purge'.
-
-<14> A group with the name 'mygroup' is created.
-
-<15> Adds the user 'manut' with '/bin/zsh' as default shell. A group with the
-      same name as the user is always created and is the default group.
-      manut is additionally added to the groups 'mygroup' and 'audio'. manuts
-      login password is 'huhu'.
-      The 'groups' attribute is optional, 'passwd' and 'shell' are mandatory.
-
-.Note
-*******************************************************
-The copy, mv, and rm commands operate on full directories.
-*******************************************************
-
-Useful directories to trim with finetuning
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-This section provides some useful directories that can be safely removed
-to get a smaller target image.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<finetuning>
-	<rm>/usr/share/doc</rm>				<1>
-	<rm>var/cache/apt/archives/*</rm>		<2>
-	<rm>var/cache/apt/pkgcache.bin</rm>
-	<rm>var/cache/apt/srcpkgcache.bin</rm>
-	<rm>var/lib/apt/lists/*_Release</rm>
-	<rm>var/lib/apt/lists/*_Packages</rm>
-	<rm>var/lib/apt/lists/*_Sources</rm>
-
-	<rm>boot</rm>					<3>
-
-	<rm>lib/modules/2.6.32-5-versatile/</rm>	<4>
-	<rm>var/cache/man/*</rm>			<5>
-	<rm>var/cache/elbe</rm>				<6>
-	<rm>var/cache/debconf/*</rm>			<7>
-</finetuning>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> The doc files are not necessary on an embedded target.
-<2> The apt cache can be downloaded again if necessary.
-<3> The boot directory contains the kernel used for the VM.
-    On embedded targets the kernel is normally loaded by the bootloader.
-<4> The kernel modules for the standard Debian kernel.
-<5> The man page cache
-<6> The full copy mode will also copy elbe onto the root-filesystem.
-<7> debconf cache is also not necessary
-
-Archive
-~~~~~~~
-
-It's also possible to include an archive into the XML file, that is unpacked
-into the target root-filesystem after the finetuning step.
-This archive must be a bzip2 compressed tar (.tar.bz2) and the following
-command can be used to embed the archive into the XML file:
-
--------------------------------------------
-elbe chg_archive <xmlfile> archive.tar.bz2
--------------------------------------------
-
-This feature is useful to place custom configuration-files into the final image.
-
-
-Slimming the root filesystem with the different modes
------------------------------------------------------
-
-The copying process has several modes. The mode is configured in the 'target'
-tag. It needs to be the tag before 'finetuning'.
-
-The following commented example illustrates where the mode is configured.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-  <target>
-    <hostname>example</hostname>
-    <domain>example.com</domain>
-    <passwd>foo</passwd>
-    <package>
-        <tar>nfsroot.tar.gz</tar>
-    </package>
-
-    <diet /> <!-- The mode is configured at this place.
-                  Leaving it out enables the default mode. -->
-
-    <install-recommends />
-
-    <finetuning />
-    <pkg-list>
-        <pkg>bash</pkg>
-    </pkg-list>
-
-  </target>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-install-recommends
-~~~~~~~~~~~~~~~~~~
-
-'install-recommends' enables installation of recommended packages.
-This can make the root-filesystem a lot bigger.
-With the default setting, installed programs will still work, but some
-functionality requiring external programs might be disabled.
-
-.Note
-*******************************************************
-This is not strictly a mode as described in the following paragraphs.
-It can be combined with any of them, and the following modes are mutually
-exclusive.
-*******************************************************
-
-
-default
-~~~~~~~
-
-The default mode generates a full copy of the build image.
-This mode is the easiest to use, but its not possible to generate images
-which have the Debian package management removed.
-
-
-setsel
-~~~~~~
-
-The setsel mode can be used to generate images which only contain 'dpkg',
-and offers a more fine-grained control on which packages are installed.
-
-The recommended usage is as follows:
-
-- Generate an image in the default mode.
-- Run the image and use aptitude to purge unwanted packages.
-- Maybe even use dpkg to remove apt and aptitude.
-- Then generate the list of selected Packages using
-  `dpkg --get-selections > selections.list`
-- Transfer this file to the host System.
-- Use `elbe setsel <xmlfile> selections.list`
-  to import the pkg-list into the XML file.
-- Rebuild using setsel mode.
-
-.How it works
-*******************************************************
-The setsel mode works by feeding the pkg list to `dpkg --set-selections` in
-the target image copy. It has the advantage that there is no need to cope with
-some unregistered configuration files.
-*******************************************************
-
-diet
-~~~~
-
-Diet Mode only copies the files that are referenced in the Package management.
-It resolves the dependencies so that one does not need to reference library
-packages.
-
-.But
-*******************************************************
-Some packages rely on files generated in the post-inst scripts, which are not
-tracked by the package management. Work is in progress to execute the post-inst
-scripts in the target copy, but there are still some problems with
-corner-cases, when dependencies of these scripts get removed in the
-'finetuning'.
-
-These Errors are hard to find. And slow down development of an RFS.
-Diet Mode is intended to build small root-filesystems. E.g. to
-add some packages, like openssh-server, to a busybox based system.
-
-Do not use this for normal filesystems.
-
-This also holds for the 'tighten' mode.
-*******************************************************
-
-tighten
-~~~~~~~
-
-Tighten mode only extracts the files referenced by the packages in 'pkg-list'.
-No dependencies are resolved.
-This mode is intended for compatibility with old XML files, do not use in
-new elbe projects.
-
-CDROM Functionality
--------------------
-
-Elbe creates a CDROM iso image with all the installed packages.
-It is created in the build directory, and its filename is +install.iso+
-This can also serve as an installation source.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-    <mirror>
-	    <cdrom>/home/user/elbe-example/install.iso</cdrom>
-    </mirror>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Install Reports
----------------
-
-The build process also creates a report file in asciidoc format:
-+elbe-report.txt+  can be converted to html using the following command:
-
---------------------------------------------
-asciidoc elbe-report.txt
---------------------------------------------
-
-This report lists all files in the root-file-system, including the origin
-Debian package.
-
-Validation
-----------
-
-After a build the +source.xml+ file includes information about all
-installed packages and versions. If this information is already present in
-a file used with +elbe create+ the installed package versions and md5 hashes
-are validated and a report is printed and saved to +validation.txt+. This
-file is also in asciidoc format.
-
-XML Reference
--------------
-
-This section is a step by step explanation of the ARM example.
-
-The XML file starts with the following header, which should always be the same:
-
-[XML]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<ns0:RootFileSystem xmlns:ns0="https://www.linutronix.de/projects/Elbe"
-     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-     created="2009-05-20T08:50:56" revision="6"
-     xsi:schemaLocation="https://www.linutronix.de/projects/Elbe dbsfed.xsd">
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-After this header follows the project description.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-	<project>
-		<name>ARMexample</name>
-		<version>08.15</version>
-		<mirror>
-			<primary_host>debian.tu-bs.de</primary_host>	<1>
-			<primary_path>/debian</primary_path>
-			<primary_proto>http</primary_proto>
-			<options>
-				<option>trusted=yes</option>		<2>
-				<option>check-valid-until=no</option>	<2>
-			</options>
-			<url-list>					<3>
-				<url>
-					<binary>http://debian.linutronix.de/elbe buster main</binary>
-					<source>http://debian.linutronix.de/elbe buster main</source>
-					<options>
-						<option>trusted=yes</option> <2>
-					</options>
-				</url>
-			</url-list>
-
-		</mirror>
-		<suite>buster</suite>					<4>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> The 'mirror' tag contains
-    'primary_host', 'primary_path', 'primary_proto' and 'host'
-    'host' is optional, used in case of a primary mirror different for the sdk
-    architecture.
-    It describes the Debian mirror used.
-
-<2> The 'options' tags can be used to set a list of 'option' tag.
-    Each 'option tag can contain an option of the form NAME=VALUE.
-
-<3> The 'url-list' can contain additional package sources.
-
-<4> The 'suite' selects the distribution codename used from the primary mirror.
-
-
-.Note
-************************************************
-the 'project' tag isn't closed yet.
-************************************************
-
-The following section describes the virtual machine in which the
-debian-installer is executed and custom packages can be built.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		<buildimage>
-			<arch>armel</arch>				<1>
-			<size>20G</size>				<2>
-			<mem>256</mem>					<3>
-			<interpreter>qemu-system-arm</interpreter>	<4>
-			<console>ttyAMA0,115200n1</console>		<5>
-			<machine>versatilepb</machine>			<6>
-			<NIC>
-				<model>smc91c111</model>
-				<MAC>de:ad:be:ef:be:05</MAC>
-			</NIC>
-			<portforwarding>				<7>
-				<forward>
-					<proto>tcp</proto>
-					<buildenv>22</buildenv>
-					<host>5022</host>
-				</forward>
-			</portforwarding>
-			<pkg-list>					<8>
-				<pkg>buildd</pkg>
-			</pkg-list>
-		</buildimage>
-	</project>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> 'arch' is the Debian architecture of the target. (optional)
-
-<2> 'size' is the size of the hard-disk image. (optional)
-
-<3> 'mem' controls the amount of RAM that is allocated to the virtual machine.
-		(optional)
-
-<4> The 'interpreter' is either 'qemu-system-<arch>' or 'qemu-kvm'.
-    Usage of kvm is usually only possible, when the target is 'x86'.
-		(optional)
-
-<5> The 'console' line needs special attention because it is different on
-    different emulation targets.
-		(optional)
-
-<6> The 'machine' tag contains the '-machine' parameter, that is provided to
-    qemu.
-		(optional)
-
-<7> 'portforwarding' of network server ports from the virtual machine to the
-    host. This example forwards the ssh port to port 5022 on the host.
-		(optional)
-
-<8> This is the list of packages that are only installed to the buildimage.
-     (The packages listed in the target sections pkg-list are installed to
-     the target image and the buildimage.) It can be used for example to
-     install the debian build server into the buildenvironment.
-		(optional)
-
-.Note
-**********************************************************
-The optional parameters are normally set to defaults by the buildtype tag.
-The tags can be used for advanced use of elbe; to override the defaults.
-
-If the optional parameters are not set, the buildtype can even be overridden
-by the flag --buildtype at 'elbe create' to build the same configuration for
-a different architecture
-**********************************************************
-
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-	<target>
-		<hostname>myARM</hostname>			<1>
-		<domain>tec.linutronix.de</domain>		<2>
-		<passwd>foo</passwd>				<3>
-		<console>ttyS0,115200</console>
-		<package>
-			<tar>
-				<name>nfsroot.tar.gz</name>	<4>
-			</tar>
-		</package>
-		<finetuning>					<5>
-		</finetuning>
-		<pkg-list>					<6>
-			<pkg>build-essential</pkg>
-			<pkg>bash</pkg>
-			<pkg>less</pkg>
-			<pkg>git</pkg>
-			<pkg>debhelper</pkg>
-			<pkg>nfs-common</pkg>
-			<pkg>openssh-server</pkg>
-		</pkg-list>
-	</target>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> The hostname
-
-<2> and domainname
-
-<3> This is the plain-text root password of the machine. It will be
-    converted into a hashed password by the XML preprocessing.
-
-<4> This describes, that the resulting rootfilesystem, shall be generated as
-    'nfsroot.tar.gz'
-
-<5> finetuning section can be empty. If you need finetuning it can be defined
-    here. The format of this tag is explained above.
-
-<6> The package list resides here.
-
-
-Building ubi images
-~~~~~~~~~~~~~~~~~~~
-
-Elbe also has the ability to generate ubi images, including different
-partitions and mountpoints. Lets look at an example 'target' section.
-
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<target>
-	<hostname>myARM</hostname>
-	<domain>tec.linutronix.de</domain>
-	<passwd>foo</passwd>
-	<console>ttyS0,115200</console>
-
-	<images>
-		<mtd>
-			<name>linux.img</name>			<1>
-			<nr>0</nr>
-			<size>60MB</size>
-			<ubivg>
-				<label>nand</label>
-				<miniosize>2048</miniosize>	<2>
-				<maxlogicaleraseblockcount>1533</maxlogicaleraseblockcount>
-				<logicaleraseblocksize>126976</logicaleraseblocksize>
-				<physicaleraseblocksize>128KiB</physicaleraseblocksize>
-				<ubi>				<3>
-					<type>static</type>
-					<label>kernel</label>
-					<id>0</id>
-					<size>4MiB</size>
-					<binary>/boot/vmlinuz-2.6.33.9-rt31</binary>
-				</ubi>
-				<ubi>
-					<type>dynamic</type>
-					<label>rfs</label>
-					<id>1</id>
-					<size>26MiB</size>
-				</ubi>
-				<ubi>
-					<type>dynamic</type>
-					<label>data</label>
-					<id>2</id>
-					<size>30MiB</size>
-				</ubi>
-			</ubivg>
-		</mtd>
-	</images>
-
-	<fstab>							<4>
-		<bylabel>					<5>
-			<label>data</label>
-			<mountpoint>/opt</mountpoint>
-			<fs>
-				<type>ubifs</type>
-				<mkfs>-x lzo</mkfs>
-			</fs>
-			<options>rw</options>
-		</bylabel>
-		<bylabel>
-			<label>rfs</label>
-			<mountpoint>/</mountpoint>
-			<fs>
-				<type>ubifs</type>
-				<mkfs>-x lzo</mkfs>
-			</fs>
-			<options>ro</options>
-		</bylabel>
-		<bydev>						<6>
-			<source>proc</source>
-			<mountpoint>/proc</mountpoint>
-			<fs>
-				<type>proc</type>
-			</fs>
-		</bydev>
-		<bydev>
-			<source>sysfs</source>
-			<mountpoint>/sys</mountpoint>
-			<fs>
-				<type>sysfs</type>
-			</fs>
-		</bydev>
-		<bydev>
-			<source>tmpfs</source>
-			<mountpoint>/tmp</mountpoint>
-			<fs>
-				<type>tmpfs</type>
-			</fs>
-			<options>size=2M</options>
-		</bydev>
-		<bydev>
-			<source>tmpfs</source>
-			<mountpoint>/var/log</mountpoint>
-			<fs>
-				<type>tmpfs</type>
-			</fs>
-			<options>size=4M</options>
-		</bydev>
-		<bydev>
-			<source>tmpfs</source>
-			<mountpoint>/var/run</mountpoint>
-			<fs>
-				<type>tmpfs</type>
-			</fs>
-			<options>size=2M</options>
-		</bydev>
-	</fstab>
-
-	<finetuning>
-	</finetuning>
-	<pkg-list>
-		<pkg>dash</pkg>
-	</pkg-list>
-</target>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> This specifies an mtd image with 60MB size whose filename is linux.img
-
-<2> Parameters for the ubi tools, describing the NAND geometry.
-
-<3> Specification of ubi volumes.
-
-<4> specifies the fstab, so that everything can be copied to the right image.
-
-<5> Normal partition entries are by label.
-
-<6> The target /etc/fstab file is created with the entries defined in this section.
-    Entries for '/proc', '/sys' etc. can be generated with 'bydev' nodes.
-
-
-Building harddisk / sdcard images
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Elbe also has the ability to generate ubi images, including different
-partitions and mountpoints. Lets look at an example 'target' section.
-
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-	<images>
-		<hd>
-			<name>sda.img</name>			<1>
-			<size>1900</size>			<2>
-			<partitions>				<3>
-				<primary>
-					<part>1</part>
-					<size>remain</size>
-					<label>rfs</label>	<4>
-					<parttype>linux</parttype>
-				</primary>
-			</partitions>
-		</hd>
-		<hd>
-			<name>sdb.img</name>			<1>
-			<size>400</size>			<2>
-			<partitions>				<3>
-				<primary>
-					<part>1</part>
-					<size>remain</size>
-					<label>config</label>	<4>
-					<parttype>linux</parttype>
-				</primary>
-			</partitions>
-		</hd>
-	</images>
-	<fstab>							<5>
-		<bylabel>
-			<label>rfs</label>			<4>
-			<mountpoint>/</mountpoint>
-			<fs>
-				<type>ext4</type>
-			</fs>
-		</bylabel>
-		<bylabel>
-			<label>config</label>			<4>
-			<mountpoint>/mnt/config</mountpoint>
-			<fs>
-				<type>ext4</type>
-			</fs>
-			<options>ro</options>
-		</bylabel>
-		<bydev>
-			<source>none</source>
-			<mountpoint>/sys/kernel/debug</mountpoint>
-			<fs>
-				<type>debug</type>
-			</fs>
-		</bydev>
-	</fstab>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-<1> this specifies an hd image
-
-<2> size of a hd image
-
-<3> Specification of ubi volumes.
-
-<4> labels are used to assign mountpoints to partitions
-
-<5> The target /etc/fstab file is created with the entries defined in this section.
-    Entries for '/proc', '/sys' etc. can be generated with 'bydev' nodes.
-
-
-A complete reference that is automatically generated from the schema file is
-also available.
-
-
-Elbe init (detailed Explanation)
---------------------------------
-
-.Note
-**********************************************************
-`elbe init` is now considered a low-level command for advanced Users.
-Under normal circumstances `elbe initvm` should be used.
-This paragraph is kept for reference.
-**********************************************************
-
-The 'elbe init' command generates a project directory, which contains a hard
-disk image for a virtual build machine and a 'Makefile' to install the build
-VM and to work with it.
-
-During this process, 'elbe init' will download a linux kernel and initrd.gz
-from the debian mirror. In case of a local mirror, be sure, that
-`dists/<codename>/main/installer-amd64/` is also mirrored.
-
-After 'elbe init' has generated the project directory, change to the
-project directory and run 'make'. This will start the installation of the
-build VM.
-
-
diff --git a/docs/manpage-1.72.xsl b/docs/manpage-1.72.xsl
deleted file mode 100644
index b4d315cb8c47..000000000000
--- a/docs/manpage-1.72.xsl
+++ /dev/null
@@ -1,14 +0,0 @@
-<!-- manpage-1.72.xsl:
-     special settings for manpages rendered from asciidoc+docbook
-     handles peculiarities in docbook-xsl 1.72.0 -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-		version="1.0">
-
-<xsl:import href="manpage-base.xsl"/>
-
-<!-- these are the special values for the roff control characters
-     needed for docbook-xsl 1.72.0 -->
-<xsl:param name="git.docbook.backslash">&#x2593;</xsl:param>
-<xsl:param name="git.docbook.dot"      >&#x2302;</xsl:param>
-
-</xsl:stylesheet>
diff --git a/docs/manpage-base-url.xsl.in b/docs/manpage-base-url.xsl.in
deleted file mode 100644
index e800904df332..000000000000
--- a/docs/manpage-base-url.xsl.in
+++ /dev/null
@@ -1,10 +0,0 @@
-<!-- manpage-base-url.xsl:
-     special settings for manpages rendered from newer docbook -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-		version="1.0">
-
-<!-- set a base URL for relative links -->
-<xsl:param name="man.base.url.for.relative.links"
-	>@@MAN_BASE_URL@@</xsl:param>
-
-</xsl:stylesheet>
diff --git a/docs/manpage-base.xsl b/docs/manpage-base.xsl
deleted file mode 100644
index a264fa616093..000000000000
--- a/docs/manpage-base.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<!-- manpage-base.xsl:
-     special formatting for manpages rendered from asciidoc+docbook -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-		version="1.0">
-
-<!-- these params silence some output from xmlto -->
-<xsl:param name="man.output.quietly" select="1"/>
-<xsl:param name="refentry.meta.get.quietly" select="1"/>
-
-<!-- convert asciidoc callouts to man page format;
-     git.docbook.backslash and git.docbook.dot params
-     must be supplied by another XSL file or other means -->
-<xsl:template match="co">
-	<xsl:value-of select="concat(
-			      $git.docbook.backslash,'fB(',
-			      substring-after(@id,'-'),')',
-			      $git.docbook.backslash,'fR')"/>
-</xsl:template>
-<xsl:template match="calloutlist">
-	<xsl:value-of select="$git.docbook.dot"/>
-	<xsl:text>sp
</xsl:text>
-	<xsl:apply-templates/>
-	<xsl:text>
</xsl:text>
-</xsl:template>
-<xsl:template match="callout">
-	<xsl:value-of select="concat(
-			      $git.docbook.backslash,'fB',
-			      substring-after(@arearefs,'-'),
-			      '. ',$git.docbook.backslash,'fR')"/>
-	<xsl:apply-templates/>
-	<xsl:value-of select="$git.docbook.dot"/>
-	<xsl:text>br
</xsl:text>
-</xsl:template>
-
-</xsl:stylesheet>
diff --git a/docs/manpage-normal.xsl b/docs/manpage-normal.xsl
deleted file mode 100644
index a48f5b11f3dc..000000000000
--- a/docs/manpage-normal.xsl
+++ /dev/null
@@ -1,13 +0,0 @@
-<!-- manpage-normal.xsl:
-     special settings for manpages rendered from asciidoc+docbook
-     handles anything we want to keep away from docbook-xsl 1.72.0 -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-		version="1.0">
-
-<xsl:import href="manpage-base.xsl"/>
-
-<!-- these are the normal values for the roff control characters -->
-<xsl:param name="git.docbook.backslash">\</xsl:param>
-<xsl:param name="git.docbook.dot"	>.</xsl:param>
-
-</xsl:stylesheet>
diff --git a/docs/quickstart.txt b/docs/quickstart.txt
deleted file mode 100644
index 95dd450f463f..000000000000
--- a/docs/quickstart.txt
+++ /dev/null
@@ -1,504 +0,0 @@
-// SPDX-License-Identifier: GPL-3.0-or-later
-// SPDX-FileCopyrightText: Linutronix GmbH
-
-Embedded Linux Build Environment (ELBE) Quickstart Guide
-========================================================
-ELBE is a Debian-based system to generate root filesystems for embedded devices.
-
-You have probably received a root filesystem, which has been built with ELBE.
-Additionally, you should have an XML file describing the root filesystem.
-
-This quickstart guide describes the steps necessary to rebuild the
-root-filesystem from the XML file and to simple modifications.
-
-Steps necessary
----------------
-. install Debian 10 (buster) or later on your Host. The latest version of elbe should
-  be compatible with this system.
-. install ELBE on Host Linux
-. generate the `initvm` running the build environment
-. build the root filesystem inside the initvm
-
-Steps 1,2 and 3 need only be performed once.
-
-NOTE: When Debian is running inside a VM (vmware etc), you need to make sure,
-      that nested KVM is working.
-
-Customization of the build
---------------------------
-The ELBE XML can contain an archive, which can contain configuration files,
-and additional software. This archive is extracted onto the target-image
-during the buildprocess. It allows you to override any file, which needs to be
-different from the default Debian Install.
-
-This guide also explains how the archive can be extracted from the XML file,
-and vice versa.
-
-ELBE allows manipulating the generated root filesystem through a set of
-`<finetuning>` rules. We also describe, how these can be used to add a user,
-change directory permissions, and remove files from the root filesystem.
-
-Installing ELBE
----------------
-There are several possibilities to install ELBE.
-The simplest method is by installing prebuilt binary packages
-via Linutronix package repository on a Debian 10 (Buster) system.
-
-But ELBE can also be installed from git.
-
-Binary Debian packages
-~~~~~~~~~~~~~~~~~~~~~~
-
-The latest packages for elbe reside in the following repository
-
---------------------------------------------------------
-http://debian.linutronix.de/elbe
---------------------------------------------------------
-
-Install the repository key to a known place (as root):
-
---------------------------------------------------------
-# apt install elbe-archive-keyring || wget -O /usr/share/keyrings/elbe-archive-keyring.gpg http://debian.linutronix.de/elbe/elbe-repo.pub.gpg
---------------------------------------------------------
-
-Add the following content to
-the file `/etc/apt/sources.list`
-
---------------------------------------------------------
-# echo "deb [signed-by=/usr/share/keyrings/elbe-archive-keyring.gpg] http://debian.linutronix.de/elbe buster main" >> /etc/apt/sources.list
---------------------------------------------------------
-
-Then run (as root):
-
---------------------------------------------------------
-# apt update
-# apt install elbe
---------------------------------------------------------
-
-
-Create initvm and submit XML files
-----------------------------------
-The first thing you need to do is set up a virtual-machine for
-generating root-filesystems.
-
-This virtual-machine is referred to as `initvm`. You will want your
-initvm to be the same architecture as your workstation. This allows
-using hardware accelerated virtualization implemented by kvm.
-
-To work with virtual machines as a regular user, the user needs to
-be added to kvm and libvirt groups:
-
---------------------------------------------------------
-# adduser <youruser> kvm
-# adduser <youruser> libvirt
---------------------------------------------------------
-
-Now create an `initvm` subdirectory and builds the initvm inside this directory.
-
--------------------------------------------------------------------------------
- $ elbe initvm create
- Import debian-archive-buster-automatic.gpg:
- gpg: key DC30D7C23CBBABEE: 4 Beglaubigungen wegen fehlender Schlüssel nicht geprüft
- gpg: Schlüssel DC30D7C23CBBABEE: Öffentlicher Schlüssel "Debian Archive Automatic Signing Key (10/buster) <ftpmaster at debian.org>" importiert
- gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
- gpg:                              importiert: 1
- ...
- 
- Installing the base system  ... 17%... 20%... 30%... 40%... 50%... 60%... 70%... 83%... 91%
-            ... 100%
- Configuring apt  ... 14%... 21%... 35%... 40%... 50%... 64%... 71%... 85%... 92%... 100%
- Select and install software
-                              ... 10%... 20%... 30%... 40%... 50%... 61%... 71%... 81%... 78%... 80%... 90%
-                           ... 100%
- Installing GRUB boot loader  ... 16%... 33%... 50%... 66%... 83%... 100%
- The system is going down NOW!.. 12%... 20%... 33%... 41%... 50%... 62%... 70%... 83%... 91%
- Sent SIGKILL to all processes
- Requesting system reboot
- [  656.391904] reboot: Restarting system
- mkdir -p .stamps
- touch .stamps/stamp-install-initial-image
- *****
--------------------------------------------------------------------------------
-
-Submitting an XML file
-----------------------
-
-Submitting an XML file triggers an image build inside the initvm.
-Once the initvm has been created and is running, you can submit XML files using
-
--------------------------------------------------------------------------------
- $ elbe initvm submit examples/x86_64-pc-rescue-busybox-dyn-cpio.xml
- Build started, waiting till it finishes
- [INFO] Build started
- [INFO] ELBE Report for Project x86_64-rescue-image
- Report timestamp: 20191001-135512
- [CMD] reprepro --basedir "/var/cache/elbe/63e09968-c9e7-45d8-8dd2-82c1a8f54f8d/repo" export stretch
- [CMD] mkdir -p "/var/cache/elbe/63e09968-c9e7-45d8-8dd2-82c1a8f54f8d/chroot"
- [INFO] Debootstrap log
- [CMD] dpkg --print-architecture
- [CMD] debootstrap  --include="gnupg" --arch=amd64 "stretch" "/var/cache/elbe/63e09968-c9e7-45d8-8dd2-82c1a8f54f8d/chroot" "http://ftp.de.debian.org//debian"
- I: Retrieving InRelease
- I: Retrieving Release
- I: Retrieving Release.gpg
- I: Checking Release signature
- I: Valid Release signature (key id 067E3C456BAE240ACEE88F6FEF0F382A1A7B6500)
- I: Retrieving Packages
- I: Validating Packages
- I: Resolving dependencies of required packages...
- I: Resolving dependencies of base packages...
- I: Checking component main on http://ftp.de.debian.org//debian...
- I: Retrieving libacl1 2.2.52-3+b1
- I: Validating libacl1 2.2.52-3+b1
- 
- ...
-  79.05% done, estimate finish Mon Aug  1 09:53:26 2022
-  81.77% done, estimate finish Mon Aug  1 09:53:26 2022
-  84.49% done, estimate finish Mon Aug  1 09:53:26 2022
-  87.22% done, estimate finish Mon Aug  1 09:53:26 2022
-  89.95% done, estimate finish Mon Aug  1 09:53:26 2022
-  92.67% done, estimate finish Mon Aug  1 09:53:27 2022
-  95.39% done, estimate finish Mon Aug  1 09:53:27 2022
-  98.12% done, estimate finish Mon Aug  1 09:53:27 2022
- Total translation table size: 0
- Total rockridge attributes bytes: 73534
- Total directory bytes: 355120
- Path table size(bytes): 2354
- Max brk space used bd000
- 183454 extents written (358 MB)
- [INFO] Build finished successfully
- 
- Build finished !
- 
- ELBE Package validation
- =======================
- 
- Package List validation
- -----------------------
- 
- No Errors found
- Binary CD
- Source CD
- 
- Getting generated Files
- 
- Saving generated Files to elbe-build-20220801-095330
- source.xml	(Current source.xml of the project)
- rescue.cpio	(Image)
- licence-chroot.txt	(License file)
- licence-chroot.xml	(xml License file)
- licence-target.txt	(License file)
- licence-target.xml	(xml License file)
- validation.txt		(Package list validation result)
- elbe-report.txt	(Report)
- log.txt	(Log file)
- bin-cdrom.iso	(Repository IsoImage)
- src-cdrom-target.iso	(Repository IsoImage)
- src-cdrom-main.iso	(Repository IsoImage)
- src-cdrom-added.iso	(Repository IsoImage)
--------------------------------------------------------------------------------
-
-The result of the build is stored in elbe-build-<TIMESTAMP> below your current
-working directory.
-
-Ports opened by initvm
-----------------------
-The initvm will open port 7587 on localhost. This is used by the elbe tools
-on your host to communicate with the initvm.
-
-Advanced usage
---------------
-
-ELBE Archive
-~~~~~~~~~~~~
-The ELBE XML file can contain an archivedir which is copied into the
-root-filesystem during the image generation phase.
-
-It is done with the following XML node:
-
-[source,xml]
-------------------------------------------------------------------------------
-<archivedir>foo</archivedir>
-------------------------------------------------------------------------------
-
-archivedir
-~~~~~~~~~~
-
-The new XML element ‘archivedir’ points to a local directory and adds
-the content into a newly created archive. ‘archivedir’ can be specified
-more than once. The content of the directories is copied in order of
-appearance. Existing files are overwritten by the later ones.
-
-Example snippet to use ‘archivedir’:
-
-[source,xml]
-------------------------------------------------------------------------------
-<archivedir>foo</archivedir>
-<archivedir variant="production">bar</archivedir>
-------------------------------------------------------------------------------
-
-
-Adding packages to the "list of packages to install"
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The XML file contains a 'list of packages to install' `<pkg-list>` in the
-`<target>` XML node. Inserting a line containing
-
-[source,xml]
-------------------------------------------------------------------------------
-<pkg>util-linux</pkg>
-------------------------------------------------------------------------------
-
-will add the `util-linux` package to the target-rfs.
-
-
-Using the finetuning rules
-~~~~~~~~~~~~~~~~~~~~~~~~~~
-An ELBE XML file can contain a set of finetuning rules. Finetuning is used to
-customize the target-rfs, e.g. remove man-pages. Here is an example
-finetuning from `/usr/share/doc/elbe-doc/examples/elbe-desktop.xml`:
-
-[source,xml]
-------------------------------------------------------------------------------
-<finetuning>
-	<rm>var/cache/apt/archives/*.deb</rm>
-	<adduser passwd="elbe" shell="/bin/bash">elbe</adduser>
-</finetuning>
-------------------------------------------------------------------------------
-
-rm
-^^
-The `<rm>` node removes files from the target-rfs.
-
-adduser
-^^^^^^^
-The adduser node allows to create a user.
-The following example creates the user `elbe` with the password `foo`.
-
-It is also possible to specify groups the new user should be part of:
-
-[source,xml]
-------------------------------------------------------------------------------
-<adduser passwd="foo" shell="/bin/bash" groups="audio,video,dialout">elbe</adduser>
-------------------------------------------------------------------------------
-
-Instead of specifying a plain-text password, it is also possible to use
-hashed passwords in the XML. Hashed passwords can be either converted by the
-Elbe preprocessing (`elbe preprocess <xml>`), with the tool `mkpasswd` or
-with various hashing libraries like crypt (C/C++) or passlib (Python).
-
-In this example, the command `mkpasswd` is used to hash the plain-text
-password `elbe`. If the salt is not specified, `mkpasswd` will use a random
-salt.
-
-------------------------------------------------------------------------------
-mkpasswd --method=sha512crypt --rounds=656000 --salt=7vWuOPVX0YKaISh5 "elbe"
-------------------------------------------------------------------------------
-
-The generated line contains the hashing parameters and the hashed password
-and has to be copied completely to the `passwd_hashed` attribute in the XML.
-
-[source,xml]
-------------------------------------------------------------------------------
-<adduser passwd_hashed="$6$rounds=656000$7vWuOPVX0YKaISh5$cJhevq/z7kJ215n18dnksv/zOeUf6uPoLgICwLeTSu/2xoLHkyYQABaM7a99sQmpilCV.SlK9jfHZz3m7/s2a." shell="/bin/bash">elbe</adduser>
-------------------------------------------------------------------------------
-
-Changing ownership of directories or files
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-There is currently no special finetuning node for `chmod` and `chown`.
-These commands needs to be specified via the command tag, which allows running
-any command that is available in the target-rfs.
-
-[source,xml]
-------------------------------------------------------------------------------
-<command>chown elbe:elbe /mnt</command>
-<command>chmod 777 /mnt</command>
-------------------------------------------------------------------------------
-
-Further Example
-^^^^^^^^^^^^^^^
-A more complete example can be found in the ELBE overview document that is
-installed at `/usr/share/doc/elbe-doc/elbeoverview-en.html`
-
-Using the Elbe Pbuilder Feature
--------------------------------
-
-Since Version 1.9.2, elbe is able to create a pbuilder Environment.
-You can create a pbuilder for a specific xml File inside the initvm.
-
-The repositories and architecture specified in the xml File will be used
-to satisfy build dependencies. It is possible to crosscompile packages for a
-foreign architecture. To do so use the 'elbe pbuilder create' command with the
---cross option. This will setup the right environment for crosscompiling. To
-use this environment you have to use the --cross option with the build command.
-(If the environment was created with the --cross option, the build command
-must be used with --cross too. Otherwise it will throw an error.) By creating
-an environment the compiler cache `ccache` gets installed by default to speed
-up recompilations. It is possible to change the size or to deactivate it if it
-is not needed. Pbuilder will only build debianised Software.
-
-A pbuilder instance is always associated with a project inside the initvm.
-The `pbuilder create` command will write the project uuid to a file, if instructed to
-do so.
-
-`pbuilder build` works like `pdebuild`, in that it uploads the current working directory
-into the initvm pbuilder project, and then builds it using the pbuilder instance
-created earlier.
-
-Here is an example:
-
----------------------------------------------------------
-$ elbe pbuilder create --xmlfile examples/x86_64-pc-rescue-busybox-dyn-cpio.xml --writeproject ../pbuilder.prj
-$ git clone https://github.com/Linutronix/libgpio.git
-$ cd  libgpio/
-$ elbe pbuilder build --project `cat ~/repos/elbe/pbuilder.prj` --out ../out/
----------------------------------------------------------
-
-With these steps, elbe builds the libgpio project inside the initvm and stores the built packages in an internal repository. Every package, built in this manner, will also be stored in that repository.
-This repository can be used for later RFS builds.
-
-List contents of the repository with the following command:
-
----------------------------------------------------------
-$ elbe prjrepo list_packages `cat ~/repos/elbe/pbuilder.prj`
-libgpio-dev_3.0.0_amd64.deb
-libgpio1_3.0.0_amd64.deb
-libgpio1-dbgsym_3.0.0_amd64.deb
----------------------------------------------------------
-
-To use this repository for further RFS builds download the repo with:
-
----------------------------------------------------------
-$ elbe prjrepo download `cat ~/repos/elbe/pbuilder.prj`
----------------------------------------------------------
-
-The repository is download as elbe-projectrepo-20191002-114244.tar.gz.
-This should be unpacked in the DocumentRoot of your webserver and customized with
-your key as explained in the next chapter.
-
-Here is an example for crosscompiling a linux kernel with debian profiles:
-
----------------------------------------------------------
-$ elbe pbuilder --cross create --xmlfile examples/armhf-ti-beaglebone-black.xml --writeproject pbuilder.prj
-$ apt source linux
-$ cd linux*/
-$ ../elbe pbuilder --cross --origfile ../linux*.orig.tar.xz --profile nodoc,nopython build --project `cat ../pbuilder.prj`
----------------------------------------------------------
-
-Custom Repository
------------------
-
-You might have your own packages which should be installed into your image. This
-can be done with a custom repository. You can use
-link:https://mirrorer.alioth.debian.org/[reprepro] to create your own
-repository or the above mentioned pbuilder feature.
-
-Repository Key
-~~~~~~~~~~~~~~
-
-Because the repository needs to be signed using `gpg`, a key needs to be
-generated.
-
-------------------------------------------------------------------------------
--> gpg --default-new-key-algo rsa4096 --gen-key
-gpg (GnuPG) 2.1.18; Copyright (C) 2017 Free Software Foundation, Inc.
-This is free software: you are free to change and redistribute it.
-There is NO WARRANTY, to the extent permitted by law.
-
-Note: Use "gpg --full-generate-key" for a full featured key generation dialog.
-
-GnuPG needs to construct a user ID to identify your key.
-
-Real name: Torben Hohn
-Email address: torben.hohn at linutronix.de
-You selected this USER-ID:
-    "Torben Hohn <torben.hohn at linutronix.de>"
-
-Change (N)ame, (E)mail, or (O)kay/(Q)uit? O
-We need to generate a lot of random bytes. It is a good idea to perform
-some other action (type on the keyboard, move the mouse, utilize the
-disks) during the prime generation; this gives the random number
-generator a better chance to gain enough entropy.
-gpg: key 68E68615BB6CB47C marked as ultimately trusted
-gpg: directory '/home/torbenh/.gnupg/openpgp-revocs.d' created
-gpg: revocation certificate stored as '/home/torbenh/.gnupg/openpgp-revocs.d/CF837F1AAAC35E084062AE4468E68615BB6CB47C.rev'
-public and secret key created and signed.
-
-Note that this key cannot be used for encryption.  You may want to use
-the command "--edit-key" to generate a subkey for this purpose.
-pub   rsa4096 2018-10-08 [SC] [expires: 2020-10-07]
-      CF837F1AAAC35E084062AE4468E68615BB6CB47C
-      CF837F1AAAC35E084062AE4468E68615BB6CB47C
-uid                      Torben Hohn <torben.hohn at linutronix.de>
--------------------------------------------------------------------------------
-
-Please note the keyname (here `CF837F1AAAC35E084062AE4468E68615BB6CB47C`).
-This keyname can then be used to export the public key into a repo.pub file.
-
--------------------------------------------------------------------------------
-gpg --export --armor CF837F1AAAC35E084062AE4468E68615BB6CB47C > repo.pub
--------------------------------------------------------------------------------
-
-reprepro configuration
-~~~~~~~~~~~~~~~~~~~~~~
-
-To create your own repository with reprepro or the elbe pbuilder feature you need only the `distributions`
-configuration file. For an `amd64` and `source` repository for Debian `stretch` it
-might look as follows:
-
--------------------------------------------------------------------------------
-Origin: mylocal
-Label: mylocal
-Suite: stable
-Codename: stretch
-Architectures: amd64 source
-Components: main
-Description: my local repo
-SignWith: CF837F1AAAC35E084062AE4468E68615BB6CB47C
--------------------------------------------------------------------------------
-
-NOTE: the `SignWith:` field needs to be the key of the previously generated
-      key.
-
-Now place the `distributions` file in a `conf` named directory.
-also put `repo.pub` into your `repo` directory.
-
--------------------------------------------------------------------------------
-repo/
-├── conf
-│   └── distributions
-└── repo.pub
--------------------------------------------------------------------------------
-
-insert pkgs into repo
-~~~~~~~~~~~~~~~~~~~~~
-
-To include packages in your repository you might use the following command from
-inside the `repo` directory:
-
--------------------------------------------------------------------------------
-$ reprepro include stretch ../path/to/your/*.changes
--------------------------------------------------------------------------------
-
-To use this repository from ELBE you need a webserver. Simply place the
-repository inside the document root of your webserver.
-
-If the webserver is running on the same machine as the initvm you can use the
-following to access the repository:
-
-[source,xml]
--------------------------------------------------------------------------------
-<url-list>
-	<url>
-		<binary>http://LOCALMACHINE/repo/ buster main</binary>
-		<source>http://LOCALMACHINE/repo/ buster main</source>
-		<key>http://LOCALMACHINE/repo/repo.pub</key>
-	</url>
-</url-list>
--------------------------------------------------------------------------------
-
-ELBE replaces the string `LOCALMACHINE` with the ip address of your machine. If
-you use an external machine as webserver you need to replace `LOCALMACHINE` with
-the name or the ip of it.
-
-
-Now you can install packages from your custom repository the same way you can
-install from any other repository.
diff --git a/elbepack/commands/xsdtoasciidoc.py b/elbepack/commands/xsdtoasciidoc.py
deleted file mode 100644
index b73e6d4bd0bd..000000000000
--- a/elbepack/commands/xsdtoasciidoc.py
+++ /dev/null
@@ -1,39 +0,0 @@
-# ELBE - Debian Based Embedded Rootfilesystem Builder
-# SPDX-License-Identifier: GPL-3.0-or-later
-# SPDX-FileCopyrightText: 2013-2017 Linutronix GmbH
-
-import importlib.resources
-import sys
-from optparse import OptionParser
-
-import elbepack
-from elbepack.templates import write_template
-from elbepack.treeutils import etree
-
-
-def run_command(argv):
-    oparser = OptionParser(
-        usage='usage: %prog xsdtoasciidoc [options] <xsdfile>')
-
-    oparser.add_option('--output', dest='out',
-                       help='specify output filename',
-                       metavar='FILE')
-
-    (opt, args) = oparser.parse_args(argv)
-
-    if len(args) != 1:
-        print('Wrong number of arguments')
-        oparser.print_help()
-        sys.exit(90)
-
-    xml = etree(args[0])
-
-    if not opt.out:
-        print('--output is mandatory')
-        sys.exit(91)
-
-    d = {'opt': opt,
-         'xml': xml}
-
-    template = importlib.resources.files(elbepack) / 'xsdtoasciidoc.mako'
-    write_template(opt.out, template, d)
diff --git a/elbepack/xsdtoasciidoc.mako b/elbepack/xsdtoasciidoc.mako
deleted file mode 100644
index 644aafaa188b..000000000000
--- a/elbepack/xsdtoasciidoc.mako
+++ /dev/null
@@ -1,175 +0,0 @@
-## ELBE - Debian Based Embedded Rootfilesystem Builder
-## SPDX-License-Identifier: GPL-3.0-or-later
-## SPDX-FileCopyrightText: 2013, 2017 Linutronix GmbH
-
-<%
-import string
-import textwrap
-ELEM = "{http://www.w3.org/2001/XMLSchema}element"
-CPLX = "{http://www.w3.org/2001/XMLSchema}complexType"
-DOC  = "{http://www.w3.org/2001/XMLSchema}annotation/{http://www.w3.org/2001/XMLSchema}documentation"
-ATTR = "{http://www.w3.org/2001/XMLSchema}attribute"
-SEQ  = "{http://www.w3.org/2001/XMLSchema}sequence"
-SIMP = "{http://www.w3.org/2001/XMLSchema}simpleType"
-GRP  = "{http://www.w3.org/2001/XMLSchema}group"
-RSTR = "{http://www.w3.org/2001/XMLSchema}restriction"
-MAXI = "{http://www.w3.org/2001/XMLSchema}maxInclusive"
-MINI = "{http://www.w3.org/2001/XMLSchema}minInclusive"
-
-def docindent(node, indent=0):
-  try:
-    s = node.text(".//%s" % DOC)
-  except:
-    return "FIXME - I have no documentation"
-  else:
-    return textwrap.indent(textwrap.dedent(s), indent*" ").strip("\n")
-
-def genlink(typ):
-  if typ.startswith("rfs:"):
-    return "<<"+typ[4:]+","+typ+">>"
-  else:
-    return typ
-
-def stripscheme(s):
-  scheme = "{http://www.w3.org/2001/XMLSchema}"
-  if s.startswith(scheme):
-    return s[len(scheme):]
-  else:
-    return s
-
-def cardinality(e):
-  min = None
-  max = None
-
-  retval = ""
-
-  if e.et.attrib.has_key('minOccurs'):
-    min = e.et.attrib['minOccurs']
-
-  if e.et.attrib.has_key('maxOccurs'):
-    min = e.et.attrib['maxOccurs']
-
-  if min=="0":
-    retval += "*optional* "
-
-  if max=="1" and min=="1":
-    retval += "*mandatory"
-
-  return retval
-
-def element_example(n):
-    name = n.et.attrib["name"]
-    _type = n.et.attrib["type"]
-    return "<%s> %s </%s>" % (name, _type, name)
-
-def doc(e):
-  return docindent(e, 2)
-
-def element_doc(e):
-    name = e.et.attrib["name"]
-    _type = e.et.attrib["type"]
-    return "%s %s %s::\n%s" % (name,
-                               genlink(_type),
-                               cardinality(e),
-                               doc(e))
-def attr_doc(a):
-    if "name" in a.et.attrib:
-        return "[attr] %s" % element_doc(a)
-    return ""
-%>\
-##
-<%def name="do_element(n)">
-== ${n.et.attrib["name"]} type: '${n.et.attrib["type"]}' ==
-
-${docindent(n)}
-</%def>\
-##
-<%def name="do_simple(n)">
-[[${n.et.attrib["name"]}]]
-==  SIMPLE TYPE: ${n.et.attrib["name"]} ==
-
-${docindent(n)}
-
-%if n.has(RSTR):
-=== Base Type === 
-'${n.node(RSTR).et.attrib["base"]}'
-
-
-=== Restrictions ===
-
-[width="60%"]
-|=====================================
-%for r in n.node(RSTR):
-| '${stripscheme(r.tag)}' | ${r.et.attrib["value"]} 
-%endfor
-|=====================================
-%endif
-</%def>\
-##
-<%def name="do_group(n)">
-[[${n.et.attrib["name"]}]]
-==  GROUP : ${n.et.attrib["name"]} ==
-
-${docindent(n)}
-
-
-% for e in n.all(".//%s" % ELEM):
-${printnode(e)}
-% endfor
-
-</%def>\
-##
-<%def name="printnode(n)">
-%   if n.tag == ELEM:
-${do_element(n)}
-%   elif n.tag == SIMP:
-${do_simple(n)}
-%   elif n.tag == CPLX:
-${do_complex(n)}
-%   elif n.tag == GRP:
-${do_group(n)}
-%   endif
-</%def>\
-##
-<%def name="do_complex(n)">
-[[${n.et.attrib["name"]}]]
-== TYPE: ${n.et.attrib["name"]} ==
-
-${docindent(n)}
-
-=== Example ===
-[xml]
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-<${n.et.attrib["name"]}>\
-% for e in n.all(".//%s" % ELEM):
-
-  ${element_example(e)}
-% endfor
-
-% for ref in n.all(".//%s" % GRP):
-% for g in xml.all('./%s[@name="%s"]' % (GRP, ref.et.attrib["ref"].strip("rfs:"))):
-% for e in g.all(".//%s" % ELEM):
-  ${element_example(e)}
-% endfor
-% endfor
-% endfor
-</${n.et.attrib["name"]}>
-source~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-=== Elements description ===
-
-% for a in n.all(".//%s" % ATTR):
-${attr_doc(a)}
-
-% endfor
-% for e in n.all(".//%s" % ELEM):
-${element_doc(e)}
-
-% endfor
-</%def>\
-##
-Elbe XML Schema reference
-=========================
-% for n in xml.all('./'):
-${printnode(n)}\
-% endfor
diff --git a/setup.py b/setup.py
index d00f3981e2b2..ff79c6299bb7 100644
--- a/setup.py
+++ b/setup.py
@@ -59,7 +59,6 @@ setup(name='elbe',
                                  'init/*.mako',
                                  'init/*.xml',
                                  'default-preseed.xml',
-                                 'xsdtoasciidoc.mako',
                                  'schema/dbsfed.xsd',
                                  'schema/xml.xsd']},
       scripts=['elbe'],

-- 
2.44.0



More information about the elbe-devel mailing list