Commit graph

1031 commits

Author SHA1 Message Date
Graham Christensen 3ac79c89b7
nixpkgs docs: move debug to its own file 2018-10-02 14:07:06 -04:00
Graham Christensen 9ae39b3553
nixpkgs docs: move generators to its own file 2018-10-02 14:03:59 -04:00
Graham Christensen f200a322c4
nixpkgs docs: move overrides to its own file 2018-10-02 13:52:21 -04:00
Jörg Thalheim bc0d87a4f1
Merge pull request #47455 from nyanloutre/steamPackages.steam-udev
steamPackages.steam: add udev rules and update to 1.0.0.56
2018-10-02 00:55:41 +01:00
lewo 56b4db9710
Merge pull request #47411 from graham-at-target/multi-layered-images-crafted
Multi-Layered Docker Images
2018-10-01 09:48:24 +02:00
nyanloutre d859a66351
nixos/steam-hardware: update documentation 2018-09-30 11:27:47 +02:00
Graham Christensen d1e46df24b fixup: drop comment about config behaving differently from buildImage 2018-09-27 08:14:04 -04:00
Graham Christensen 4fe9006190 dockerTools.buildLayeredImage: init
Create a many-layered Docker Image.

Implements much less than buildImage:

 - Doesn't support specific uids/gids
 - Doesn't support runninng commands after building
 - Doesn't require qemu
 - Doesn't create mutable copies of the files in the path
 - Doesn't support parent images

If you want those feature, I recommend using buildLayeredImage as an
input to buildImage.

Notably, it does support:

 - Caching low level, common paths based on a graph traversial
   algorithm, see referencesByPopularity in
   0a80233487993256e811f566b1c80a40394c03d6
 - Configurable number of layers. If you're not using AUFS or not
   extending the image, you can specify a larger number of layers at
   build time:

       pkgs.dockerTools.buildLayeredImage {
         name = "hello";
         maxLayers = 128;
         config.Cmd = [ "${pkgs.gitFull}/bin/git" ];
       };

 - Parallelized creation of the layers, improving build speed.
 - The contents of the image includes the closure of the configuration,
   so you don't have to specify paths in contents and config.

   With buildImage, paths referred to by the config were not included
   automatically in the image. Thus, if you wanted to call Git, you
   had to specify it twice:

       pkgs.dockerTools.buildImage {
         name = "hello";
         contents = [ pkgs.gitFull ];
         config.Cmd = [ "${pkgs.gitFull}/bin/git" ];
       };

   buildLayeredImage on the other hand includes the runtime closure of
   the config when calculating the contents of the image:

       pkgs.dockerTools.buildImage {
         name = "hello";
         config.Cmd = [ "${pkgs.gitFull}/bin/git" ];
       };

Minor Problems

 - If any of the store paths change, every layer will be rebuilt in
   the nix-build. However, beacuse the layers are bit-for-bit
   reproducable, when these images are loaded in to Docker they will
   match existing layers and not be imported or uploaded twice.

Common Questions

 - Aren't Docker layers ordered?

   No. People who have used a Dockerfile before assume Docker's
   Layers are inherently ordered. However, this is not true -- Docker
   layers are content-addressable and are not explicitly layered until
   they are composed in to an Image.

 - What happens if I have more than maxLayers of store paths?

   The first (maxLayers-2) most "popular" paths will have their own
   individual layers, then layer #(maxLayers-1) will contain all the
   remaining "unpopular" paths, and finally layer #(maxLayers) will
   contain the Image configuration.
2018-09-26 17:54:14 -04:00
John Ericson 22ce614112
Merge pull request #47238 from obsidiansystems/overrideScope-order
lib: Deprecate `overrideScope` in lieu of `overrideScope'` taking arguments in the conventional order
2018-09-24 18:04:18 -04:00
John Ericson b9dce11712 lib: Make overrideScope' which takes arguments in the conventional order
The `overrideScope` bound by `makeScope` (via special `callPackage`)
took an override in the form `super: self { … }`. But this is
dangerously close to the `self: super { … }` form used by *everything*
else, even other definitions of `overrideScope`! Since that
implementation did not even share any code either until I changed it
recently in 3cf43547f4, this inconsistency
is almost certainly an oversight and not intentional.

