aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2015-05-05nix-shell: Fix uninitialized value warningEelco Dolstra
2015-04-27Merge branch 'nix-channel-tarballs' of git://github.com/copumpkin/nixShea Levy
2015-04-22nix-collect-garbage: translate to C++Luca Bruno
2015-04-20Support tarballs in nix channel URLsDan Peebles
2015-04-12add the manpath to the installerMichael Merickel
2015-03-04Reduce verbosity in build-remote.plEelco Dolstra
2015-02-22Merge branch 'gh-476-fix-install-script' of git://github.com/jramnani/nixShea Levy
sometimes cd prints to stdout
2015-02-19FIXMEsEelco Dolstra
2015-02-18Escape arguments to nix-shell #! scriptsEelco Dolstra
2015-02-18Support passing command line arguments to nix-shell #! scriptsEelco Dolstra
2015-02-18Fix nix-shell shebang scripts if -p is usedEelco Dolstra
2015-02-17Include NAR size in fingerprint computationEelco Dolstra
This is not strictly needed for integrity (since we already include the NAR hash in the fingerprint) but it helps against endless data attacks [1]. (However, this will also require download-from-binary-cache.pl to bail out if it receives more than the specified number of bytes.) [1] https://isis.poly.edu/~jcappos/papers/cappos_mirror_ccs_08.pdf
2015-02-11Nix install script failed when "cd" printed to stdout.Jeff Ramnani
In some cases the bash builtin command "cd" can print the variable $CWD to stdout. This caused the install script to fail while copying files because the source path was wrong. Fixes #476.
2015-02-08nix-build: Respect -Q during evaluationShea Levy
Fixes #474
2015-02-04Sign a subset of the .narinfoEelco Dolstra
We only need to sign the store path, NAR hash and references (the "fingerprint"). Everything else is irrelevant to security. For instance, the compression algorithm or the hash of the compressed NAR don't matter as long as the contents of the uncompressed NAR are correct. (Maybe we should include derivers in the fingerprint, but they're broken and nobody cares about them. Also, it might be nice in the future if .narinfos contained signatures from multiple independent signers. But that's impossible if the deriver is included in the fingerprint, since everybody will tend to have a different deriver for the same store path.) Also renamed the "Signature" field to "Sig" since the format changed in an incompatible way.
2015-02-04Use libsodium instead of OpenSSL for binary cache signingEelco Dolstra
Sodium's Ed25519 signatures are much shorter than OpenSSL's RSA signatures. Public keys are also much shorter, so they're now specified directly in the nix.conf option ‘binary-cache-public-keys’. The new command ‘nix-store --generate-binary-cache-key’ generates and prints a public and secret key.
2015-01-30nix-install-package: follow symlinksJaka Hudoklin
2015-01-28Moves runHook to a later execution positionOliver Dunkl
It moves runHook to a later position in the rcfile. After that we are able to set the PS1 environment-variable for a nix-shell environment e.g.: # turn the color of the prompt to blue shellHook = '' export PS1="\n\[\033[1;34m\][\u@\h:\w]$\[\033[0m\] "; '';
2015-01-15Shut up "Wide character in print" warning in copy-from-other-stores.plEelco Dolstra
2015-01-15Set correct user agent for NAR downloads from binary cachesEelco Dolstra
2015-01-08nix-shell: Add --run flagEelco Dolstra
‘--run’ is like ‘--command’, except that it runs the command in a non-interactive shell. This is important if you do things like: $ nix-shell --command make Hitting Ctrl-C while make is running drops you into the interactive Nix shell, which is probably not what you want. So you can now do $ nix-shell --run make instead.
2015-01-08nix-shell: Interpret filenames relative to the #!-scriptEelco Dolstra
So you can have a script like: #! /usr/bin/env nix-shell #! nix-shell script.nix -i python import prettytable x = prettytable.PrettyTable(["Foo", "Bar"]) for i in range(1, 10): x.add_row([i, i**2]) print x with a ‘script.nix’ in the same directory: with import <nixpkgs> {}; runCommand "dummy" { buildInputs = [ python pythonPackages.prettytable ]; } "" (Of course, in this particular case, using the ‘-p’ flag is more convenient.)
2015-01-08Allow nix-shell to be used as a #! interpreterEelco Dolstra
This allows scripts to fetch their own dependencies via nix-shell. For instance, here is a Haskell script that, when executed, pulls in GHC and the HTTP package: #! /usr/bin/env nix-shell #! nix-shell -i runghc -p haskellPackages.ghc haskellPackages.HTTP import Network.HTTP main = do resp <- Network.HTTP.simpleHTTP (getRequest "http://nixos.org/") body <- getResponseBody resp print (take 100 body) Or a Perl script that pulls in Perl and some CPAN packages: #! /usr/bin/env nix-shell #! nix-shell -i perl -p perl perlPackages.HTMLTokeParserSimple perlPackages.LWP use HTML::TokeParser::Simple; my $p = HTML::TokeParser::Simple->new(url => 'http://nixos.org/'); while (my $token = $p->get_tag("a")) { my $href = $token->get_attr("href"); print "$href\n" if $href; } Note that the options to nix-shell must be given on a separate line that starts with the magic string ‘#! nix-shell’. This is because ‘env’ does not allow passing arguments to an interpreter directly.
2015-01-07nix-shell --command: Remove bogus argument to "exit"Eelco Dolstra
Fixes "exit: Inappropriate: numeric argument required" errors.
2014-12-13Install cacert before running nix-channelEelco Dolstra
Also, make it more robust against incorrent SSL_CERT_FILE values.
2014-12-10Include cacert in the binary tarballEelco Dolstra
This prevents having to fetch Nixpkgs or cacert over http.
2014-12-10Always use https to fetch the Nixpkgs channelEelco Dolstra
2014-12-10Fix bad commentEelco Dolstra
2014-12-09DohEelco Dolstra
2014-12-09Add option to disable binary cache certificate checkingEelco Dolstra
2014-12-09Provide some fallback defaults for the CA bundleEelco Dolstra
2014-12-09Use https://cache.nixos.org instead of http://cache.nixos.orgEelco Dolstra
2014-12-05Fix another operator precedence issue found by Perl 5.20Eelco Dolstra
2014-11-18Add a test for the binary tarball installerEelco Dolstra
2014-11-12build-remote.pl.in: Add some more trace messagesEelco Dolstra
This allows hydra-build to keep track of the actual build time (so excluding time required to copy closures around).
2014-11-04download-from-binary-cache.pl: Fix flushing of stderrEelco Dolstra
2014-10-15Fix nix-copy-closure --fromShea Levy
http://hydra.nixos.org/build/15885652
2014-10-15Revert "binary download: Use $NIX_CURL_FLAGS"Eelco Dolstra
This reverts commit bc4795919afac59af8f27d3c1f26ab404330f718. It breaks the build: http://hydra.nixos.org/build/15860847
2014-10-14binary download: Use $NIX_CURL_FLAGSwmertens
As in https://github.com/NixOS/nixpkgs/blob/5c0816567d6b99bd2ef7c8ae5744f80a6a0372c4/pkgs/build-support/fetchurl/builder.sh#L17
2014-10-14nix-channel: Add --rollback flagEelco Dolstra
Fixes #368.
2014-10-14nix-channel --add: Validate URL / channel IDEelco Dolstra
Fixes #369.
2014-10-14Remove unused @sshOpts flagEelco Dolstra
Closes #300.
2014-10-14nix-copy-closure: Use strictEelco Dolstra
2014-09-23Pass through --set from nix-install-package command line to nix-envShell Turner
2014-09-05build-remote.pl: UTF-8-decode errorsEelco Dolstra
2014-09-05Fix build-remote.plEelco Dolstra
Apparently, turning on utf8 encoding on stderr changes its flushing behaviour, causing sendReply to not send anything. http://hydra.nixos.org/build/13944384
2014-08-29Shut up "Wide character" warnings in Perl scriptsEelco Dolstra
2014-08-21Set a curl timeout on binary cache lookupsEelco Dolstra
2014-08-20Use proper quotes everywhereEelco Dolstra
2014-08-17Propagate remote timeouts properlyEelco Dolstra