Nix: Get rid of the Perl dependency
Donation protected
Motivation
The goal is to get rid of Perl as runtime dependency for Nix package manager.
This will have many implications:
- reduce closure size of Nix by 50 MB
- Nix will be written only in C++ (and some bash)
- better cross-platform (cross compile) support
Level of effort
The work consists of converting each of the scripts in the scripts/ directory (except the shell scripts, nix-http-export, nix-reduce-build, and show-duplication) into standalone c++ programs.
It may be natural to add some stuff to core Nix libraries as part of that.
If necessary for external projects (e.g. hydra) the nix/perl directory can be kept there and built as a separate package.
Note: Manifests (preceeding binary caches) and binary patching (depends on manifests) won't be ported as part of this effort. The feature will be dropped.
Developer: Shea Levy
Shea is a core contributor to NixOS ecosystem in general. He is also second top contribor to Nix (by number of commits).
Shea is going to implement this proposal if we meet the funding goal.
The goal is to get rid of Perl as runtime dependency for Nix package manager.
This will have many implications:
- reduce closure size of Nix by 50 MB
- Nix will be written only in C++ (and some bash)
- better cross-platform (cross compile) support
Level of effort
The work consists of converting each of the scripts in the scripts/ directory (except the shell scripts, nix-http-export, nix-reduce-build, and show-duplication) into standalone c++ programs.
It may be natural to add some stuff to core Nix libraries as part of that.
If necessary for external projects (e.g. hydra) the nix/perl directory can be kept there and built as a separate package.
Note: Manifests (preceeding binary caches) and binary patching (depends on manifests) won't be ported as part of this effort. The feature will be dropped.
Developer: Shea Levy
Shea is a core contributor to NixOS ecosystem in general. He is also second top contribor to Nix (by number of commits).
Shea is going to implement this proposal if we meet the funding goal.
Organizer and beneficiary
Domen Kožar
Organizer
Portsmouth, NH
Shea Levy
Beneficiary