about summary refs log tree commit diff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2018-09-06lib: move assertMsg and assertOneOf to their own library fileProfpatsch5-46/+53
Since the `assertOneOf` uses `lib.generators`, they are not really trivial anymore and should go into their own library file.
2018-09-06lib/trivial: add a few examples of usage of assertMsg/assertOneOfProfpatsch3-6/+16
2018-09-06lib/trivial: add assertOneOfProfpatsch2-1/+19
2018-09-06lib/trivial: add assertMsgProfpatsch2-1/+22
2018-09-06Merge branch 'no-toPath'Shea Levy2-5/+4
2018-09-03Merge pull request #46011 from markuskowa/homepages-2xeji1-0/+5
Cleanup homepage links
2018-09-03lsof: add license + update homepageMarkus Kowalewski1-0/+5
lib/licenses: add purdue style BSD license
2018-09-03lib/trivial.nix: fix missing parensVladimír Čunát1-6/+6
Broken in 62dca7c9a; the tricky thing is that it depends on nix version. Explanation: https://github.com/NixOS/nix/issues/629
2018-08-30Merge pull request #45038 from symphorien/optoptSilvan Mosberger2-22/+46
module system: rework module merging
2018-08-30Nix minimal version: 1.11 -> 2.0Jan Tojnar1-1/+1
Placeholders are just too convenient.
2018-08-28hurd: cleanup unmaintained targetJörg Thalheim5-8/+4
This has been not touched in 6 years. Let's remove it to cause less problems when adding new cross-compiling infrastructure. This also simplify gcc significantly.
2018-08-27module system: rework module mergingSymphorien Gibol2-22/+46
The asymptotic complexity is now much lower.
2018-08-21Merge remote-tracking branch 'origin/master' into stagingMatthew Bauer4-2/+17
2018-08-21[RFC] ppc64le enablement (#45340)CrystalGamma5-1/+29
* ppc64le enablement * gcc, glibc: properly handle __float128 * lib/systems, stdenv: syntax cleanup * gcc7: remove ugly hack * gcc: add/update __float128 flags * stdenv: add another pair of quotes for consistency * gcc: move __float128 flag for ppc64le-glibc into common/platform-flags.nix
2018-08-21function rewritten by @InfinisilAaron Andersen1-8/+1
2018-08-21as requested:Aaron Andersen2-1/+17
- moved function into strings.nix - renamed function from makePerl5Lib - removed duplicates entries in the resulting value - rewrote the function from scratch after learning a few things (much cleaner now)
2018-08-20lib: Use lib.fixed-points.extends to avoid repetitionJohn Ericson1-1/+2
Another attempt after my sloppy https://github.com/NixOS/nixpkgs/commit/48ccdf322d9e7a68d0caf5833511ee3e53ec7d3a. @Infinisil, thanks again, reverted in https://github.com/NixOS/nixpkgs/commit/4794aa5de233b5bf2d1c3245946379699d023467 and explained my mistakes in https://github.com/NixOS/nixpkgs/commit/48ccdf322d9e7a68d0caf5833511ee3e53ec7d3a#commitcomment-29678643. I start with their work and provide this proof of this commit's correctness: ```nix (lib.fixedPoints.extends (lib.flip g) f) # now ((f: rattrs: self: let super = rattrs self; in super // f self super) (lib.flip g) f) # inline extends (self: let super = f self; in super // (lib.flip g) self super) # beta reduce (self: let super = f self; in super // g super self) # beta reduce (self_: let super = f self_; in super // g super self_) # alpha rename (self_: let super = f self_; in super // g super self_) # original, same ``` Eventually we might harmonize `overrideScope`'s `g` parameter with the general pattern, but I leave that breaking change as a separate step. Best not to refactor and break at once, and at least the abstractions make the oddity clearer.
2018-08-20xfig: 3.2.5b -> 3.2.7aMarkus Kowalewski1-0/+5
init fig2dev as separate package (3.2.7a). fig2dev was included in xfig in the previous version.
2018-08-16curl: add licenseMarkus Kowalewski1-0/+5
2018-08-15Merge pull request #44896 from cdepillabout/vbox-extpackzimbatm1-0/+6
add derivation for the virtualbox oracle extension pack
2018-08-15lib/recursiveUpdateUntil: add a test & release note for fixProfpatsch1-0/+24
2018-08-15lib/recursiveUpdateUntil: fix code to match documentationMathijs Kwik1-2/+3
$ nix repl lib Welcome to Nix version 2.0.2. Type :? for help. Loading 'lib'... Added 350 variables. -- this is the exact example from the function's documentation: nix-repl> recursiveUpdateUntil (path: l: r: path == ["foo"]) { # first attribute set foo.bar = 1; foo.baz = 2; bar = 3; } { #second attribute set foo.bar = 1; foo.quz = 2; baz = 4; } { bar = 3; baz = 4; foo = { bar = 1; baz = 2; quz = 2; }; } -- although the documentation says: { foo.bar = 1; # 'foo.*' from the second set foo.quz = 2; # bar = 3; # 'bar' from the first set baz = 4; # 'baz' from the second set }
2018-08-08Add the virtualbox-puel license to the licenses file.(cdep)illabout1-0/+6
2018-07-28systems: fix netbsd triple parsingMatthew Bauer1-4/+6
binutils expects x86_64-unknown-netbsd<version> (only 3 parts!). Any other combo seems to fail. Also handle darwin versions similarly. /cc @Ericson2314
2018-07-28elk: 6.2.4 -> 6.3.2Bas van Dijk1-0/+6
* The ELK stack is upgraded to 6.3.2. * `elasticsearch6`, `logstash6` and `kibana6` now come with X-Pack which is a suite of additional features. These are however licensed under the unfree "Elastic License". * Fortunately they also provide OSS versions which are now packaged under: `elasticsearch6-oss`, `logstash6-oss` and `kibana6-oss`. Note that the naming of the attributes is consistent with upstream. * The test `nix-build nixos/tests/elk.nix -A ELK-6` will test the OSS version by default. You can also run the test on the unfree ELK using: `NIXPKGS_ALLOW_UNFREE=1 nix-build nixos/tests/elk.nix -A ELK-6 --arg enableUnfree true`
2018-07-26lib/trivial: move zipIntBits to its own fileProfpatsch2-40/+49
The amount of implementation detail really should not be the first thing in a prominent file called `trivial.nix`.
2018-07-26lib/trivial: unify & improve docstringsProfpatsch1-23/+61
- add section headers - unify comment syntax - add examples Tested with: nix-instantiate --strict --eval ./lib/tests/misc.nix
2018-07-26systems: Allow detection of powerpc and sparcJohn Q Crosscompiler2-0/+4
2018-07-21treewide: fix build with disallowed aliases (#43872)volth1-1/+1
fixes build with disallowed aliases
2018-07-20[bot] treewide: remove unused 'inherit' in let blocksvolth4-9/+4
2018-07-20[bot]: remove unreferenced codevolth5-9/+0
2018-07-16licenses: Add CC-BY-NC-4.0André-Patrick Bubel1-0/+6
2018-07-15lib.debug: fix traceValSeqFnMatthieu Coudron1-1/+1
was calling the wrong parent version.
2018-07-12Revert "lib: Use lib.fixed-points.extends to avoid repetition"Silvan Mosberger1-1/+1
This reverts commit 48ccdf322d9e7a68d0caf5833511ee3e53ec7d3a.
2018-07-09lib: Use lib.fixed-points.extends to avoid repetitionJohn Ericson1-1/+1
2018-07-05lib.concatMap and lib.mapAttrs to be builtinsvolth2-3/+4
2018-07-03lib.generators.toPlist: add floatsMatthew Bauer1-6/+9
Nix now supports floats & we can pretty easily map them to Plist’s <real></real> type. Note that I am unsure how this affects older version of Nix that may or may not have builtins.isFloat available. Make sure this satisfies minver.nix’s "1.11" requirement.
2018-07-03lib: add float option typeRichard Marko2-1/+8
2018-06-30linux: translate config to structured configDan Peebles1-0/+57
Instead of using a string to describe kernel config, use a nix attribute set, then converted to a string. - allows to override the config, aka convert 'yes' into 'modules' or vice-versa - while for now merging different configs is still crude (last spec wins), at least there should be only one CONFIG_XYZ value compared to the current string config where the first defined would be used and others ignored. [initial idea by copumpkin in 2016, a major rebase to 2018 by teto]
2018-06-28Merge pull request #42669 from obsidiansystems/upstream-plistMatthew Bauer1-1/+48
Upstream PLIST handling
2018-06-28generators: refactor toPlistMatthew Bauer1-33/+32
Address PR comments Refactors - Rename toPLIST -> toPlist
2018-06-28generators: refactor toPLISTMatthew Bauer1-43/+43
2018-06-27generators: add PLIST handlingMatthew Bauer1-0/+48
/cc @LnL7 @3noch
2018-06-27Merge pull request #42138 from NixOS/yegortimoshenko-patch-6xeji1-1/+1
lib/modules: decrease mkOptionDefault priority to 1500
2018-06-27Merge pull request #40418 from oxij/lib/fix-module-aliasesMichael Raskin1-16/+18
lib, nixos: fix module aliases in presence of defaults
2018-06-26Merge pull request #42599 from obsidiansystems/xcodever-in-systemMatthew Justin Bauer2-3/+4
xcode: add xcodePlatform to system
2018-06-25xcode: add xcodePlatform to systemMatthew Bauer2-3/+4
This give us a little bit more control over what target we are using. Eventually we can target other things like WatchOS or MacOS.
2018-06-25Merge pull request #42399 from obsidiansystems/xcodever-in-systemMatthew Justin Bauer1-0/+4
xcode: add xcodeVer to system
2018-06-25xcode: add xcodeVer to systemMatthew Bauer1-0/+4
This version number controls which xcode version to use when building cross to iOS.
2018-06-24Mark more unfree licenses as unfree. See also #20256.Théo Zimmermann1-0/+6