Commit Graph
100 Commits
Author SHA1 Message Date
Nicolas B. Pierron 5e3ce6334c Remove applyGlobalOverrides's pkgsOrig argument.
This patch change the behaviour or overridePackages:

 - Before, overridePackages was based on top of the set of packages
   overriden by `~/.nixpkgs/config.nix` file.

 - After, overridePackages should when given a function f, behave almost¹
   the same as-if the packageOverrides attribute of `~/.nixpkgs/config.nix`
   file attribute was set to f, assuming that we ignore the extra `self`
   argument.

¹ It is not yet exactly the same because we have many paths which are
re-entering nixpkgs while taking the default attributes, such as the
bootstrap phase of stdenv.  Thus if the nixpkgs configuration overrides any
of the dependencies need for the bootstrap, then we might get different sha.
2016-03-20 16:11:51 +00:00
Nicolas B. Pierron 007500f2ec Move the merge of the overrides from pkgsFun to applyGlobalOverrides. 2016-03-20 16:11:51 +00:00
Nicolas B. Pierron 054327729c Move stdenvDefault into its own file. 2016-03-20 16:11:51 +00:00
Nicolas B. Pierron f043ffcea4 Move the set of aliases after 'self', such that we can later use the extend function. 2016-03-20 14:52:28 +00:00
Nicolas B. Pierron a09683ed29 Remove unused 'ncat' alias, as a package with the same name already exists. 2016-03-20 14:51:20 +00:00
Nicolas B. Pierron 0b67f7cb5d Move tweakAlias function into the aliases.nix file, and rename it. 2016-03-20 14:50:27 +00:00
Nicolas B. Pierron f7c86ee018 Move merge of stdenvDefault from the self attribute to the returned value of pkgsFun. 2016-03-20 14:31:27 +00:00
Nicolas B. Pierron be3531a56e Replace with statements of stdenvDefault to rely on pkgs instead of self. 2016-03-20 14:31:27 +00:00
Nicolas B. Pierron 020bb40454 Split stdenv attribute set.
Extract stdenvDefault from the set of all packages.  As this set of
attributes are inter-dependant, probably due to stdenvOverrides, we have to
keep them in a close set of inter-dependent options.

I guess I will have to investigate more ...
2016-03-20 14:31:27 +00:00
Nicolas B. Pierron 7f3a4f4287 Swap conditions of stdenvOverrides to prevent infinite loops while evaluating stdenvCross.
While evaluating the derivation of xbursttools:
  the condition `pkgs.stdenv ? overrides` causes the evaluation of
  `stdenvCross`.  This evaluation comes too early during the execution, as
  it prevents the resolution of names such as `pkgs.lib`, and
  `stdenvAdapaters.makeStdenvCross`, which we want to take from `pkgs`
  instead of `self` in following patches.

By swapping the conditions, we effectively make the resolution of `pkgs.lib`
and `stdenvAdapaters.makeStdenvCross` possible through the pkgs attribute.
2016-03-20 14:31:26 +00:00
Nicolas B. Pierron 8d355b8d85 Under pkgsFun, expand self attribute, and rename self_ to self.
Note, the aliases are now computed against the set of packages defined in
the set of all packages, and no longer apply to any overriden package.

I think this is better as this reduces the amount of surprizes.
2016-03-20 14:31:26 +00:00
Nicolas B. Pierron ffcb6682bc Under pkgsFun, move the merge of helper functions from self_ to self. 2016-03-20 14:31:26 +00:00
Nicolas B. Pierron a658645e1e Remove with helperFunction above the list of all packages.
This modification change the names bound to the `helperFunctions` attribute
set, to be bound to `self` which is constructed by merging the same
`helperFunctions` set with the set of all packages.

