diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2019-10-22 09:20:03 +0200 |
---|---|---|
committer | Frederik Rietdijk <fridh@fridh.nl> | 2019-10-22 09:20:03 +0200 |
commit | a456fbfeed62794a5b31839b37417d40c0890c71 (patch) | |
tree | b52be81d028cc2207016da637c178146936fdbbc /doc/packages/xorg.xml | |
parent | 43bbecea5e1dd1cfc163b790c1f388a563442ed1 (diff) | |
parent | d3baf946b767ce64e6a352af0bf6cad1851c4a74 (diff) | |
download | nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar.gz nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar.bz2 nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar.lz nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar.xz nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.tar.zst nixpkgs-a456fbfeed62794a5b31839b37417d40c0890c71.zip |
Merge staging-next into staging
Diffstat (limited to 'doc/packages/xorg.xml')
-rw-r--r-- | doc/packages/xorg.xml | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/doc/packages/xorg.xml b/doc/packages/xorg.xml new file mode 100644 index 00000000000..4526121687f --- /dev/null +++ b/doc/packages/xorg.xml @@ -0,0 +1,34 @@ +<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 (<>) { if (/(href|HREF)="([^"]*.bz2)"/) { print "$ENV{'i'}$2\n"; }; }' \ + | sort > tarballs-7.4.list +</screen> + <filename>extra.list</filename> contains libraries that aren’t 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> \ No newline at end of file |