2016-05-15 9 views
0

hinzuzufügen habe ich zur Zeit in meinem nixpkgs.configWie Linux-config in configuration.nix

packageOverrides = pkgs: rec { 
    netbeans81 = pkgs.stdenv.lib.overrideDerivation pkgs.netbeans (oldAttrs: { 
    name = "netbeans-8.1"; 
    src = pkgs.fetchurl { 
     url = http://download.netbeans.org/netbeans/8.1/final/zip/netbeans-8.1-201510222201.zip; 
     md5 = "361ce18421761a057bad5cb6cf7b58f4"; 
    }; 
    }); 
}; 

und ich möchte eine Kernel-Konfiguration hinzuzufügen. Ich fügte dieses

packageOverrides = pkgs: { 
    stdenv = pkgs.stdenv // { 
     platform = pkgs.stdenv.platform // { 
      kernelExtraConfig = "SND_HDA_PREALLOC_SIZE 4096"; 
     }; 
    }; 
}; 

hinzu, aber das hat nicht funktioniert. Das Problem ist packageOverrides ist bereits definiert.

Wie kann ich die Kernel-Konfigurationen und meine Netbeans-Overrides hinzufügen?

+0

einen besseren Namen für Ihre Frage könnte sein – Gilly

Antwort

1

In der Nix-Sprache, geschweifte Klammern ({}) Attributsätze (nicht Bereich wie in C++ etc.). Sie können mehrere Elemente in einem einzelnen Attributsatz haben (Attr-Sets sind wie Dicts in Python). Auch ist Nix eine funktionale Sprache, was bedeutet, dass es keinen Staat gibt. Dies wiederum bedeutet, dass Sie eine Variable im selben Umfang nicht neu definieren können. In den Worten von Eminem: "Du bekommst nur einen Schuss".

Versuchen Sie folgendes:

packageOverrides = pkgs: rec { 

    netbeans81 = pkgs.stdenv.lib.overrideDerivation pkgs.netbeans (oldAttrs: { 
    name = "netbeans-8.1"; 
    src = pkgs.fetchurl { 
     url = http://download.netbeans.org/netbeans/8.1/final/zip/netbeans-8.1-201510222201.zip; 
     md5 = "361ce18421761a057bad5cb6cf7b58f4"; 
    }; 
    }); 

    stdenv = pkgs.stdenv // { 
    platform = pkgs.stdenv.platform // { 
     kernelExtraConfig = "SND_HDA_PREALLOC_SIZE 4096"; 
    }; 
    }; 

}; 
+1

Dieses genau „Wie mehrere‚packageOverrides‘Definitionen in configuration.nix hinzufügen“, was ich tun endete nach einigen der nix Pillen lesen . –

+0

Ja, die Nix-Pillen sind großartig. Der Link für andere Besucher ist http://lethalman.blogspot.com.au/2014/07/nix-pill-1-why-you-should-give-it-try.html – Gilly