This patch works as expected because none of the helperFunction names is
aliased by the name of a package.
2016-03-20 14:31:26 +00:00
Nicolas B. Pierron a8374f2168 Under applyGlobalOverrides, inline mkOverrides in overrides. 2016-03-20 14:31:26 +00:00
Nicolas B. Pierron 71b2fd92b3 Move mkOverrides under applyGlobalOverrides. 2016-03-20 14:31:26 +00:00
Nicolas B. Pierron acaa99cbd2 Move applyGlobalOverrides comment to stdenvOverrides, where it fits better. 2016-03-20 14:31:26 +00:00
Nicolas B. Pierron 00963c3dfd Extract stdenvOverrides function out of mkOverrides function. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron a5188bda7b Unify the applyGlobalOverride function with the overridePackages function. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron a6e260c91f Add an extra argument to the overrider function of applyGlobalOverrides. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron f9a29887fe Move pkgsOrig outside applyGlobalOverrides and provide it as argument. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron 5f4cb91a1c Move helperfunctions and stdenvAdapters under pkgsFun.
The `helperFunctions` and `stdenvAdapters` both use the `pkgs` attribute as
input, either to inherit some properties, either to use it as argument.

The `pkgs` binding used in both expressions of the `helperFunctions` and
`stdenvAdapters` is no longer the result of the `applyGlobalOverrides`
function, but the argument of the `pkgsFun` function.

The `pkgsFun` functions is called twice under `applyGlobalOverrides`, and in
both cases, the first argument of `pkgsFun` correspond to the result of
`applyGlobalOverrides`.

Thus, this modification will change the bindings, but the evaluation of
`<nixpkgs>`.

A third call the `pkgsFun` exists under `overridePackages` in the set of all
packages. Previously, the `helperFunctions` and `stdenvAdapaters` would use
the functions defined as part of the default `<nixpkgs>` set.  With this
modification, the `helperFunctions` and the `stdenvAdapters` are now using
the fix-point of the newly evaluated package set.