Unfortunately, just as the inconstency is hard to debug if one just
assumes the conventional order, any sudden fix would break existing
overrides in the same hard-to-debug way. So instead of changing the
definition a new `overrideScope'` with the conventional order is added,
and old `overrideScope` deprecated with a warning saying to use
`overrideScope'` instead. That will hopefully get people to stop using
`overrideScope`, freeing our hand to change or remove it in the future.
2018-09-24 17:50:11 -04:00
John Ericson e39a73cc55 doc: Don't mention top-level {build, host, target}Platform
For technical reasons, we cannot easily add a warning to top-level
definitions, so 2a6e4ae49a and
e51f736076 reverted the deprecation. But
we can still remove mention of the would-be deprecated definitions to
steer people towards using the preferred alternatives.
2018-09-23 13:25:44 -04:00
Graham Christensen 7736337916
Clarfy the binary reproducibility problems of created=now with dockerTools.buildImage. 2018-09-20 20:23:04 -04:00
John Children aec67d299c doc/stdenv: libaries -> libraries (#47011)
This commit corrects a minor typo in the stdenv portion of the
documentation for the nix language.
2018-09-20 18:45:54 +01:00
Graham Christensen a32d7e0c74 dockerTools.buildImage: support impure dates
Because dates are an impurity, by default buildImage will use a static
date of one second past the UNIX Epoch. This can be a bit frustrating
when listing docker images in the CLI:

    $ docker image list
    REPOSITORY   TAG      IMAGE ID       CREATED        SIZE
    hello        latest   08c791c7846e   48 years ago   25.2MB

If you want to trade the purity for a better user experience, you can
set created to now.

    pkgs.dockerTools.buildImage {
      name = "hello";
      tag = "latest";
      created = "now";
      contents = pkgs.hello;

      config.Cmd = [ "/bin/hello" ];
    }

and now the Docker CLI will display a reasonable date and sort the
images as expected:

    $ docker image list
    REPOSITORY   TAG      IMAGE ID       CREATED              SIZE
    hello        latest   de2bf4786de6   About a minute ago   25.2MB
2018-09-20 18:26:02 +02:00
Jörg Thalheim 1552f2ef68 doc/vim: remove some vim-plug redundancy 2018-09-20 08:20:11 +01:00
Roman Volosatovs c1d8b1e266
doc: Add section about vim-plug 2018-09-20 09:05:33 +02:00
Maximilian Bosch dee2dab7c6
ibus-engines.typing-booster: init at 2.1.1
This package providesa completion input method for faster typing.
See https://mike-fabian.github.io/ibus-typing-booster

Detailed instructions how to activate this IBus engine on your desktop
can be found in the upstream docs: https://mike-fabian.github.io/ibus-typing-booster/documentation.html

A simple VM with the Gnome3 desktop and activated `ibus' looks like
this:

```nix
{
  emojipicker = { pkgs, ... }: {
    services.xserver = {
      enable = true;
      desktopManager.gnome3.enable = true;
      desktopManager.xterm.enable = false;
    };
    users.extraUsers.vm = {
      password = "vm";
      isNormalUser = true;
    };
    i18n.inputMethod.ibus.engines = [
      pkgs.ibus-engines.typing-booster
    ];
    i18n.inputMethod.enabled = "ibus";
    virtualisation.memorySize = 2048;
  };
}
```

Fixes #38721
2018-09-19 21:27:10 +02:00
worldofpeace 6dae5de436
rust.section.md: remove nixcrate reference
nixcrate is deprecated
2018-09-15 18:38:26 +00:00
Sarah Brofeldt 2a6e4ae49a Revert "top-level: Deprecate top-level {build,host,target}Platform"
This reverts commit e51f736076.
2018-09-11 13:25:50 +02:00
Jörg Thalheim 953199fd82 vim-plugins: rewrite updater
A new python script has been added to replace the aged viml-based
updater. The new updater has the following advantages:

- use rss feeds to check for updates quicker
- parallel downloads & better caching
- uses proper override mechanism instead of text substitution
- update generated files in-place instead of having to insert updated plugins manually

Automatically reading `dependencies` from the plugins directory has been
not re-implemented.
This has been mostly been used by Mark Weber's plugins, which seem to
no longer receive regular updates.
This could be implemented in future as required.
2018-09-09 11:22:43 +01:00
Jörg Thalheim 97acac9a81 doc/vim: improve plugin documentation 2018-09-09 09:45:45 +01:00
Timo Kaufmann e326c0156d
Merge pull request #45728 from Ma27/nixos/weechat-module
nixos/weechat: add module
2018-09-07 17:19:46 +02:00
Maximilian Bosch a8efe61412
weechat: 2.1 -> 2.2; improve package configuration
This aims to make the `weechat` package even more configurable. It
allows to specify scripts and commands using the `configure` function
inside a `weechat.override` expression.

The package can be configured like this:

```
with import <nixpkgs> { };
weechat.override {
  plugins = { availablePlugins, ... }: {
    plugins = builtins.attrValues availablePlugins;

    init = ''
      /set foo bar
      /server add freenode chat.freenode.org
    '';

    scripts = [ "/path/to/script.py" ];
  };
}
```

All commands are passed to `weechat --run-command "/set foo bar;/server ..."`.

The `plugins' attribute is not necessarily required anymore, if it's
sufficient to add `init' commands, the `plugins' will be
`builtins.attrValues availablePlugins' by default.

Additionally the result contains `weechat` and `weechat-headless`
(introduced in WeeChat 2.1) now.
2018-09-07 13:10:43 +02:00
John Ericson 0af9072e74
Merge pull request #46059 from obsidiansystems/deprecate-top-level-platform-aliases
top-level: Deprecate top-level `{build,host,target}Platform`
2018-09-06 07:52:17 -04:00
John Ericson e51f736076 top-level: Deprecate top-level {build,host,target}Platform
I don't know when we can/should remove them, but this at least gets
people to stop using them. The preferred alternatives also date back to
17.09 so writing forward-compatable code without extra conditions is
easy.

Beginning with these as they are the least controversial.
2018-09-05 11:53:51 -04:00
Eelco Dolstra eac06ed070
Manual: Random indentation fixes 2018-09-03 17:13:46 +02:00
Graham Christensen 03b89e3031
Merge pull request #45914 from grahamc/section-ids
Section ids
2018-09-01 15:38:52 -04:00
Graham Christensen 2eea92a1dc
nixpkgs docs: give linked things IDs 2018-09-01 15:20:57 -04:00
Graham Christensen cbdcf81590
Add section IDs 2018-09-01 15:06:38 -04:00
Jörg Thalheim 4a74aca868
Merge pull request #45700 from Mic92/node-packages-v8
nodePackages: 6_x -> 8_x
2018-09-01 09:09:24 +01:00
Daiderd Jordan 477efb9d87
Merge pull request #42464 from LnL7/manual-installcheck
doc: add installCheckTarget and installCheckFlags to manual
2018-08-31 20:08:16 +02:00
John Ericson 2c4a75e9ef
Merge pull request #45820 from obsidiansystems/dont-use-obsolete-platform-aliases
treewide: Dont use obsolete platform aliases
2018-08-31 09:56:10 -04:00
Jörg Thalheim 86bd041196 docs/python: fix attribute naming example
https://github.com/NixOS/nixpkgs/pull/45822#issuecomment-417566642
2018-08-31 08:02:55 +01:00
Jörg Thalheim e5124b0f75 doc/python: convention for attributes names
cc @FRidh, @dotlambda
2018-08-31 06:52:53 +01:00
John Ericson 0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
John Ericson 2c2f1e37d4 reewide: Purge all uses stdenv.system and top-level system
It is deprecated and will be removed after 18.09.
2018-08-30 17:20:32 -04:00
Jörg Thalheim bf56bc7b49 nodePackages: 6_x -> 8_x 2018-08-28 11:15:07 +01:00
Graham Christensen 360f420ac7
nixpkgs docs: normalize 2018-08-27 19:54:41 -04:00
Graham Christensen 53371b15c6
docs: include shell section 2018-08-27 19:53:25 -04:00
Frederik Rietdijk b7e0c40d29 docs python: python.buildEnv does not include buildPythonApplication modules
Clarify the issue encountered at
https://github.com/NixOS/nixpkgs/issues/45503
2018-08-26 09:31:39 +02:00
Ryan Mulligan 5c5baaf17d treewide: remove mailing list references 2018-08-23 09:24:44 -07:00
Vladimír Čunát 209730208a
Merge branch 'staging-next' 2018-08-17 20:51:31 +02:00
Florian Klink e84e2fb434 docs: explain the home passthru present in all JDKs and setting JAVA_HOME where required 2018-08-17 17:06:05 +02:00
Florian Klink 43905b1e0c docs: explain what jdk really points to and why 2018-08-17 16:51:02 +02:00
Vladimír Čunát cbabebcc2e
Merge branch 'master' into staging-next
Hydra: ?compare=1473892
2018-08-17 13:45:21 +02:00
Jörg Thalheim 78777fbd6b
Merge pull request #44981 from Ekleog/rust-patch-bis
buildRustPackage: allow patches to fix Cargo.lock
2018-08-14 14:23:51 +02:00
Léo Gaspard af960e5df9
buildRustPackage: add documentation about cargoPatches 2018-08-14 20:09:45 +09:00
Vladimír Čunát 5b0398dc36
Merge branch 'master' into staging-next
Conflicts: gobby and libinfinity - I took the hand-edited versions
instead of those resuting from the mass-replacement.

Hydra: ?compare=1473190
2018-08-13 20:43:59 +02:00
Carlos D 0e7a34a1aa docs: add some docs for hackage2nix 2018-08-13 14:46:11 +10:00
Frederik Rietdijk d9fa74ba78 Merge master into staging 2018-08-09 18:28:15 +02:00
Frederik Rietdijk 786cbba7be
Merge pull request #44447 from NixOS/staging-next
Staging next
2018-08-09 09:04:03 +02:00
Maximilian Bosch eb0207f132 citrix_receiver: document installation pitfalls and extraCerts (#44635)
Since #44522 it's possible to specify custom certificates for the Citrix
receiver. As it took me some time to create a proper setup Citrix can
behave fairly unexpected.

I mostly covered two aspects:

* Don't install Citrix with `nix run`: when `citrix.desktop` is linked
  to $XDG_CONFIG_DIRS, it's possible to start a session directly from the
  browser when loading `.ica` files which makes the usage *way* easier.

* It's possible to add custom certificates using the Citrix wrapper. A
  new store path with the original derivation and the certificates will be
  created and therefore no rebuild of the package is needed when adding
  new certs.
2018-08-07 23:48:02 +02:00
Vladimír Čunát f504af072b
Merge branch 'master' into staging-next
There's been some large rebuild on master.
I don't really have time ATM to find what it was.
2018-08-06 12:07:37 +02:00
Sarah Brofeldt c6a4f9af60
Merge pull request #44528 from samueldr/fix/mention-bot
doc: Fixes mentions of mention-bot.
2018-08-06 08:59:10 +02:00
Samuel Dionne-Riel e97112bdc3 doc: Fixes mentions of mention-bot.
Its last mention was on 2017-09-25. Close to a year.

The CODEOWNERS feature of github, though, fills in the gap in a more
appropriate manner (IMHO).
2018-08-05 20:22:32 -04:00
Tuomas Tynkkynen 008fd5fcf5 Merge remote-tracking branch 'upstream/master' into staging 2018-08-04 15:17:42 +03:00
Frederik Rietdijk 699e0e50b7 Merge master into staging-next 2018-08-04 11:43:54 +02:00
John Ericson 7a337cde31
Merge pull request #44423 from obsidiansystems/configureFlags-cleanup
treewide: All configureFlags are lists
2018-08-03 17:49:01 -04:00
John Ericson db965063b3 treewide: Make configureFlags lists 2018-08-03 17:06:03 -04:00
Matthew Harm Bekkema a6c7132abc doc: change git:// links to https:// (#44395)
The server is not verified over the git:// transfer protocol. If you
clone a repository over git://, you should check if the latest commit's
hash is correct.

On the other hand, https:// will always verify the server automatically,
using certificate authorities.
2018-08-03 14:01:34 +01:00
John Ericson 89c21fce3f Merge commit 'master' into staging 2018-08-02 16:13:33 -04:00
Daiderd Jordan 61a1b20d23
doc: add darwin installCheckTarget example 2018-08-01 20:58:45 +02:00
James Deikun bd63de114e stdenv/build-support: support .tbz and .txz tarballs 2018-07-30 15:30:16 -04:00
Nick Novitski c58b11d229 dockerTools.pullImage: control OS and architecture 2018-07-27 12:29:31 -07:00
Erik Arvstedt eb60a87887 python-docs: minor typo and grammar fixes 2018-07-26 14:28:23 +02:00
Erik Arvstedt fa01100f40 python-docs: fix override examples
Use example package `zerobin` instead of `bepasty-server` which
is no longer part of python-packages.
This fixes the examples for current nixpkgs versions.
2018-07-25 21:33:48 +02:00
Erik Arvstedt 42e3727aa2 python docs: improve override example
1. Use the same approach like in the overlay example:
   Override `python` instead of `pythonPackages` so that
   `python.pkgs` refers to the new package set like `pythonPackages`.

   This also fixes a bug in the original example where
   `pkgs.fetchgit` was not in scope.

   Add an extra example to illustrate how to override just a
   package set.

2. Fix mix-up between `super` and `self` in the explanation text.
   Also, simplify the explanation.
2018-07-25 21:29:25 +02:00
Erik Arvstedt a8f54972f4 python docs: improve overlay example
The `pythonPackages` definition is redundant
2018-07-25 16:44:56 +02:00
Alyssa Ross 9e1e63ce0e doc: add missing semicolon to weechat example (#44003) 2018-07-23 10:48:11 +01:00
Frederik Rietdijk 1a6af9f88e
Merge pull request #43857 from volth/unused
[bot] treewide: remove unreferenced code
2018-07-20 21:06:32 +02:00
volth 87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
Matthew Bauer 76999cc40e treewide: remove aliases in nixpkgs
This makes the command ‘nix-env -qa -f. --arg config '{skipAliases =
true;}'’ work in Nixpkgs.

Misc...

- qtikz: use libsForQt5.callPackage

  This ensures we get the right poppler.

- rewrites:

  docbook5_xsl -> docbook_xsl_ns
  docbook_xml_xslt -> docbook_xsl

diffpdf: fixup
2018-07-18 23:25:20 -04:00
Jan Path 1d3a41a71a Fix invalid sentence in doc (#43228) 2018-07-08 23:46:34 +02:00
worldofpeace 3662ca7500
nixpkgs docs: correct misspell 2018-07-06 15:52:19 +00:00
Mathias Schreck 39e678e24e dockerTools.buildImage: add option to use nix output hash as tag 2018-07-06 15:15:09 +02:00
Alyssa Ross 79ab3370ed manual: fix buildPythonPackage example (#42866) 2018-07-03 17:19:18 +02:00
Matthew Pickering 11551f06e2
Update Python documentation overlay
Using a recursive attribute set is not recommended.
2018-06-30 16:35:49 +01:00
Ryan Mulligan 1d54dc6841 treewide: http -> https 2018-06-29 17:18:27 -07:00
Matthew Bauer ba87c0ffdb
Merge pull request #41600 from mbbx6spp/docs/add-developPackage-haskell-docs
documentation: add sub-section for the nixpkgs manual Haskell section
2018-06-28 20:39:42 -04:00
Ryan Mulligan fce8f26af6 treewide: http -> https (#42665) 2018-06-27 22:12:57 +02:00
Frederik Rietdijk 7c9d95fef5 python37: init at 3.7.0rc1 2018-06-25 10:41:32 +02:00
Daiderd Jordan 8500e28d7b
doc: add installCheckTarget and installCheckFlags to manual
Fixes #42393
2018-06-23 21:24:52 +02:00
Susan Potter a15d310168
documentation: add sub-section for the nixpkgs manual Haskell section 2018-06-21 15:00:01 -05:00
Anders Riutta 085bf3e7b9 docs: minor rewording for easier reading. 2018-06-18 16:02:17 -07:00
Matthew Bauer d203ce230b haskell.section.md: fix typo 2018-06-16 20:14:51 -04:00
Sarah Brofeldt f4df5d63f1
Merge pull request #33217 from toonn/master
haskell docs: add info about hoogle's --local flag to section 9.5.2.3
2018-06-12 23:42:54 +02:00
Rolf Schröder 979ac47cd8 doc/languages-frameworks/python.section.md: fix typo (#41824) 2018-06-11 10:24:07 +01:00
Daiderd Jordan 75601e10cb manual: make epub a build product on hydra (#41475) 2018-06-06 22:36:17 +02:00
Samuel Dionne-Riel 6bf54191fb doc: Fixes squishedtogether definitions. 2018-05-31 21:09:35 -04:00
Samuel Dionne-Riel a45edd9024 doc: ran make format
With visual inspection that nothing got worse.
2018-05-31 21:03:37 -04:00
Samuel Dionne-Riel bc0421c4cf doc: Adds xml fixing script. (see previous and next commits)
This script is used to automatically fix issues within xml documentation
files.

The script is *for now* intended to be used ad-hoc, and the commits to
be examined.

A future discussion will define whether:

  * This commit and scripts are kept.
  * The script is extended for common use.

The biggest issue right now with the script is that it *could* in theory
destroy a valid space-less varlistentry.

The script could, in practical use, be changed and extended to normalize
some parts of the XML files, mainly:

  * A common quoting style for attributes
  * Fix-up some weird formatting automatically that xmlformat doesn't
    catch
2018-05-31 21:02:15 -04:00
Frederik Rietdijk 39e9de1b85 Docs: improve Python section
Explain `toPythonApplication` and `toPythonModule` as well as some minor improvements.
2018-05-30 19:08:06 +02:00
John Ericson 18742471af Merge remote-tracking branch 'upstream/master' into staging
Use newer vagrant from master
2018-05-23 09:40:37 -04:00
Dmitry Kalinkin 3dd6350420
doc: use "with stdenv.lib" in meta 2018-05-22 13:25:09 -04:00
Josef Kemetmüller a28c4a5396 perlPackages.BerkeleyDB: fix db dependency
This fixes a regression introduced in 4b06383.

[dezgeg squashed in to fit the changes introduced in "db: Use more
conventional outputs, also split bin"]
2018-05-22 17:49:04 +03:00
toonn 6caf7c9d85 Flipped URI slashes 2018-05-22 13:12:43 +02:00
toonn c17061efd4 haskell docs: add explanation of what the --local flag does and the service 2018-05-22 13:12:43 +02:00
toonn ae1e304a60 haskell docs: add info about hoogle's --local flag to section 9.5.2.3
Relevant section: 9.5.2.3. How to install a compiler with libraries, hoogle and documentation indexes

Since version 5 `hoogle server`s --local flag solves the problem with links from
`http:` to `file:` URIs:

    hoogle server --local -p 8080
2018-05-22 13:10:57 +02:00
John Ericson 8e891e6ed4 Merge remote-tracking branch 'upstream/master' into staging 2018-05-14 10:57:33 -04:00
Ben Creasy 18ae1b6d31 docs: fix broken link to staging policy 2018-05-13 23:23:44 -07:00
John Ericson 81387c2e78 Merge remote-tracking branch 'upstream/master' into staging 2018-05-11 17:12:04 -04:00
Scott Trinh 7c2d43f3f9 Fix small typo in configuration documentation (#40357)
* Fix small typo in configuration documentation
* doc: Fix second instance of same typo
2018-05-11 21:31:56 +02:00
John Ericson cf06e42d1c Merge remote-tracking branch 'upstream/master' into staging 2018-05-03 16:35:36 -04:00
Matthew Justin Bauer eeb016e8f0
Merge branch 'staging' into fix-ncurses-darwin-extensions 2018-05-02 15:40:38 -05:00
Antoine Eiche d35dcb1280 dockerTools.pullImage: documentation and release note 2018-05-02 21:32:20 +02:00
Graham Christensen 77161de454
nixpkgs docs: format =) 2018-05-01 19:54:21 -04:00
Graham Christensen ab1648bf0d
nixpkgs doc: add format Make target 2018-04-30 22:37:58 -04:00
Maximilian Bosch 9274ea3903
treewide: rename version attributes
As suggested in https://github.com/NixOS/nixpkgs/pull/39416#discussion_r183845745
the versioning attributes in `lib` should be consistent to
`nixos/version` which implicates the following changes:

* `lib.trivial.version` -> `lib.trivial.release`
* `lib.trivial.suffix` -> `lib.trivial.versionSuffix`
* `lib.nixpkgsVersion` -> `lib.version`

As `lib.nixpkgsVersion` is referenced several times in `NixOS/nixpkgs`,
`NixOS/nix` and probably several user's setups. As the rename will cause
a notable impact it's better to keep `lib.nixpkgsVersion` as alias with
a warning yielded by `builtins.trace`.
2018-04-28 14:23:53 +02:00
xeji 7b75efa231
Merge pull request #39623 from Ekleog/doc-typo
doc: fix typo in cross-compilation docs
2018-04-27 22:31:46 +02:00
Léo Gaspard 876bbce480
doc: fix typo in cross-compilation docs 2018-04-27 22:14:16 +02:00
Profpatsch 21b87a7bdb docs: initial manual entry for lib/debug.nix
It is more of a stub for now, but at least points to the right file.
2018-04-27 18:59:39 +02:00
Jan Malakhovski 87651b32fe stdenv: steal checkInputs from buildPythonPackage
Note that a bunch of non-python packages use this attribute already.
Some of those are clearly unaware of the fact that this attribute does
not exists in stdenv because they define it but don't to add it to
their `bulidInputs` :)

Also note that I use `buildInputs` here and only handle regular
builds because python and haskell builders do it this way and I'm not
sure how to properly handle the cross-compilation case.
2018-04-26 20:22:51 +00:00
Matthew Justin Bauer 8edb13f079
doc: add filtered pr list 2018-04-23 17:07:53 -05:00
Peter Simons 21d688f9b8
Merge pull request #39309 from LumiGuide/haskell.overrides
RFC: haskell: allow overriding all package sets at once
2018-04-23 21:07:58 +02:00
Vladimír Čunát 17c4b83d05
Merge #31320: docs and glibc: explicit comments on outputs 2018-04-22 11:55:23 +02:00
Bas van Dijk bf6d796a27 haskell: allow overriding all package sets at once
Setting haskell.packageOverrides like so:

  haskell = super.haskell // {
    packageOverrides = self: super: {
      my-package = ...;
      my-other-package = ...;
    };
  };

causes all compiler-specific package sets to be overridden with those
overrides.
2018-04-22 10:34:44 +02:00
Will Dietz 4f273627a1 tree-wide: fix instance of "meta.maintainer" -> "meta.maintainers"
Encountered one of these when using check-meta, did a quick
search to find other instances.
2018-04-19 10:41:12 -05:00
John Ericson c66440c104 doc: Document config.allowUnsupportedSystem and its env var 2018-04-17 16:34:28 -04:00
Jörg Thalheim 6366951310
Merge pull request #38568 from samueldr/fix/nixpkgs-rebase-callout
doc: Fixes repeated callout in nixpkgs manual 15.1
2018-04-08 11:59:28 +01:00
Samuel Dionne-Riel e675ae456c doc: Fixes repeated callout in 15.1 2018-04-07 15:50:18 -04:00
Samuel Dionne-Riel d807aa1c8d doc: Fixes in-text callouts and screen callouts. 2018-04-07 15:38:12 -04:00
Graham Christensen 8f33464ca7
nixos docs: syntax highlight
- Rectifies diverging CSS by combining
   nixos/nixpkgs docs CSS
 - Moves our custom Highlight.js loader in to
   the hljs package
 - Switches the nixos docs to use SVG
   callouts too
2018-04-05 07:54:01 -04:00
Michael Raskin ed1312f782
Merge pull request #38428 from Ekleog/doc-weechat
Add documentation for weechat
2018-04-04 13:34:20 +00:00
Léo Gaspard f57fb2ee26 weechat: add hint in documentation 2018-04-04 14:58:53 +02:00
Andre Ramos 51c8e9ff5e nixos/doc: fix instructions for nox-review usage 2018-04-03 13:01:51 +02:00
Austin Seipp dc40fca23f nixpkgs: remove ancient 'ecj' package
Nobody has stepped up to keep maintaining this and it's several
years old, and the last strict Java 7 dependency, as it won't work
with newer versions without an update.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2018-04-01 15:18:47 -05:00
Profpatsch e01d485ce4 lib/generators: add an example of overriding defaults
An example of overriding the `toINI` generator is added,
hopefully clarifying the expressiveness of generators.
2018-03-29 16:53:06 +02:00
Garrett Berg f7342a3625 docs: extend rust docs (#35587)
- Add example for setting up nix-shell, improve rust docs
- Rust docs: add gcc rust dependencies and fix carnix commands
- Fix a typo with the carnix command.
2018-03-28 02:07:19 +01:00
Graham Christensen 8dac5ce146
nixpkgs docs: syntax highlight 2018-03-26 21:44:24 -04:00
Graham Christensen da17974541
Move the overridden CSS to overrides.css which can be applied on nixos.org 2018-03-26 14:45:00 -04:00
Graham Christensen a80856cec5
nixpkgs docs: Use SVGs for callouts 2018-03-26 14:08:36 -04:00
Graham Christensen 67f9d2425d
Add 'make debug' to call xmloscopy 2018-03-25 20:01:31 -04:00
Graham Christensen fce1fb7e75
Move validate to top-level so it doesn't rebuild the outputs every time 2018-03-25 19:52:08 -04:00
Graham Christensen 30dd2d3feb
Validate when building outputs 2018-03-25 19:52:08 -04:00
Graham Christensen f67ea4a6d0
Document shell.nix / xmloscopy / make for the nixpkgs docs 2018-03-25 19:52:08 -04:00
Graham Christensen 7e25ff7106
docs: Build with a makefile 2018-03-25 19:52:07 -04:00
Graham Christensen 8c7be5927e
Ignore generated XML and other generated files 2018-03-25 19:52:07 -04:00
Graham Christensen 92d53362d4
Move all nixpkgs doc files in to the doc directory
This makes a makefile-driven developer workflow nicer.
2018-03-25 19:52:00 -04:00
giraffito 319866ae11
python.md: fix grammar around bdist_wheel FAQ 2018-03-21 19:57:52 +00:00
Eelco Dolstra 7db841512a
Remove obsolete /nix/var/nix/{manifests,channel-cache} 2018-03-20 18:26:13 +01:00
Matthew Justin Bauer bfdc402928
Merge pull request #37296 from matthewbauer/fix-maintainers-path
Fix fallout from #36275
2018-03-19 03:37:53 -05:00
Joachim Schiele f41a3e7d7d
Emscripten 1.37.16 to 1.37.36 (#37291)
* trying to build emscriptenPackages not all fail

* reading the console.log it turns out python executable is not in place and that is why emconfigure didnt work

* backup commit

* much more targets are compiling now

* added common revisioning

* revision bump to 1.37.36 (not tested)

* fixed xmllint

* forcing unit testing, will implement the tests after i get home

* json_c test working

* added tests

* tiny fixes

* added documentation
2018-03-18 13:34:46 +01:00
Matthew Bauer 124d47c65a meta: fix fallout from #36275 2018-03-18 00:16:43 -05:00
Jan Malakhovski 7079e744d4 Merge branch 'master' into staging
Resolved the following conflicts (by carefully applying patches from the both
branches since the fork point):

   pkgs/development/libraries/epoxy/default.nix
   pkgs/development/libraries/gtk+/3.x.nix
   pkgs/development/python-modules/asgiref/default.nix
   pkgs/development/python-modules/daphne/default.nix
   pkgs/os-specific/linux/systemd/default.nix
2018-03-10 20:38:13 +00:00
Michael Raskin 76e465de52 A note about scheme-* in texlive.combine 2018-03-07 22:25:01 +01:00
Shea Levy dd6c926362
perlPackages.DBI: Stub out dbd_postamble for cross-compilation. 2018-02-28 15:01:32 -05:00
Shea Levy 306d5cdf03
perlPackages: Add cross-compilation support.
This involved:

* Installing miniperl as $dev/bin/perl
* Setting miniperl to take INC from
  lib/perl5/{site_perl/,}cross_perl/${version} as well as
  lib/perl5/{site_perl/,}/${version}/${runtimeArch}, in that
  order. miniperl taking from runtimeArch is not really correct, but
  it works in some pure-perl cases (e.g. Config.pm) and can be
  overridden with the cross_perl variant.
* Installing perl-cross's stubs into
  $dev/lib/perl5/cross_perl/${version}
* Patching MakeMaker.pm to gracefully degrade (very slightly) if B.pm
  can't be loaded, which it can't in cross-compilation.
* Passing the right build-time and runtime perls to Makefile.PL
2018-02-28 15:01:32 -05:00
Daniel Barlow 9c50ae6898 lib, treewide: Add missing MIPS arches, and fix existing usage
Existing "mips64el" should be "mipsel".

This is just the barest minimum so that nixpkgs can recognize them as
systems - although required for building individual derivations onto
MIPS boards, it is not sufficient if you want to actually build nixos on
those targets
2018-02-23 20:43:42 -05:00
Pierre-Etienne Meunier 8e5ab6e7ac BuildRustCrate: more general overrides, and handling the "dylib" crate type (#35171)
* buildRustCrate: adding a symlink from libblah-xxxxx.so to libblah.so
* BuildRustCrate: overriding phases
* Carnix: 0.6.5 -> 0.6.6
* Fixing symlink_dependencies --buildDep
* Shorter symlink_dependencies
* running `runHook postBuild` *after* the build
2018-02-20 08:55:04 +01:00
aszlig 1cba74dfc1
setup-hooks: Add autoPatchelfHook
I originally wrote this for packaging proprietary games in Vuizvui[1]
but I thought it would be generally useful as we have a fair amount of
proprietary software lurking around in nixpkgs, which are a bit tedious
to maintain, especially when the library dependencies change after an
update.

So this setup hook searches for all ELF executables and libraries in the
resulting output paths after install phase and uses patchelf to set the
RPATH and interpreter according to what dependencies are available
inside the builder.

For example consider something like this:

stdenv.mkDerivation {
  ...
  nativeBuildInputs = [ autoPatchelfHook ];
  buildInputs = [ mesa zlib ];
  ...
}

Whenever for example an executable requires mesa or zlib, the RPATH will
automatically be set to the lib dir of the corresponding dependency.

If the library dependency is required at runtime, an attribute called
runtimeDependencies can be used to list dependencies that are added to
all executables that are discovered unconditionally.

Beside this, it also makes initial packaging of proprietary software
easier, because one no longer has to manually figure out the
dependencies in the first place.

[1]: https://github.com/openlab-aux/vuizvui

Signed-off-by: aszlig <aszlig@nix.build>
Closes: #34506
2018-02-10 00:27:24 +05:30
Michael Raskin 718de7c2e4
Merge pull request #33306 from bgamari/patch-2
haskell: Recommend use of hoogle --local
2018-02-06 21:34:10 +00:00
Michael Raskin 8eba2a5be8
Merge pull request #31312 from binarin/emacs-package-set-overrides
emacs-packages: Cleanup and document for overrides
2018-02-06 21:22:23 +00:00
pe@pijul.org 8f20e7ce3a carnix: 0.6.0 -> 0.6.5 2018-02-03 22:31:54 +00:00
John Ericson 94a2af91eb doc: Cross chapter: Add note on why use example platforms 2018-01-26 12:38:34 -05:00
John Ericson e316ba1fc4 doc: chap cross: Make example command stick out more
It should be in a <programlisting>, not <command>, tag.
2018-01-26 12:33:14 -05:00
Frederik Rietdijk 2ea3db2830 Python docs: remove name attribute
The `name` attribute is filled in when `pname` and `version` are specified.
See https://github.com/NixOS/nixpkgs/pull/31173
2018-01-16 18:01:06 +01:00
Jörg Thalheim bb9bcfa295 doc/cross-compilation: fixes typos 2018-01-11 16:26:30 +00:00
John Ericson 4e907dbca1 stdenv: Force doCheck and doInstallCheck to be false when we are cross compiling
I hope this will be a temporary measure. If there is consensus around
issue #33599, then we can follow an explicit `dontCheck`, but default to
not checking during cross builds when none is given.
2018-01-09 12:37:12 -05:00
Ben Gamari fa085fc07b
haskell: Recommend use of hoogle --local
This works around the browser security restriction of 
disallowing links from http:// to file://.
2018-01-01 19:16:23 -05:00
John Ericson 4d2b763817
Merge pull request #26805 from obsidiansystems/cross-elegant
Make cross compilation elegant
2017-12-30 22:58:02 -05:00
John Ericson 8a434b625d doc: Add cross cookbook
An excellent suggestion from @bgamari
2017-12-30 22:42:15 -05:00
John Ericson edfe42f3ba doc: More information in the setup hook section of the stdenv chapter 2017-12-30 22:42:14 -05:00
John Ericson b55999b28f doc: Document dontStripHost and dontStripTarget 2017-12-30 22:41:44 -05:00
John Ericson 7ffc4e1b2f doc: Add "Specifying Dependencies" section to the stdenv chapter
This accounts for all the new dependencies and propagation logic changes
I'm about to add.

Fixes #1915---with this change I think the distinction is finally clear
enough.
2017-12-30 22:35:59 -05:00
Piotr Bogdan 7f91eb94be haskell docs: change wording in the "Miscellaneous Topics" section 2017-12-26 12:19:46 +00:00
zimbatm a9ae16c2b9 doc: fix typo 2017-12-24 00:40:01 +00:00
Yegor Timoshenko 108f76c927
Merge pull request #31668 from rycee/doc/naming
docs: clarify package and module option naming
2017-12-23 17:12:29 +03:00
zimbatm adc5c9b83d
mkShell: add builder (#30975) 2017-12-20 23:42:07 +00:00
Leonid Onokhov 574528024d nixpkgs/manual: fix build with new pandoc 2017-12-20 14:22:05 +00:00
Yegor Timoshenko a0aeb2381e doc: system.environmentPackages -> environment.systemPackages 2017-12-20 02:19:43 +00:00
Vladimír Čunát 1bc288591e
coqPackages docs: fix typo (and thus manual build) 2017-12-19 11:34:54 +01:00
Vladimír Čunát 4a2340ff6b
Merge branch 'staging' 2017-12-19 10:27:13 +01:00
Vincent Laporte 5642f4ac6f
coqPackages: update documentation 2017-12-18 15:30:37 +00:00
Vladimír Čunát 24d81d6332
Merge branch 'master' into staging 2017-12-15 21:40:23 +01:00
Vaibhav Sagar 4bbb9fca51 Update haskell.md
Unindent prose that was incorrectly being displayed as code.
2017-12-14 11:21:18 +08:00
John Ericson a0b1ebeee9 Merge remote-tracking branch 'upstream/staging' into binutils-wrapper 2017-12-13 16:14:47 -05:00
John Ericson 91ca46f693 doc: Document Bintools Wrapper
Shrunk the CC Wrapper documentation so as not to be repetative.
2017-12-13 16:08:18 -05:00
Pierre-Étienne Meunier 5a0d954156 add buildRustCrate function to build rust crates 2017-12-12 04:58:45 -06:00
Vladimír Čunát 2309acf723
Merge branch 'master' into staging 2017-12-09 21:00:07 +01:00
Frederik Rietdijk 41ff561b75 Python docs: fix nix-shell example 2017-12-08 17:06:56 +01:00
Frederik Rietdijk 19be72f880 Revert "Python docs: fix nix-shell example"
This reverts commit aa2326682c.

Forgot parentheses...
2017-12-08 17:06:03 +01:00
Frederik Rietdijk aa2326682c Python docs: fix nix-shell example 2017-12-08 17:05:19 +01:00
Orivej Desh 683047f8ab doc: document enableParallelBuilding being unset 2017-12-07 08:52:42 +00:00
Jörg Thalheim 4657fc893a
Merge pull request #32174 from lheckemann/weechat-all-default
weechat: default to enabling all plugins
2017-11-29 23:02:32 +00:00
Linus Heckemann 566a16b742 weechat: default to enabling all plugins
Plain weechat is still accessible as `weechat.unwrapped`
or `weechat.override {configure = null;}`.

Also update documentation to reflect this change.
2017-11-29 15:30:56 +00:00
Vladimír Čunát addd20e6f9
Merge branch 'master' into staging 2017-11-28 18:19:34 +01:00
Benjamin Hipple 05c00a8345 haskell docs: fix typo 2017-11-27 22:24:32 -05:00
Orivej Desh 29b2984b0c
Merge pull request #31987 from jtojnar/devhelp-devdoc
stdenv: Move devhelp books to outputDevdoc
2017-11-25 23:14:47 +00:00
Vaibhav Sagar 1349174b1b doc: rust is an attribute set, not a package
Using `rust` instead of `rustc cargo` doesn't work in either `systemPackages` or `nix-shell -p`
2017-11-24 15:26:37 +08:00
Jan Tojnar 70a0580e38
stdenv: Move devhelp books to outputDevdoc 2017-11-24 02:09:44 +01:00
Vladimír Čunát c1ac1256f3
documentation: python 2.6 is no more 2017-11-19 08:18:55 +01:00
Samuel Dionne-Riel f8d232e233
documentation: python3Packages is python36Packages
Close #31810.
2017-11-19 08:18:43 +01:00
Chris Martin b43c5e0160 nixpkgs manual: how to make a patch file with git
This addresses #31684.
2017-11-17 17:46:07 -05:00
Orivej Desh 5b4adc3126 doc: improve rustPlatform example 2017-11-17 07:26:51 +00:00
Vladimír Čunát f609512d01
Merge #31614: doc/manual/stdenv: fix a typo 2017-11-14 20:37:15 +01:00
Robert Helgesson 91154416b6
docs: clarify package and module option naming
This attempts to briefly clarify the current naming conventions of
attribute names in `all-packages.nix` and module option names.
2017-11-14 19:17:35 +01:00
John Ericson 350a5e31fc
Merge pull request #29418 from vanschelven/small-documentation-improvements
documentation: cross-compilation - partial rewrite
2017-11-13 16:21:58 -05:00
Bruno Bieth 0e05dfcfa2 Typo in manual#stdenv - propagatedNativeBuildInputs 2017-11-13 17:55:18 +01:00
Orivej Desh 467d22c15b documentation: fix typos 2017-11-09 12:57:21 +00:00
Klaas van Schelven b20916bd98 documentation: cross-compilation - partial rewrite 2017-11-09 13:44:03 +01:00
John Ericson 0101856765
Merge pull request #30549 from obsidiansystems/bintools
treewide: Introduce stdenv.cc.bintools
2017-11-08 14:20:48 -05:00
Ilya Kolpakov da3658f1bf docs: multiple outputs: now mentions glibc as not having executables in the first output contrary to the convention 2017-11-06 15:24:40 +01:00
Alexey Lebedeff 5ce0f5aa38 emacs-packages: Cleanup and document for overrides
This removes some stale code that was a no-op for some time and adds
some docs/examples to help people with explicitly and consistently
choosing versions of some emacs packages (to help with problems
similar to #27083).
2017-11-06 11:03:30 +01:00
John Ericson 5ae8f18f4d Rename __targetPackages to targetPackages 2017-11-05 17:10:53 -05:00
Orivej Desh 48cacf5ff7
Merge pull request #30951 from LnL7/darwin-docs
docs: add section on common darwin issues
2017-11-05 18:04:21 +00:00
Renaud 4e892b9c03 nixpkgs manual : clearer meta.platforms description
Refer to doubles.nix for a list of common platforms types used in packages
2017-11-04 16:08:14 +01:00
Frederik Rietdijk 4bd9b3b7cf
Merge pull request #25274 from lheckemann/weechat-plugin-split
Weechat plugin split
2017-11-04 09:55:09 +01:00
Frederik Rietdijk 5c4352fa2d Python docs: fix quotes PR #31197 2017-11-03 18:49:15 +01:00
Jonathan Curran c67a6482a3
Fix nix-shell command example in python docs
The nix-shell command here is incorrect AFAICT.  `-i` is supposed to specify the interpreter and `-p` specifies the packages.
2017-11-03 09:23:01 -06:00
Linus Heckemann 05f96bf376 weechat: split plugins into separate outputs
Also add a wrapper generator that allows adding the plugins back
conveniently and corresponding documentation in the package notes
section of the nixpkgs manual.
2017-11-03 10:25:22 +00:00
Franz Pletz e32352fd97
nixpkgs manual: unfree packages are untested
Resolves confusion mentioned in #31045.
2017-11-01 22:34:56 +01:00
Daiderd Jordan 633b03c57f
docs: add section on common darwin issues 2017-11-01 18:08:19 +01:00
Daiderd Jordan 1167fde2b2 docs: add note about makeFlags quoting 2017-11-01 17:50:15 +01:00
Kevin Cox 5f8cf0048e rust: update cargo builder to fetch registry dynamically
The biggest benefit is that we no longer have to update the registry
package. This means that just about any cargo package can be built by
nix. No longer does `cargo update` need to be feared because it will
update to packages newer then what is available in nixpkgs.

Instead of fetching the cargo registry this bundles all the source code
into a "vendor/" folder.

This also uses the new --frozen and --locked flags which is nice.

Currently cargo-vendor only provides binaries for Linux and
macOS 64-bit. This can be solved by building it for the other
architectures and uploading it somewhere (like the NixOS cache).

This also has the downside that it requires a change to everyone's deps
hash. And if the old one is used because it was cached it will fail to
build as it will attempt to use the old version. For this reason the
attribute has been renamed to `cargoSha256`.

Authors:
* Kevin Cox <kevincox@kevincox.ca>
* Jörg Thalheim <Mic92@users.noreply.github.com>
* zimbatm <zimbatm@zimbatm.com>
2017-10-23 00:30:47 +01:00
Piotr Bogdan 34d80d75fc nixpkgs manual: remove reference to now defunct nixpkgs monitor 2017-10-17 16:04:29 +01:00
Vladimír Čunát 95b706f0db
Merge branch 'master' into staging
Very many rebuilds from master :-(
2017-09-27 20:59:52 +02:00
Vladimír Čunát f2955e4fde
manuals: fixup steam note, as the change is in 17.09
I didn't notice the cherry-pick, but Globin found out immediately.
/cc #29180.
2017-09-27 20:33:24 +02:00
Vladimír Čunát 4013b381b3
manuals: document removal of newStdcpp from steam
/cc #29180.
2017-09-27 20:12:06 +02:00
Vladimír Čunát 41aa302727
Merge branch 'master' into staging 2017-09-26 22:31:59 +02:00
John Ericson bc0aec5d97 doc: Document forthcomming NIX_DEBUG degredations 2017-09-26 11:24:19 -04:00
Jörg Thalheim 9d9a28f014 docs/python: more infos regarding failing tests 2017-09-25 14:00:47 +01:00
Bjørn Forsman 56a047c7a1 doc/submitting-changes.xml: suggest "nixos/<module>" prefix for NixOS changes
Commit 8537cf0f81
("CONTRIBUTING.md: suggest "nixos/<module>" prefix for NixOS changes")
only changed CONTRIBUTING.md file and forgot about the Nixpkgs manual.
(I didn't know this information was stored in two places.)
2017-09-13 14:10:25 +02:00
Bas van Dijk b4ea459eab haskell: introduce failOnAllWarnings
Applying `haskell.lib.failOnAllWarnings` to a Haskell package enables the
`-Wall` and `-Werror` GHC options to turn all warnings into build failures.
2017-09-10 13:09:52 +02:00
Peter Hoeg a9a3af423f manual: steam on nouveau also requires newStdCpp 2017-09-10 13:14:43 +08:00
Frederik Rietdijk b7d257a520 Python docs: add section on tests 2017-09-02 12:06:50 +02:00
Dmitry Kalinkin b6a1e439e1
documentation: use modern Firefox version in example 2017-09-01 14:03:28 -04:00
Dmitry Kalinkin 26068822d8
documentation: fix some spelling 2017-09-01 13:38:07 -04:00
Bas van Dijk e410a191a1 haskell: add the checkUnusedPackages function including docs 2017-08-30 14:40:54 +02:00
Graham Christensen 128cdeffd0
compiz: drop 2017-08-30 06:59:20 -04:00
Samuel Leathers aae774571e doc: explain pull request template 2017-08-29 10:15:50 -04:00
Frederik Rietdijk 643ca9a3aa Python docs: rewrite a part
- fix some mistakes
- move explanation on how to create Python environments to the front
2017-08-26 11:22:20 +02:00
Frederik Rietdijk 6bbc3a0b24 Merge commit '3b29468313bc8604fe8f85c8d9316fd276d3985c' into HEAD 2017-08-21 04:44:40 +02:00
John Ericson 0578dda8e1 doc: Describe CC Wrapper in more detail
The main motivation for this is to have something to google for LD=$CC.

Eventually, this should probably be moved to another section, but we
can deal with that later.
2017-08-20 15:49:50 -04:00
Michael Peyton Jones 9235ff1259 Overlays: allow overlays to be specified in a file 2017-08-17 22:13:39 +00:00
Frederik Rietdijk 8f2ea38f8f Merge remote-tracking branch 'upstream/master' into HEAD 2017-08-17 18:34:17 +02:00
nonsequitur 865765aece ruby docs: improve example
1. Call `nix-build` with `--no-out-link` to avoid cluttering the source dir.
2. Re-add `patchShebangs`, since `buildCommand` doesn't imply a patch phase. (It was my fault to remove this in the first place, sorry!)
2017-08-15 15:00:27 +02:00
Frederik Rietdijk 62dac1bdd9 Merge remote-tracking branch 'upstream/master' into HEAD 2017-08-14 09:34:10 +02:00
Vladimír Čunát 34946256a0
Merge #27424: stdenv: Don't put man pages into $doc 2017-08-13 19:32:51 +02:00
Frederik Rietdijk 7ebcd39a0f Merge commit '4c49205' into HEAD 2017-08-13 18:34:59 +02:00
Michael Peyton Jones 5bc183ebf8 Overlays: fix some documentation nits 2017-08-13 14:48:41 +00:00
Michael Peyton Jones d60b288663 Nixpkgs manual: expand documentation for overlays 2017-08-13 14:48:41 +00:00
Frederik Rietdijk 2a8cd14d5f Merge remote-tracking branch 'upstream/master' into HEAD 2017-08-13 09:50:47 +02:00
Frederik Rietdijk abdb58e407 Python: overridePythonPackage -> overridePythonAttrs
to better fit the existing naming scheme.

https://github.com/NixOS/nixpkgs/pull/26155#issuecomment-321279629
2017-08-12 08:58:41 +02:00
Tuomas Tynkkynen aeeb23853a stdenv: Don't move info pages to the 'man' output
Because if you were to disable man pages via 'programs.man.enable',
the "man" output wouldn't be installed and the info pages would go
missing.
2017-08-11 21:32:55 +03:00
Tuomas Tynkkynen e4876d6e43 stdenv: Don't move man or info pages to $doc
Because .doc is normally not installed to user environments, these
manpages are unaccessible by default otherwise.
2017-08-11 21:32:54 +03:00
Domen Kožar 486e1c3c16 Merge pull request #27998 from davidak/macOS
replace "Mac OS X" and "OS X" with "macOS"
2017-08-11 13:01:36 +02:00
Frederik Rietdijk 345b35c48a Python: add buildPythonPackage.overridePythonPackage method.
This allows one to always override the call to `buildPythonPackage`.

In the following example we create an environment where we have the `blaze` package using an older version of `pandas`. We override first the Python interpreter and pass `packageOverrides` which contains the overrides for packages in
the package set.

```
with import <nixpkgs> {};

(let
  python = let
    packageOverrides = self: super: {
      pandas = super.pandas.overridePythonPackage(old: rec {
        version = "0.19.1";
        name = "pandas-${version}";
        src =  super.fetchPypi {
          pname = "pandas";
          inherit version;
          sha256 = "08blshqj9zj1wyjhhw3kl2vas75vhhicvv72flvf1z3jvapgw295";
        };
      });
    };
  in pkgs.python3.override {inherit packageOverrides;};

in python.withPackages(ps: [ps.blaze])).env
```
2017-08-09 11:10:54 +02:00
nonsequitur 460a485368 ruby docs: simplify example
The 'phases' attribute is unneeded and misleading
2017-08-08 12:49:52 +02:00
Frederik Rietdijk 468fdddde6 Merge pull request #27753 from FRidh/python33eol
python33: end-of-life
2017-08-08 09:11:11 +02:00
davidak 3270aa896b replace "Mac OS X" and "OS X" with "macOS"
as it is the official name since 2016

https://en.wikipedia.org/wiki/Macintosh_operating_systems#Desktop

exception are parts refering to older versions of macOS like

"GUI support for Mac OS X 10.6 - 10.12. Note that Emacs 23 and later [...]"
2017-08-07 21:41:30 +02:00
nonsequitur f37972588d ruby docs: fix text and example (#28006)
1. 'wrapper' has been renamed to 'wrappedRuby', so use this instead.
2. mkDerivation isn't called with a 'src' attribute, so skip the 'unpackPhase' to avoid an error.
3. Simplify the build command. 'mkdir' and 'patchShebangs' don't need to be called explicitly.
2017-08-07 14:42:16 +01:00
Silvan Mosberger dcf651b468
docs: fix error in nix expression 2017-08-06 10:18:36 +02:00
Mathias Schreck cd3d852943 dockerTools: document image spec v1.2 compatibility 2017-08-03 11:52:03 +02:00
Jörg Thalheim 25bb529245 Merge pull request #27709 from binarin/fzf-share
fzf: add script for finding 'share' folder
2017-07-30 10:16:41 +01:00
Frederik Rietdijk d387cac375 python33: end-of-life
Python 3.3 reaches end-of-life when we release 17.09.

https://mail.python.org/pipermail/python-dev/2017-July/148584.html
2017-07-29 20:49:24 +02:00
Franz Pletz 4d66de88ff
nixpkgs-manual: fix build, reindent
cc #25980
2017-07-29 18:40:21 +02:00
Charles Strahan 2b57cb9169 Merge pull request #25980 from nyarly/bundlerenv_usecases
BundlerEnv, now with groups and paths
2017-07-28 23:22:21 -04:00
Alexey Lebedeff 7723d9935f fzf: add script for finding 'share' folder
So that helper scripts can be easily sourced in interactive shell
configuration. `autojump` package was already present and had the same
requirements for findind a `share` folders, so I took an inspiration
there.

I beleive this is a better alternative to:
- https://github.com/NixOS/nixpkgs/pull/25080
- https://github.com/NixOS/nixpkgs/pull/27058

Replacing `$out/share/shell` with `$bin/share/fzf` was necessary to
prevent dependency loop in produced derivations.
2017-07-28 12:48:11 +03:00
Peter Simons 28c01703f0 haskell: remove all code related to the "haste" compiler
These packages have been broken for a while and now they don't even evaluate
any more.
2017-07-26 10:20:30 +02:00
Graham Christensen ef95175ba3
manual: update mailing list links 2017-07-18 07:54:36 -04:00
Domen Kožar d03178aae3
Point to the new mailing list by replacing the old link 2017-07-18 13:44:10 +02:00
Graham Christensen 6504df6732 Merge pull request #25955 from matthewbauer/nixpkgs-manual-declarative-package-management
manual: add "declarative package management" section
2017-07-16 16:50:14 -04:00
John Ericson 9dc2a3aeba doc: Update cross compilation chapter for stdenv.{build,host,target}Platform 2017-07-07 13:24:33 -04:00
Judson 5142e8f2b2
Grammar, spelling fixed. 2017-07-05 09:12:03 -07:00
Judson 728bb987ec
Adding docs for bundlerApp. 2017-07-02 17:55:41 -07:00
John Ericson e1faeb574a Merge pull request #26884 from obsidiansystems/purge-stdenv-cross
Purge stdenv cross
2017-06-28 21:39:16 -04:00
hsloan 9f156f4a8a top-level: stdenv.cross vanquished 2017-06-28 21:29:08 -04:00
Jörg Thalheim 4962de02a6 Merge pull request #26906 from zagy/fix/doc-gobuild-dependency-note
doc / go building: improve
2017-06-27 17:53:46 +01:00
Christian Zagrodnick 725d25dbb3 doc / go building: improve
Move the paragraph about go2nix to the other paragraphs about dependencies.
2017-06-27 16:34:03 +02:00
John Ericson afd2bdbad2 Merge pull request #26007 from obsidiansystems/cc-wrapper-prefix
Get rid of gcc-cross-wrapper
2017-06-23 11:22:34 -04:00
John Ericson 594d264205 cross stdenv adaptor: Support --host --build --target across the board
Packages get --host and --target by default, but can explicitly request
any subset to be passed as needed. See docs for more info.

rustc: Avoid hash breakage by using the old (ignored)
dontSetConfigureCross when not cross building
2017-06-22 17:52:28 -04:00
Daiderd Jordan aba574c4fa Merge pull request #26668 from gleber/fixpoint-erlang-packages
erlang: refactor: build packages per Erlang/OTP version.
2017-06-22 21:49:30 +02:00
Jörg Thalheim 5041df4411 doc/languages-frameworks/vim: add custom vimrc & packages 2017-06-22 13:25:03 +01:00
Eric Bailey 505508a813 Update BEAM docs
Improve beam docs:
 * correct spelling
 * update per pandoc changes
 * capitalize titles
 * capitalize BEAM throughout and use "the BEAM" when referring to the virtual machine.
 * tweak grammar and phrasing
 * reformat build-tools-rebar3 section
 * add more links
 * re-wrap <para>s

Also update <programlisting>s
* normalize whitespace
* don't double quote homepage
* use $ in all shell snippets
2017-06-22 11:32:46 +02:00
Gleb Peregud 0fccd5bba4 erlang: update documentation.
The documentation got a bit stale compared to actual contents of
nixpkgs. This commit focuses on updating existing docs, not on making
sure all details of beam packages are covered.
2017-06-19 19:58:57 +02:00
Frederik Rietdijk 75933da882 Merge pull request #26345 from vcunat/p/doc-override-phases
nixpkgs manual: advise against overriding whole phases
2017-06-19 09:48:01 +02:00
Thomas Tuegel ce28d8947d
nixpkgs: remark about running Qt applications 2017-06-18 08:44:47 -05:00
Thomas Tuegel f3ce852355
nixpkgs: remove comments from manual about wrapping Qt packages
It is no longer necessary to wrap Qt packages
2017-06-18 08:44:47 -05:00
Joachim F 055be3f684 Merge pull request #25954 from matthewbauer/nixpkgs-emacs-manual
manual: add "Emacs" section to manual
2017-06-15 14:24:37 +01:00
Jan Tojnar e35f3c0679
doc: Fix some typos 2017-06-11 22:13:42 +02:00
Josef Kemetmueller 7116da8018 Python docs: Add example for overlays 2017-06-10 12:18:10 +02:00
Vladimír Čunát 8c6fada372
nixpkgs manual: advise against overriding whole phases
I've seen that mistake at least a few times already, e.g.
https://github.com/NixOS/nixpkgs/pull/26209#issuecomment-305925562
It might perhaps seem counter-intuitive if one doesn't know nixpkgs well.
2017-06-03 11:24:18 +02:00
John Ericson 4e376cce7e Merge pull request #26269 from obsidiansystems/libSystem
lib and doc: Use "libSystem" as identifier for that libc in platforms
2017-05-31 00:49:58 -04:00
John Ericson 9f680d30f4 lib and doc: Use "libSystem" as identifier for that libc in platforms 2017-05-31 00:47:25 -04:00
John Ericson a908ad6fd3 Merge pull request #26037 from obsidiansystems/platform-examples
lib: Consolidate platform configurations (used for crossSystem)
2017-05-29 22:29:15 -04:00
John Ericson 20e756a093 lib: Consolidate platform configurations (used for crossSystem)
This is good for maintenance and education.
2017-05-29 18:56:03 -04:00
Dmitry Vyal 0f86046db5 user-local config.nix path fixed in docs 2017-05-27 13:38:15 +03:00
Matthew Bauer e9e9af4b5c
doc/cross-compilation: change cross to target
thanks to @bjornfor for catching this
2017-05-24 02:02:14 -05:00
Matthew Bauer 11f5136005
doc/cross-compilation: cleanup some grammar
These all should be uncontroversial changes. Just some awkward wording and
double words, etc.
2017-05-23 23:40:37 -05:00
Matthew Bauer 0bbbdfbc52
manual: add "declarative package management" section
This section gives some details on how to setup an "environment"
without having to go through NixOS (although it could be used there
too). I’ve tried to make it straightforward and have a kind of
"tutorial" feel. Not sure if that’s appropriate for the manual, so any
recommended changes would be helpful.
2017-05-20 22:25:05 -05:00
Matthew Bauer 64bddb3f1e
manual: add "Emacs" section to manual
This gives some basics on configuring Emacs within Nix. The
configuration is fairly long just to give a good idea of what’s going
on. I can trim out some of it if it’s not necessary. Note that there
is already a section for Emacs in the NixOS manual. However, this is
aimed at avoiding using modules altogether to make things easier for
non-NixOS users. This configuration should work on NixOS anyway,
however.

Fixes #24243
Fixes #19956
2017-05-20 21:05:16 -05:00
Willi Butz f5e03f3530
manual: fix typo 2017-05-12 13:49:06 +02:00
Frederik Rietdijk ef4442e827 Python: replace requests2 with requests tree-wide
See f63eb58573

The `requests2` attribute now throws an error informing that `requests`
should be used instead.
2017-05-07 12:56:09 +02:00
Alexey Muranov 35c324ee14 doc: enable code syntax highlighting
Use "fenced" code blocks to enable syntax highlighting.  Other markup
and formatting.
2017-04-26 16:59:12 +02:00
Linus Heckemann 5c7f4669a7 nixpkgs manual: Remove obsolete warning (#21117)
PR #815 has already been cherry-picked into the default nix version 1.11.8.
2017-04-23 22:40:35 +02:00
John Ericson b59fdc4289 Merge pull request #25099 from obsidiansystems/cross-lib-foundation
Changes to nixpkgs infra to prepare to better package some pesky cross-compilers

No hashes (native or cross) should be changed
2017-04-23 14:12:42 -04:00
John Ericson 863d79b364 top-level: Introduce targetPackages and a "double link fold"
Each bootstrapping stage ought to just depend on the previous stage, but
poorly-written compilers break this elegence. This provides an easy-enough
way to depend on the next stage: targetPackages. PLEASE DO NOT USE IT
UNLESS YOU MUST!

I'm hoping someday in a pleasant future I can revert this commit :)
2017-04-23 14:01:12 -04:00
Nick Novitski 37b0be688d bundix: 2.0.8 -> 2.1.0 (#25129) 2017-04-23 13:13:50 +01:00
John Ericson 1eabc23961 Merge pull request #24980 from Ericson2314/platform-normalization
Doc for Platform Normalization
2017-04-18 13:34:56 -04:00
John Ericson c13457fe58 doc: Document the structure of {build,host,target}Platforms
Worthwhile to do now that #24610 makes it less abysmal.
2017-04-18 12:48:16 -04:00
Frederik Rietdijk 8d491ec6c6 Python docs: Python 2.x namespace packages may collide when using .withPackages 2017-04-18 09:05:00 +02:00
Jörg Thalheim 10eef8c196
rustup: init at 1.2.0 2017-04-17 15:53:36 +02:00
Carles Pagès cc779bc421 doc: fix overlays paths
It was not updated with 9d6a55aefd.
2017-04-02 10:11:01 +02:00
Jörg Thalheim 36fca93290
rename iana_etc to iana-etc
fixes #23621
2017-03-28 22:35:15 +02:00
Frederik Rietdijk ce6cd33c65 Python docs: small fixes 2017-03-22 12:55:11 +01:00
Joachim Schiele 91debcb482 Update python.md (#23669)
* Update python.md

this makes it clear how to alter `attributes` by using `packageOverrides`

* Update python.md

* Update python.md

* Update python.md

* Update python.md

* Update python.md

* Update python.md
2017-03-21 00:06:51 +01:00
Robin Gloster 72a5cf11cc
doc: remove double space 2017-03-20 20:59:43 +01:00
Robin Gloster 88341c4d2b
Revert "doc: remove double space"
This reverts commit 6393d43380.

Commit added too much changes.
2017-03-20 20:58:18 +01:00
Robin Gloster 6393d43380
doc: remove double space 2017-03-20 20:47:13 +01:00
Matthias Beyer 315e1a23c0 doc: Add rust documentation (#23510) 2017-03-20 20:41:37 +01:00
Bas van Dijk 47b14e0a99 doc/language-frameworks/haskell.md: integer-simple improvements
* Strip the unnecessary 'pkgs' attribute.

* Remove ghc-7.6.3 as a GHC supporting integer-simple.
2017-03-12 23:35:28 +01:00
Alexey Muranov 34afc31c49
doc: fix code highlighting, use valid Nix syntax
Fix code syntax highlighting by specifying language in every code block
and adding some context to Nix code blocks to make them valid
expressions.  Use the same markup style for all code blocks.  Reformat
some code blocks.

fixes #23535
2017-03-06 17:49:07 +01:00
Alexey Muranov 97c9ed0ba1
doc: cleanup whitespace in python.md 2017-03-06 17:48:55 +01:00
Vladimír Čunát a1919db7cd
Merge branch 'master' into staging 2017-02-27 20:15:27 +01:00
Thomas Tuegel c1fc4af9ae
Update Qt and KDE documentation
- Describe the new `libsForQt5.callPackage` interface
- Emphasize that Qt dependencies must be imported unqualified
- Describe the new `kdeWrapper` wrapper generator
2017-02-27 11:49:07 -06:00
Frederik Rietdijk 37704e90e2 Python: explain deterministic build in docs 2017-02-26 14:51:26 +01:00
Vladimír Čunát a50222b1a3
doc/configuration: tidy up text around #23130 changes 2017-02-26 10:32:59 +01:00
Graham Christensen a9c875fc2e
nixpkgs: allow packages to be marked insecure
If a package's meta has `knownVulnerabilities`, like so:

    stdenv.mkDerivation {
      name = "foobar-1.2.3";

      ...

      meta.knownVulnerabilities = [
        "CVE-0000-00000: remote code execution"
        "CVE-0000-00001: local privilege escalation"
      ];
    }

and a user attempts to install the package, they will be greeted with
a warning indicating that maybe they don't want to install it:

    error: Package ‘foobar-1.2.3’ in ‘...default.nix:20’ is marked as insecure, refusing to evaluate.

    Known issues:

     - CVE-0000-00000: remote code execution
     - CVE-0000-00001: local privilege escalation

    You can install it anyway by whitelisting this package, using the
    following methods:

    a) for `nixos-rebuild` you can add ‘foobar-1.2.3’ to
       `nixpkgs.config.permittedInsecurePackages` in the configuration.nix,
       like so:

         {
           nixpkgs.config.permittedInsecurePackages = [
             "foobar-1.2.3"
           ];
         }

    b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
    ‘foobar-1.2.3’ to `permittedInsecurePackages` in
    ~/.config/nixpkgs/config.nix, like so:

         {
           permittedInsecurePackages = [
             "foobar-1.2.3"
           ];
         }

Adding either of these configurations will permit this specific
version to be installed. A third option also exists:

  NIXPKGS_ALLOW_INSECURE=1 nix-build ...

though I specifically avoided having a global file-based toggle to
disable this check. This way, users don't disable it once in order to
get a single package, and then don't realize future packages are
insecure.
2017-02-24 07:41:05 -05:00
Frederik Rietdijk 026cfee6b0 Docs: update Python contributing guidelines 2017-02-22 13:38:29 +01:00
Paul Kinsky b14dd0e6c3
wrap added notes in <note> 2017-02-20 22:25:32 -05:00
Paul Kinsky 2d78767973
Add tips for resolving https issues in containers
I ran into some issues making HTTPS requests from a container built with buildImage. I've added notes with tips for resolving similar issues.
2017-02-20 22:24:54 -05:00
Vladimír Čunát 6bea415b5e
Merge branch 'master' into staging 2017-02-09 08:42:04 +01:00
John Ericson 8cd4c31d6b top-level: Allow nixpkgs to take localSystem directly
This is instead of both system and platform, which is kind of ugly.
2017-02-08 22:06:57 -05:00
John Ericson f6ef6b56fe Merge pull request #22387 from Ericson2314/cross-3-platforms
cross stdenv: let build package's build deps resolve to native packages
2017-02-05 17:41:31 -05:00
John Ericson 5eaea6cee0 cross stdenv: let build package's build deps resolve to native packages
This fixes the "sliding window" principle:
  0. Run packages:       build = native;  host = foreign; target = foreign;
  1. Build packages:     build = native;  host = native;  target = foreign;
  2. Vanilla packages:   build = native;  host = native;  target = native;
  3. Vanilla packages:   build = native;  host = native;  target = native;
  n+3. ...

Each stage's build dependencies are resolved against the previous stage,
and the "foreigns" are shifted accordingly. Vanilla packages alone are
built against themsevles, since there are no more "foreign"s to shift away.

Before, build packages' build dependencies were resolved against
themselves:
  0. Run packages:       build = native;  host = foreign; target = foreign;
  1. Build packages:     build = native;  host = native;  target = foreign;
  2. Build packages:     build = native;  host = native;  target = foreign;
  n+2. ...

This is wrong because that principle is violated by the target
platform staying foreign.

This will change the hashes of many build packages and run packages, but
that is OK. This is an unavoidable cost of fixing cross compiling.

The cross compilation docs have been updated to reflect this fix.
2017-02-05 12:01:53 -05:00
Vladimír Čunát 3b583d943e
Merge #19328: mkWrapper fix and docs 2017-02-05 14:09:22 +01:00
Vladimír Čunát adab4cd58b
Merge branch 'master' into staging 2017-02-03 11:47:38 +01:00
Bas van Dijk dfcc9e2994 ghc: support building with integer-simple and provide package sets for it
If the flag enableIntegerSimple is true GHC will be build with the GPL-free but
slower integer-simple library instead of the faster but GPLed integer-gmp
library.

The attribute `pkgs.haskell.compiler.integer-simple."${ghcVersion}"` provides a
GHC compiler build with `integer-simple`.

Similarly, the attribute `pkgs.haskell.packages.integer-simple."${ghcVersion}"`
provides a package set supporting `integer-simple`.

Closes https://github.com/NixOS/nixpkgs/pull/22121.
Closes https://github.com/NixOS/nixpkgs/issues/5493.
2017-02-02 10:57:00 +01:00
Domen Kožar 220adbb039
docs: fix link for python 2017-02-01 21:32:06 +01:00
Eelco Dolstra 9d6a55aefd
~/.nixpkgs -> ~/.config/nixpkgs
The former is still respected as a fallback for config.nix for
backwards compatibility (but not for overlays because they're a new
feature).
2017-02-01 16:07:55 +01:00
Eelco Dolstra 7dacca324d
$NIXPKGS_OVERLAYS -> <nixpkgs-overlays>
The Nix search path is the established mechanism for specifying the
location of Nix expressions, so let's use it instead of adding another
environment variable.
2017-02-01 16:07:54 +01:00
Vladimír Čunát 49b136377a
Merge #16501: add a guide about vim plugins 2017-01-30 18:28:20 +01:00
Vladimír Čunát 69348badb8
doc vim: nitpicks 2017-01-30 18:27:44 +01:00
Lorenzo Manacorda 4e0bb261d0 Make more visible which fetch approach is best
Prepend "bad/better/best" to each paragraph, to make more visible which approach is best
2017-01-30 11:28:52 +01:00
Domen Kožar f87deb0b3a Merge pull request #22101 from zimbatm/no-md5
Bye bye MD5
2017-01-25 09:07:48 +01:00
John Ericson 39fb46f538 nixpkgs docs: Cross compilation docs 2017-01-24 11:37:56 -05:00
John Ericson 76ea89aa78 nixpkgs doc: Talk about nativeBuildInputs and propgatedNativeBuildInputs
Do so in the stdenv section where the other two are discussed. This can be
done without brining up cross-compilation by talking about build-time vs
run-time.
2017-01-24 11:37:56 -05:00
zimbatm 6f21a99bdd doc/old/cross.txt: md5 -> sha256 2017-01-24 16:26:05 +00:00
Franz Pletz 00ab8e84c6
doc: improve hardening docs
Fixes #18887.
2017-01-20 17:46:44 +01:00
Jörg Thalheim 3fdde25b4c Merge pull request #21962 from Mic92/gemdir
bundleEnv: Used gemdir for most applications now
2017-01-19 09:34:14 +01:00
Jörg Thalheim a9495b3066 Merge pull request #21837 from Azulinho/python-docs_add_virtualenv_and_nixshell_example
python docs: add an example for a virtualenv and pip through nix-shell
2017-01-18 08:37:13 +01:00
Jörg Thalheim c9ff7e49a8
docs: gemdir is now preferred attribute for bundlerEnv 2017-01-18 00:52:57 +01:00
Nicolas B. Pierron 88ba960a6d Fix nixpkgs manual generation, missing para closing tag. 2017-01-16 01:17:33 +01:00
Nicolas B. Pierron 2ad710e70e Fix extra nits from aneeshusa 2017-01-16 01:17:33 +01:00
Nicolas B. Pierron 2d6532b330 Update overlay documentation by following nits from aneeshusa. 2017-01-16 01:17:33 +01:00
Nicolas B. Pierron 51d3c931e1 Replace 'phases' by 'layers' in overlays documentation. 2017-01-16 01:17:33 +01:00
Nicolas B. Pierron f9da1fa957 Throw an error if NIXPKGS_OVERLAYS is invalid and improve documentation. 2017-01-16 01:17:33 +01:00
Nicolas B. Pierron f5dfe78a1e Add overlays mechanism to Nixpkgs.
This patch add a new argument to Nixpkgs default expression named "overlays".

By default, the value of the argument is either taken from the environment variable `NIXPKGS_OVERLAYS`,
or from the directory `~/.nixpkgs/overlays/`.  If the environment variable does not name a valid directory
then this mechanism would fallback on the home directory.  If the home directory does not exists it will
fallback on an empty list of overlays.

The overlays directory should contain the list of extra Nixpkgs stages which would be used to extend the
content of Nixpkgs, with additional set of packages.  The overlays, i-e directory, files, symbolic links
are used in alphabetical order.

The simplest overlay which extends Nixpkgs with nothing looks like:

```nix
self: super: {
}
```

More refined overlays can use `super` as the basis for building new packages, and `self` as a way to query
the final result of the fix-point.

An example of overlay which extends Nixpkgs with a small set of packages can be found at:
  https://github.com/nbp/nixpkgs-mozilla/blob/nixpkgs-overlay/moz-overlay.nix

To use this file, checkout the repository and add a symbolic link to
the `moz-overlay.nix` file in `~/.nixpkgs/overlays` directory.
2017-01-16 01:17:33 +01:00
Kier Davis cb4ebb6749
docs: fix a couple of unmatched parentheses 2017-01-12 21:04:20 +00:00
Azul 58613a7eed python docs: update block according to code review 2017-01-12 16:59:27 +00:00