Nix: Get rid of the Perl dependency

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.

Donations (0)

  • Jozko Skrablin 
    • $68 
    • 44 mos
  • Tuomas Tynkkynen 
    • $42 
    • 44 mos
  • Sergey Mironov 
    • $10 
    • 44 mos
  • Badi' Abdul-Wahid 
    • $100 
    • 44 mos
  • Anonymous 
    • $50 
    • 44 mos

Organizer and beneficiary 

Domen Kožar 
Organizer
Portsmouth, NH
Shea Levy 
Beneficiary
  • #1 fundraising platform

    People have raised more money on GoFundMe than anywhere else. Learn more

  • GoFundMe Guarantee

    In the rare case that something isn’t right, we will refund your donation. Learn more

  • Expert advice, 24/7

    Contact us with your questions and we’ll answer, day or night. Learn more