diff --git a/doc/haskell-users-guide.xml b/doc/haskell-users-guide.xml index e0dc89cc7ce..9a945d30a9b 100644 --- a/doc/haskell-users-guide.xml +++ b/doc/haskell-users-guide.xml @@ -712,7 +712,7 @@ text-1.2.0.4-98506efb1b9ada233bb5c2b2db516d91 # nix-store -q --referrers /nix/store/*-haskell-text-1.2.0.4 \ - | nix-store --repair-path --option binary-caches http://hydra.nixos.org + | xargs -L 1 nix-store --repair-path --option binary-caches http://hydra.nixos.org If you're using additional Hydra servers other than diff --git a/doc/language-support.xml b/doc/language-support.xml index 9117af864ad..a969111ed77 100644 --- a/doc/language-support.xml +++ b/doc/language-support.xml @@ -464,6 +464,27 @@ python.buildEnv.override { with wrapped binaries in bin/. + + You can also use env attribute to create local + environments with needed packages installed (somewhat comparable to + virtualenv). For example, with the following + shell.nix: + + + {}; + +(python3.buildEnv.override { + extraLibs = with python3Packages; + [ numpy + requests + ]; +}).env]]> + + + Running nix-shell will drop you into a shell where + python will have specified packages in its path. + + <function>python.buildEnv</function> arguments diff --git a/doc/package-notes.xml b/doc/package-notes.xml index 266a8092216..9d8217d60bc 100644 --- a/doc/package-notes.xml +++ b/doc/package-notes.xml @@ -346,4 +346,24 @@ packageOverrides = pkgs: { </section> +<section xml:id="sec-elm"> + +<title>Elm + + +The Nix expressions for Elm reside in +pkgs/development/compilers/elm. They are generated +automatically by update-elm.rb script. One should +specify versions of Elm packages inside the script, clear the +packages directory and run the script from inside it. +elm-reactor is special because it also has Elm package +dependencies. The process is not automated very much for now -- you should +get the elm-reactor source tree (e.g. with +nix-shell) and run elm2nix.rb inside +it. Place the resulting package.nix file into +packages/elm-reactor-elm.nix. + + + + diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 4f45db810e2..d42d81399cf 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -158,6 +158,7 @@ marcweber = "Marc Weber "; maurer = "Matthew Maurer "; matejc = "Matej Cotman "; + mathnerd314 = "Mathnerd314 "; matthiasbeyer = "Matthias Beyer "; mbakke = "Marius Bakke "; meditans = "Carlo Nucera "; diff --git a/lib/modules.nix b/lib/modules.nix index a40f02dcc3d..3e4d0547ecc 100644 --- a/lib/modules.nix +++ b/lib/modules.nix @@ -55,7 +55,7 @@ rec { }; }; - closed = closeModules (modules ++ [ internalModule ]) (specialArgs // { inherit config options; lib = import ./.; }); + closed = closeModules (modules ++ [ internalModule ]) ({ inherit config options; lib = import ./.; } // specialArgs); # Note: the list of modules is reversed to maintain backward # compatibility with the old module system. Not sure if this is diff --git a/nixos/doc/manual/release-notes/rl-unstable.xml b/nixos/doc/manual/release-notes/rl-unstable.xml index 30da98faa33..8fbac05e968 100644 --- a/nixos/doc/manual/release-notes/rl-unstable.xml +++ b/nixos/doc/manual/release-notes/rl-unstable.xml @@ -80,6 +80,9 @@ was accordingly renamed to bomi was accordingly renamed to electron +Elm is not released on Hackage anymore. You should now use elmPackages.elm +which contains the latest Elm platform. + The CUPS printing service has been updated to version 2.0.2. diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix index 97cb85a957f..3e07df6c086 100644 --- a/nixos/lib/eval-config.nix +++ b/nixos/lib/eval-config.nix @@ -17,6 +17,8 @@ baseModules ? import ../modules/module-list.nix , # !!! See comment about args in lib/modules.nix extraArgs ? {} +, # !!! See comment about args in lib/modules.nix + specialArgs ? {} , modules , # !!! See comment about check in lib/modules.nix check ? true @@ -47,7 +49,7 @@ in rec { inherit prefix check; modules = modules ++ extraModules ++ baseModules ++ [ pkgsModule ]; args = extraArgs; - specialArgs = { modulesPath = ../modules; }; + specialArgs = { modulesPath = ../modules; } // specialArgs; }) config options; # These are the extra arguments passed to every module. In diff --git a/nixos/maintainers/option-usages.nix b/nixos/maintainers/option-usages.nix index 7413b9e18ce..854ecf7eac5 100644 --- a/nixos/maintainers/option-usages.nix +++ b/nixos/maintainers/option-usages.nix @@ -1,59 +1,125 @@ { configuration ? import ../lib/from-env.nix "NIXOS_CONFIG" -# []: display all options -# [