This implies that this modification allow the user to use
`overridePackages`, which is already not recommended for performance
reasons, to override the inputs of the `helperFucntions` and
`stdenvAdapaters` too, where this was not possible before.
2016-03-20 14:31:25 +00:00
Nicolas B. Pierron 11a566b5bc Move 'with helperFunctions' above the set of all packages. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron a39c5ff0d8 Re-indent the top of pkgsFun. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron 9444d6e6de Split miss-indented last lines. to simplify future diffs. 2016-03-20 14:31:25 +00:00
Nicolas B. Pierron 804ade1c6d Merge pull request #14029 from nbp/alias-packages
Move all aliases into their own file.
2016-03-18 21:22:50 +00:00
Nicolas B. Pierron 89f7dcaa21 Move all aliases into their own file. 2016-03-18 21:22:27 +00:00
Nicolas B. Pierron 1941c80610 rr: 4.0.3 -> 4.2.0 2016-03-18 16:01:14 +01:00
Nicolas B. Pierron 72c6f8a140 Ensure that we can evaluate the platform attribute of ocaml packages. 2016-03-13 19:08:26 +00:00
Nicolas B. Pierron 6313a5698a Replace references to all-packages.nix, by references to the top-level of nixpkgs repository. 2016-03-13 18:25:52 +00:00
Nicolas B. Pierron 73630b8986 nsd service: add non-backward compatible release note entry 2016-02-28 09:18:39 +01:00
Nicolas B. Pierron 8fe518e763 Merge pull request #11291 from rvl/rl-longview
release-notes: add longview as a new service
2015-11-26 21:52:25 +00:00
Nicolas B. Pierron 21abe66d78 Merge pull request #11218 from ebzzry/typo-fix
Fixed typo in stdenv documentation.
2015-11-23 19:51:39 +00:00
Nicolas B. Pierron 946dbb4ea4 Merge pull request #11185 from CMCDragonkai/patch-1
Change the preset networking.hostId to use `mkDefault` so it can be easily changed by the user later.
2015-11-21 14:13:14 +00:00
Nicolas B. Pierron 4e61fc89d2 Merge pull request #11106 from nbp/nixos-reentry
Add a way to pin a NixOS version within the module system.
2015-11-20 20:11:21 +00:00
Nicolas B. Pierron a5992ad61b Add a way to pin a NixOS version within the module system.
This modification add a way to re-evaluate the module system with a
different version of NixOS, or with a different set of arguments.
2015-11-19 20:58:45 +00:00
Nicolas B. Pierron 13a379cfa2 Merge pull request #10672 from wizeman/u/upd-rr
rr: 3.0.0 -> 4.0.0
2015-11-05 14:21:25 +00:00
Nicolas B. Pierron 50146ce815 Add pkgs module argument documentation for #6794 incompatible change. 2015-09-30 21:13:42 +02:00
Nicolas B. Pierron 03fb785b5c Merge pull request #9497 from joachifm/fuppes-broken
fuppes: mark as broken
2015-08-28 20:51:42 +02:00
Nicolas B. Pierron bb81ba7ef6 sane-config: Prevent find warnings by moving maxdepth argument first. 2015-08-23 13:55:25 +02:00
Nicolas B. Pierron f8caa49f00 sane-config: Merge /etc/sane.d/dll.conf content. 2015-08-23 13:54:34 +02:00
Nicolas B. Pierron 77250457bc Merge pull request #9183 from nbp/option-usage
Update option-usages.nix expression to work with newer version of the module system.
2015-08-15 12:29:32 +02:00
Nicolas B. Pierron c47e89623b Update option-usages.nix expression to work with newer version of the module system. 2015-08-09 17:52:34 +02:00
Nicolas B. Pierron da74a8dc35 Merge pull request #9166 from taku0/thunderbird-38.1.0
thunderbird: 31.7.0 -> 38.1.0
2015-08-08 18:46:05 +02:00
Nicolas B. Pierron d460e1b5c2 freeciv: change the naming scheme to add build annotations before the version number. 2015-08-08 16:54:28 +02:00
Nicolas B. Pierron 256c4996c4 freeciv: 2.4.0 -> 2.5.0 2015-08-07 17:41:12 +02:00
Nicolas B. Pierron 37dad0ee0b Merge pull request #8814 from nbp/module-arg-context
NixOS modules: Add error context on module arguments evaluation.
2015-07-14 16:35:01 +02:00
Nicolas B. Pierron a6b455bbae NixOS modules: Add error context on module arguments evaluation. 2015-07-14 15:07:54 +02:00
Nicolas B. Pierron ff8b35a643 Merge pull request #8806 from nbp/issue-8152
Issue 8152 - Reduce number of attribute sets created by replaceChars.
2015-07-14 12:34:36 +02:00
Nicolas B. Pierron be65ac7c32 Issue 8152 - Reduce number of attribute set created by replaceChars. 2015-07-13 23:46:38 +02:00
Nicolas B. Pierron 7585d42d2b Fix #7354 - Accept _module attributes added to every submodule. 2015-04-20 23:58:32 +02:00
Nicolas B. Pierron 9647a72835 Fix amazon default configuration.nix file. 2015-04-09 22:18:13 +02:00
Nicolas B. Pierron c653111167 Merge pull request #7278 from nbp/nixos-manual-x86
Fix NixOS Manual builds
2015-04-08 14:24:23 -07:00
Nicolas B. Pierron 296e6c4991 Fix #7252 - NixOS Manual: Carry the current system value to evaluation of the manual. 2015-04-08 23:14:19 +02:00
Nicolas B. Pierron 3eef61a6eb NixOS Manual: Do not use unfree packages as default value. 2015-04-08 23:14:19 +02:00
Nicolas B. Pierron 889f72bad4 Merge pull request #6794 from nbp/module-system-tweaks
Module system improvements
2015-04-03 14:22:33 -07:00
Nicolas B. Pierron 6de931a0f8 Merge rename.nix changes. 2015-04-03 23:12:12 +02:00
Nicolas B. Pierron 7f1a782d91 Add tests for the new module system improvements. 2015-03-16 22:38:41 +01:00
Nicolas B. Pierron 05e8a48fb4 Document and rename internal option of modules. 2015-03-15 14:45:42 +01:00
Nicolas B. Pierron ed91474e9b Share common code for merging option definitions.
This move idioms which were used in `evalOptionValue` and in the `merge`
functions of `listOf` and `attrsOf` types, such that we can use a names such
as `isDefined` and `optionalValue` instead or repeating identical
comparisons of `defsFinal == []`.
2015-03-12 23:42:58 +01:00
Nicolas B. Pierron dd4f5f6b78 Rename mergeDefinitions internal steps to functions which are independent of each others. 2015-03-12 23:42:58 +01:00
Nicolas B. Pierron 83dc60456e Expose submodule arguments to builtins.functionArgs before applying the arguments.
The current implementation of the ApplyIfFunction is looking at the
arguments of a module to decide which arguments should be given to each
module.  This patch make sure that we do not wrap a submodule function in
order to keep functionArgs working as expected.
2015-03-12 23:42:58 +01:00
Nicolas B. Pierron 9f2865515d Fix infinite loop in fontconfig-ultimate.nix
With the new evaluation of arguments, pkgs is now defined by the
configuration, which implies that option declaration with pkgs.lib
will cause an infinite loop.
2015-03-12 23:42:58 +01:00
Nicolas B. Pierron 7699f34c52 Merge pull request #6242 from nbp/issue-6161
Issue #6161 - Add tests for NixOS modules.
2015-02-23 12:12:01 -08:00
Nicolas B. Pierron de0f122b01 Issue #6161 - Register lib tests as release blockers. 2015-02-09 00:07:44 +01:00
Nicolas B. Pierron 6d15e32536 Issue #6161 - Add tests for NixOS modules. 2015-02-09 00:07:44 +01:00
Nicolas B. Pierron 8196727fad Improve the documentation of the syncserver module. 2015-01-18 12:21:23 +01:00
Nicolas B. Pierron 0d13ea0131 Change default syncserver listen.port to a safer one. 2015-01-18 12:20:44 +01:00
Nicolas B. Pierron 816229593a Merge pull request #5441 from nbp/mkAlias
modules: Extract mkAliasDefinition from the rename.nix NixOS module.
2015-01-01 06:59:42 -08:00
Nicolas B. Pierron d7f29acd48 modules: Extract mkAliasDefinition from the rename.nix NixOS module. 2014-12-22 22:38:38 +01:00
Nicolas B. Pierron c184d7e7e0 Merge pull request #5421 from nbp/mkSink
modules: Add mkSinkUndeclaredOptions.
2014-12-22 11:59:42 -08:00
Nicolas B. Pierron 6a7971bee7 Merge pull request #5416 from nbp/nixos-option-include
nixos-option: Support -I option
2014-12-21 15:11:11 -08:00
Nicolas B. Pierron e4fb4168fc Merge pull request #5415 from nbp/nixos-options-submodules
nixos-option: Handle submodules
2014-12-21 15:10:46 -08:00
Nicolas B. Pierron 2f365923d6 modules: Add mkSinkUndeclaredOptions. 2014-12-21 14:50:46 +01:00
Nicolas B. Pierron 91cc22e841 Merge pull request #5405 from nbp/nixos-options-derivation
nixos-option: Print the outPath of derivation for option values.
2014-12-20 16:51:49 -08:00
Nicolas B. Pierron c231506b5a Merge pull request #5362 from nbp/update-channels
Add a script to add git branches for each channel.

