about summary refs log tree commit diff
path: root/src/nix
AgeCommit message (Collapse)AuthorFilesLines
2017-07-26 nix search: Add a cacheEelco Dolstra1-9/+69
The package list is now cached in ~/.cache/nix/package-search.json. This gives a substantial speedup to "nix search" queries. For example (on an SSD): First run: (no package search cache, cold page cache) $ time nix search blender Attribute name: nixpkgs.blender Package name: blender Version: 2.78c Description: 3D Creation/Animation/Publishing System real 0m6.516s Second run: (package search cache populated) $ time nix search blender Attribute name: nixpkgs.blender Package name: blender Version: 2.78c Description: 3D Creation/Animation/Publishing System real 0m0.143s
2017-07-20 nix-shell: Use bashInteractive from <nixpkgs>Eelco Dolstra1-3/+3
This adds about 0.1s to nix-shell runtime in the case where bashInteractive already exists. See discussion at https://github.com/NixOS/nixpkgs/issues/27493.
2017-07-20 nix search: Ignore top-level eval errorsEelco Dolstra2-2/+13
$NIX_PATH may contain elements that don't evaluate to an attrset (like "nixos-config"), so ignore those.
2017-07-20 nix search: Add --json flagEelco Dolstra1-13/+27
2017-07-20 Add "nix search" commandEelco Dolstra3-20/+160
2017-07-14 nix path-info: Show download sizes for binary cache storesEelco Dolstra1-1/+1
E.g. $ nix path-info --json --store https://cache.nixos.org nixpkgs.thunderbird -S ... "downloadHash": "sha256:1jlixpzi225wwa0f4xdrwrqgi47ip1qpj9p06fyxxg07sfmyi4q0", "downloadSize": 43047620, "closureDownloadSize": 84745960 } ]
2017-07-14 Avoid a call to derivationFromPath()Eelco Dolstra3-28/+29
This doesn't work in read-only mode, ensuring that operations like nix path-info --store https://cache.nixos.org -S nixpkgs.hello (asking for the closure size of nixpkgs.hello in cache.nixos.org) work when nixpkgs.hello doesn't exist in the local store.
2017-07-14 nix path-info: Don't barf on invalid pathsEelco Dolstra1-1/+1
Now you get [ { "path": "/nix/store/fzvliz4j5xzvnd0w5zgw2l0ksqh578yk-bla", "valid": false } ]
2017-07-14 StorePathsCommand: Don't build installablesEelco Dolstra5-8/+10
On second though this was annoying. E.g. "nix log nixpkgs.hello" would build/download Hello first, even though the log can be fetched directly from the binary cache. May need to revisit this.
2017-07-14 nix: Show help when no arguments are givenEelco Dolstra2-7/+10
Fixes #1464.
2017-07-04 Fix handling of expression installables with a / in themEelco Dolstra1-4/+4
2017-07-04 Support base-64 hashesEelco Dolstra2-20/+22
Also simplify the Hash API. Fixes #1437.
2017-06-07 Don't show flags from config settings in "nix --help"Eelco Dolstra3-5/+17
2017-06-07 nix: Add --help-config flagEelco Dolstra1-0/+20
2017-06-07 nix: Make all options available as flagsEelco Dolstra1-0/+2
Thus, instead of ‘--option <name> <value>’, you can write ‘--<name> <value>’. So --option http-connections 100 becomes --http-connections 100 Apart from brevity, the difference is that it's not an error to set a non-existent option via --option, but unrecognized arguments are fatal. Boolean options have special treatment: they're mapped to the argument-less flags ‘--<name>’ and ‘--no-<name>’. E.g. --option auto-optimise-store false becomes --no-auto-optimise-store
2017-05-29 Fix build failure on Debian/UbuntuEelco Dolstra1-0/+1
http://hydra.nixos.org/build/53537463
2017-05-16 Improve progress indicatorEelco Dolstra5-65/+211
2017-05-15 nix ls: support '/' for the root directoryBenno Fünfstück1-0/+4
2017-05-10 Replace readline by linenoiseEelco Dolstra2-110/+63
Using linenoise avoids a license compatibility issue (#1356), is a lot smaller and doesn't pull in ncurses.
2017-05-08 Add "nix edit" commandEelco Dolstra1-0/+75
This is a little convenience command that opens the Nix expression of the specified package. For example, nix edit nixpkgs.perlPackages.Moose opens <nixpkgs/pkgs/top-level/perl-packages.nix> in $EDITOR (at the right line number for some editors). This requires the package to have a meta.position attribute.
2017-05-04 nix dump-path: AddEelco Dolstra3-0/+55
This is primarily useful for extracting NARs from other stores (like binary caches), which "nix-store --dump" cannot do.
2017-05-03 nix eval: Add a --raw flagEelco Dolstra1-1/+13
Similar to "jq -r", this prints the evaluation result (which must be a string value) unquoted.
2017-05-02 Fix "nix ... --all"Eelco Dolstra2-12/+16
When "--all" is used, we should not fill in a default installable.
2017-04-28 Check for libreadlineEelco Dolstra2-1/+7
2017-04-25 nix repl: Fix Ctrl-CEelco Dolstra1-0/+10
2017-04-25 Minor cleanupEelco Dolstra1-10/+7
2017-04-25 "using namespace std" considered harmfulEelco Dolstra1-6/+5
2017-04-25 nix repl: Use $XDG_DATA_HOME for the readline historyEelco Dolstra1-3/+4
2017-04-25 Make "nix repl" buildEelco Dolstra2-32/+36
2017-04-25 Merge nix-repl repositoryEelco Dolstra1-0/+719
2017-04-25 Cleanup in preparation of merging nix-repl repo into nix repoEelco Dolstra1-0/+719
2017-04-25 StorePathCommands: Build installablesEelco Dolstra3-20/+13
So for instance "nix copy --to ... nixpkgs.hello" will build nixpkgs.hello first. It's debatable whether this is a good idea. It seems desirable for commands like "nix copy" but maybe not for commands like "nix path-info".
2017-04-25 Set default installableEelco Dolstra1-1/+7
Thus $ nix build -f foo.nix will build foo.nix. And $ nix build will build default.nix. However, this may not be a good idea because it's kind of inconsistent, given that "nix build foo" will build the "foo" attribute from the default installation source (i.e. the synthesis of $NIX_PATH), rather than ./default.nix. So I may revert this.
2017-04-25 Interpret any installable containing a slash as a pathEelco Dolstra1-11/+7
So "nix path-info ./result" now works.
2017-04-25 Make StorePathsCommand a subclass of InstallablesCommandEelco Dolstra2-24/+33
This allows commands like 'nix path-info', 'nix copy', 'nix verify' etc. to work on arbitrary installables. E.g. to copy geeqie to a binary cache: $ nix copy -r --to file:///tmp/binary-cache nixpkgs.geeqie Or to get the closure size of thunderbird: $ nix path-info -S nixpkgs.thunderbird
2017-04-25 Move code aroundEelco Dolstra8-80/+68
2017-04-25 Add "nix eval" commandEelco Dolstra1-0/+44
This replaces "nix-instantiate --eval". The result is evaluated strictly since this seems more useful.
2017-04-25 Restructure installables handling in the "nix" commandEelco Dolstra8-124/+249
2017-04-24 Factor out --jsonEelco Dolstra2-7/+3
2017-04-20 Improve nix show-config --jsonEelco Dolstra1-2/+1
In particular, show descriptions. This could be used for manpage generation etc.
2017-04-13 Add "nix show-config" commandEelco Dolstra1-0/+43
This dumps the entire Nix configuration, including all options that have default values.
2017-04-13 Convert Settings to the new config systemEelco Dolstra1-1/+0
This makes all config options self-documenting. Unknown or unparseable config settings and --option flags now cause a warning.
2017-04-08 Process nix.conf options in "new" nix commands, add test.Will Dietz1-0/+1
Without this (minor) change, the options set using "--option" or read from nix.conf were parsed but not used.
2017-03-16 nix copy: Make -r option use the "from" storeEelco Dolstra3-4/+14
Previously, we tried to compute the closure in the local store, which obviously doesn't work.
2017-03-16 copyPaths(): Use queryValidPaths() to reduce SSH latencyEelco Dolstra1-1/+1
2017-03-15 Add a "nix log" commandEelco Dolstra1-0/+57
This replaces "nix-store --read-log". It checks the local store and any configured substituters for the requested logs.
2017-01-26 exportReferencesGraph: Export more complete info in JSON formatEelco Dolstra1-49/+6
This writes info about every path in the closure in the same format as ‘nix path-info --json’. Thus it also includes NAR hashes and sizes. Example: [ { "path": "/nix/store/10h6li26i7g6z3mdpvra09yyf10mmzdr-hello-2.10", "narHash": "sha256:0ckdc4z20kkmpqdilx0wl6cricxv90lh85xpv2qljppcmz6vzcxl", "narSize": 197648, "references": [ "/nix/store/10h6li26i7g6z3mdpvra09yyf10mmzdr-hello-2.10", "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24" ], "closureSize": 20939776 }, { "path": "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24", "narHash": "sha256:1nfn3m3p98y1c0kd0brp80dn9n5mycwgrk183j17rajya0h7gax3", "narSize": 20742128, "references": [ "/nix/store/27binbdy296qvjycdgr1535v8872vz3z-glibc-2.24" ], "closureSize": 20742128 } ] Fixes #1134.
2017-01-19 Merge pull request #981 from shlevy/build-remote-c++Eelco Dolstra1-27/+1
build-remote: Implement in C++
2016-11-26 Revert "Get rid of unicode quotes (#1140)"Eelco Dolstra11-28/+28
This reverts commit f78126bfd6b6c8477fcdbc09b2f98772dbe9a1e7. There really is no need for such a massive change...
2016-11-25 Get rid of unicode quotes (#1140)Guillaume Maudoux11-28/+28