The current FlightGear expression doesn't work:
bash$ nix-build -A flightgear
/nix/store/3c47sibzb9h1vhnn0gnh692hkpjc5p5v-flightgear-2.10.0
bash$ ./result/bin/fgfs
ERROR: The path '/nix/store/3c47sibzb9h1vhnn0gnh692hkpjc5p5v-flightgear-2.10.0/lib/FlightGear' does not exist in the file system.
Base package check failed:
Version [none] found at: /nix/store/3c47sibzb9h1vhnn0gnh692hkpjc5p5v-flightgear-2.10.0/lib/FlightGear
Version 2.10.0 is required.
Please upgrade/downgrade base package and set the path to your fgdata
with --fg-root=path_to_your_fgdata
We could probably make the 2.10.0 version run, but I had already
upgraded it to 2.12.0 before I made it work. It seems only the data dir
configuration was wrong/missing: FG_DATA_DIR="$out/share/FlightGear/".
Simgear must be in version sync with flightgear, hence the upgrade.
Most of the diff is because I rewrote the flightgear expression to what
I think is the "new style". I wanted to add a preConfigure phase but
didn't understand why this expression had custom phases. So I just
rewrote the whole thing to something I consider more readable.
The current asciidoc expression is impure; it relies on several tools to
be found in PATH at runtime. This commit adds a enableStandardFeatures
parameter that, if true, pulls in all dependencies and patches asciidoc
to contain full paths to the tools.
I've set enableStandardFeatures = false for the existing asciidoc
attribute so that the closure size stays unchanged, at 255 MiB. The new
asciidocFull attribute (with enableStandardFeatures = true) has a
closure size of 1.5 GiB.
imagemagick, transfig, inkscape, fontconfig and ghostscript are missing
dependencies of dblatex. Instead of adding all those dependencies to the
existing dblatex attribute, make a new dblatexFull attribute for that.
Also pass --use-python-path at install time so that script shebangs end
up with #!/path/to/python instead of #!/path/to/env python (which is
impure when not run in a wrapper).
* Remove package name
* Start with upper case letter
* Remove trailing period
Also reword some descriptions and move some long descriptions to
longDescription.
I'm not touching generated packages.
It now only checks that each derivation's drvPath attribute evaluates.
Previously it checked everything (via toXML) but that causes
derivations with dubious passthru attribute to fail (see commit
70fee5da112b8a0093d59ac16cdead4d0a72f357).