2017-02-01 1 views
1

J'ai besoin de modifier configureFlags de pcre paquet de <nixpkgs>. J'ai essayé de le faire avec le fichier .nixpkgs/config.nix comme décrit here:Comment personnaliser un package <nixpkgs> configureFlags

{ 
    packageOverrides = pkgs: rec { 
    pcre = pkgs.pcre.overrideDerivation (attrs: { 
     configureFlags = [ 
     "--disable-jit" 
     "--enable-unicode-properties" 
     "--disable-cpp" 
     ]; 
     doCheck = ""; 
    }); 
    }; 
} 

Mais cela ne fonctionne pas. Quand je cours nix-build -p pcre il construit le paquet deux fois: avec --disable-jit et avec --enable-jit. Lorsque je cours nix-build -p stdenv personnalisations dans config.nix sont ignorés.

Répondre

2

stdenv est spécial car il est utilisé pour construire des paquets "normaux" (et vous remplacez pcre comme paquet "normal"). Donc, pour que les personnalisations fonctionnent, vous devez corriger stdenv!

Par exemple, vous pouvez utiliser l'une des fonctions adapters.

Si vous souhaitez intégrer pcre plus profondément, vous devez regarder dans staged stdenv building