Previously we used nodePackages only to fetch Iosevka's build
dependencies and then fetched the source code ourselves. Updates
involved changing the version and hashes in the `iosevka` derivation and
then running node-packages/generate.sh to update the build dependencies,
which in turns updates *all* of node-packages.nix.
A new proposed policy for handling node-packages.nix updates involves
batching those updates. Previously, that would mean `iosevka` and its
build dependencies could end up out of sync until the batched update was
run.
To work with the new policy, we now fetch Iosevka's source code (and
not only its dependencies) through nodePackages. Updates are done by
changing the source URL in node-packages.json, which eventually becomes
part of an update of node-packages.nix, which is then propagated to
`iosevka` itself.
One con of this strategy is that errors can not be caught directly
after the update, but only after node-packages.nix is regenerated.
This commit combines several individual PRs which would have resulted in
merge conflicts in the generated JSON files. Instead, the "generate.sh"
script is only ran once.
Due to "makam" not building on MacOS in the form it was originally added
in the PR I made some adjustments to this diff.
List of added packages:
- nodePackages.clubhouse-cli: init at 2.1.0
- nodePackages.makam: init at 0.7.17
- nodePackages.inliner: init at 1.13.1
- nodePackages.sass: init at 1.27.0
- nodePackages.undollar: init at 1.0.0
Co-authoring is used to preserve contributions.
Co-authored-by: Changlin Li <mail@changlinli.com>
Co-authored-by: Pasquale <p3dimaria@hotmail.it>
Co-authored-by: Teodoro Freund <teodoro.freund@tweag.io>
Co-authored-by: Tobias Mayer <tobim@fastmail.fm>
Co-authored-by: vladki <vlad@kirillov.im>
generate.sh seems to remove changes to node-env.nix, fortunately
.override seems to work so .overrideNodeAttrs does not actually
seem necessary. Not sure why I did not use it before.