To create / update references to remote / local channels, you have to run `./maintainers/scripts/update-channel-branches.sh` while you are at the top-level of nixpkgs work directory.  To make this convenient for Nixpkgs / NixOS developer, one can run the following command:

```
$ git config --add alias.fetch-channels '!sh -c "$(git rev-parse --show-cdup)maintainers/scripts/update-channel-branches.sh"'
```

Which will register the alias fetch-channels such that the script can used from sub-directory of nixpkgs by running `git fetch-channels`.
2014-12-20 16:49:18 -08:00
Nicolas B. Pierron 974edc5056 nixos-option: Use <nixpkgs/nixos> instead of <nixpkgs>. 2014-12-21 01:33:06 +01:00
Nicolas B. Pierron 82a5f54c0d nixos-option: Support -I option. 2014-12-20 20:30:19 +01:00
Nicolas B. Pierron c9682a22ff nixos-option: Produce nicer error messages in case of typos. 2014-12-20 19:52:28 +01:00
Nicolas B. Pierron 640428d3c5 nixos-option: Handle 'attrsOf submodule' options. 2014-12-20 19:16:43 +01:00
Nicolas B. Pierron cd2f7ce9f9 nixos-option: Improve error messages to avoid reporting internal location and traces. 2014-12-19 23:00:52 +01:00
Nicolas B. Pierron b2abfe54b3 nixos-option: Print derivation outPath within attribute sets and list, when the strict mode is used. 2014-12-19 23:00:00 +01:00
Nicolas B. Pierron 9db6a84f0b nixos-option: Print the outPath of derivation for option values. 2014-12-19 22:33:24 +01:00
Nicolas B. Pierron 9334085e80 update-channel-branches.sh: Add verbosity to improve the user experience, and update NixOS documentation. 2014-12-18 22:25:21 +01:00
Nicolas Pierron d7edec4888 Add other source of channels, and distinguish between local and remote channels. 2014-12-18 01:24:40 +00:00
Nicolas Pierron f0c21ab3f7 Add a script to add git branches for each channel. 2014-12-17 00:44:58 +00:00
Nicolas B. Pierron 42c3c205c4 Merge remote-tracking branch 'origin/master' into syncserver 2014-12-14 14:17:56 +01:00
Nicolas B. Pierron 28f4ef2a5f Disable configparser backport on pypy. 2014-12-13 22:26:13 +01:00
Nicolas B. Pierron 1a1fc17957 Firefox Sync Server: Create the private config file as non-world readable. 2014-12-12 22:14:38 +01:00
Nicolas B. Pierron a0154145d5 Firefox Sync Server: Fix copy&paste issue. 2014-12-12 22:13:03 +01:00
Nicolas B. Pierron 1532709854 paste-deploy: Remove unnecessary propagated build inputs. 2014-12-12 21:53:07 +01:00
Nicolas B. Pierron b4ab60cd5e configparser, konfig, umemcache and pybrowserid: Disable python 3 support. 2014-12-12 21:52:14 +01:00
Nicolas B. Pierron 0570a08b83 Merge remote-tracking branch 'origin/master' into syncserver 2014-12-11 23:49:19 +01:00
Nicolas B. Pierron 01886aef22 Add Firefox Sync server module. 2014-12-11 23:48:15 +01:00
Nicolas B. Pierron 0a0678cf5a Fix mozsvc, such that we can split public/private parts of the configuration of the syncserver. 2014-12-11 23:41:36 +01:00
Nicolas B. Pierron c74c6360e0 Fix konfig, in order to propagate its dependencies on configparser and argparse. 2014-12-11 23:40:34 +01:00
Nicolas B. Pierron 62e48b42d5 Merge pull request #5 from ametaireau/syncserver 2014-12-08 14:59:22 -08:00
Nicolas B. Pierron 428a83713b Add PasteScript 1.7.5 2014-12-08 22:26:28 +01:00
Nicolas B. Pierron bd68791d08 Merge pull request #2 from ametaireau/syncserver 2014-12-08 12:53:53 -08:00
Nicolas B. Pierron b8bb7e6db9 Add memcache 1.6.3 2014-12-08 21:25:04 +01:00
Nicolas B. Pierron 5f488a16ff Add tokenserver 1.2.11 2014-12-08 21:07:46 +01:00