doc/builders/packages/xorg: Convert to CommonMark.

I had to pick 7.4 or 7.5. I picked 7.4 for now.
This commit is contained in:
Corbin 2020-11-30 09:36:18 -08:00
parent 6c407c7077
commit e0fbc4d14c
3 changed files with 42 additions and 35 deletions

View file

@ -21,5 +21,5 @@
<xi:include href="cataclysm-dda.section.xml" />
<xi:include href="urxvt.xml" />
<xi:include href="weechat.section.xml" />
<xi:include href="xorg.xml" />
<xi:include href="xorg.section.xml" />
</chapter>

View file

@ -0,0 +1,41 @@
# X.org {#sec-xorg}
The Nix expressions for the X.org packages reside in
`pkgs/servers/x11/xorg/default.nix`. This file is automatically generated from
lists of tarballs in an X.org release. As such it should not be modified
directly; rather, you should modify the lists, the generator script or the
file `pkgs/servers/x11/xorg/overrides.nix`, in which you can override or add
to the derivations produced by the generator.
The generator is invoked as follows:
```sh
cd pkgs/servers/x11/xorg
cat tarballs-7.4.list extra.list old.list | perl ./generate-expr-from-tarballs.pl
```
For each of the tarballs in the `.list` files, the script downloads it,
unpacks it, and searches its `configure.ac` and `*.pc.in` files for
dependencies. This information is used to generate `default.nix`. The
generator caches downloaded tarballs between runs. Pay close attention to the
`NOT FOUND: $NAME` messages at the end of the run, since they may indicate
missing dependencies. (Some might be optional dependencies, however.)
A file like `tarballs-7.4.list` contains all tarballs in a X.org release. It
can be generated like this:
```sh
export i="mirror://xorg/X11R7.4/src/everything/"
cat $(PRINT_PATH=1 nix-prefetch-url $i | tail -n 1) \
| perl -e 'while (&lt;>) { if (/(href|HREF)="([^"]*.bz2)"/) { print "$ENV{'i'}$2\n"; }; }' \
| sort > tarballs-7.4.list
```
`extra.list` contains libraries that arent part of X.org proper, but are
closely related to it, such as `libxcb`. `old.list` contains some packages
that were removed from X.org, but are still needed by some people or by other
packages (such as `imake`).
If the expression for a package requires derivation attributes that the
generator cannot figure out automatically (say, `patches` or a `postInstall`
hook), you should modify `pkgs/servers/x11/xorg/overrides.nix`.

View file

@ -1,34 +0,0 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="sec-xorg">
<title>X.org</title>
<para>
The Nix expressions for the X.org packages reside in <filename>pkgs/servers/x11/xorg/default.nix</filename>. This file is automatically generated from lists of tarballs in an X.org release. As such it should not be modified directly; rather, you should modify the lists, the generator script or the file <filename>pkgs/servers/x11/xorg/overrides.nix</filename>, in which you can override or add to the derivations produced by the generator.
</para>
<para>
The generator is invoked as follows:
<screen>
<prompt>$ </prompt>cd pkgs/servers/x11/xorg
<prompt>$ </prompt>cat tarballs-7.5.list extra.list old.list \
| perl ./generate-expr-from-tarballs.pl
</screen>
For each of the tarballs in the <filename>.list</filename> files, the script downloads it, unpacks it, and searches its <filename>configure.ac</filename> and <filename>*.pc.in</filename> files for dependencies. This information is used to generate <filename>default.nix</filename>. The generator caches downloaded tarballs between runs. Pay close attention to the <literal>NOT FOUND: <replaceable>name</replaceable></literal> messages at the end of the run, since they may indicate missing dependencies. (Some might be optional dependencies, however.)
</para>
<para>
A file like <filename>tarballs-7.5.list</filename> contains all tarballs in a X.org release. It can be generated like this:
<screen>
<prompt>$ </prompt>export i="mirror://xorg/X11R7.4/src/everything/"
<prompt>$ </prompt>cat $(PRINT_PATH=1 nix-prefetch-url $i | tail -n 1) \
| perl -e 'while (&lt;>) { if (/(href|HREF)="([^"]*.bz2)"/) { print "$ENV{'i'}$2\n"; }; }' \
| sort > tarballs-7.4.list
</screen>
<filename>extra.list</filename> contains libraries that arent part of X.org proper, but are closely related to it, such as <literal>libxcb</literal>. <filename>old.list</filename> contains some packages that were removed from X.org, but are still needed by some people or by other packages (such as <varname>imake</varname>).
</para>
<para>
If the expression for a package requires derivation attributes that the generator cannot figure out automatically (say, <varname>patches</varname> or a <varname>postInstall</varname> hook), you should modify <filename>pkgs/servers/x11/xorg/overrides.nix</filename>.
</para>
</section>