Commit e20232eab6 moved ZIG_GLOBAL_CACHE_DIR setup from an
addEnvHooks call (which ran before all phases) into zigConfigurePhase.
This broke zls because $ZIG_GLOBAL_CACHE_DIR was unset during
postPatch, causing `ln -s ... /p` (Permission denied).
Move the symlink creation to postConfigure where the variable is now
available.
Without the change the build in` staging` fails as:
In file included from ../lib/Controller/DocumentHighlight.cpp:10:
../include/nixd/Controller/Controller.h:139:48: error: 'default_thread_pool_size' is not a member of 'boost::asio::detail'
139 | static_cast<size_t>(boost::asio::detail::default_thread_pool_size())};
| ^~~~~~~~~~~~~~~~~~~~~~~~
Co-authored-by: Doron Behar <doron.behar@gmail.com>
E.g. when applying bubblewrap jails with jail.nix to sbt, to reduce the
blast radius of software delivery chain attacks, a warning is emitted by
the lib.meta.getExe function. But this does not depend on the external
jails.nix project, at all. This happens with every caller of the getExe
function on sbt inside nixpkgs as well.
evaluation warning: getExe: Package "sbt-1.11.7" does not have the
meta.mainProgram attribute. We'll assume that the main program has
the same name for now, but this behavior is deprecated, because it
leads to surprising errors when the assumption does not hold. If the
package has a main program, please set `meta.mainProgram` in its
definition to make this warning go away. Otherwise, if the package
does not have a main program, or if you don't control its
definition, use getExe' to specify the name to the program, such as
lib.getExe' foo "bar".
some of these were just typos like `finalAttr`, `finalAtts` or `finaAttrs`
some of these were using `self`, `final`, `finalPackage`, `attrs` or `_`
some of these were wrong by using `oldAttrs` or `finalPackages`
other than the nixos manual this shouldn't create any rebuilds