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).
There are many more packages to fix, this is just a start.
Rules:
* Don't repeat the package name (not always that easy...)
* Start with capital letter
* Don't end with full stop
* Don't start with "The ..." or "A ..."
I've also added descriptions to some packages and rewritten others.
"jailbreak" did not work for this package
Also, I force a downgrade for "hashable" to make stuff work with our current haskell platform. If you don't like running things "below spec", you can add the following to packageOverrides:
haskellPackages_ghc763 = pkgs.haskellPackages_ghc763.override {
extraPrefs = self: {
hashable = self.hashable_1_2_1_0;
};
};
Rename NetworkManager-dispatcher.service to
dbus-org.freedesktop.nm-dispatcher.service so it is found by systemd (NixOS
doesn't handle the Alias directive in the unit file)
The new wrapper creates an environment that contains all files from
Python and the extra libraries that have been specified. All files are
found at run-time by means of the $PYTHONHOME variable; the wrapper no
longer uses $PYTHONPATH.