aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
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
2014-08-17nix-build: Propagate exit status from nix-store -rEelco Dolstra
2014-08-17build-remote.pl: Provide defaults for $NIX_CURRENT_LOAD and $NIX_REMOTE_SYSTEMSEelco Dolstra
2014-08-13nix-shell: Use $XDG_RUNTIME_DIREelco Dolstra
This prevents collisions with other users. Fixes #262.
2014-08-13Use $XDG_RUNTIME_DIR for temporary filesEelco Dolstra
2014-08-07Warn about untrusted binary caches in extra-binary-cachesEelco Dolstra
2014-08-07nix-install-package: Use extra-binary-cachesEelco Dolstra
2014-08-07download-from-binary-cache.pl: Respect $SSL_CERT_FILEEelco Dolstra
2014-08-07install-nix-from-closure.sh: Use https channel if possibleEelco Dolstra
2014-07-29install-nix-from-closure.sh: Install cacertEelco Dolstra
2014-07-29nix-profile.sh: Set $SSL_CERT_FILEEelco Dolstra
2014-07-24nix-copy-closure: Drop --bzip2, --xz, --show-progressEelco Dolstra
These are too difficult to implement via nix-store --serve. ‘--show-progress’ could be re-implemented fairly easily via a sink/source wrapper class.
2014-07-24nix-copy-closure: Implement --gzip via ssh's -C flagEelco Dolstra
2014-07-24Remove obsolete SSH master connection codeEelco Dolstra
2014-07-24Implement nix-copy-closure --from via nix-store --serveEelco Dolstra
2014-07-24build-remote.pl: Be less verbose on failing buildsEelco Dolstra
2014-07-14Remove cruftEelco Dolstra
2014-07-12build-remote.pl: Fix build logEelco Dolstra
2014-07-11build-remote.pl: Use ‘nix-store --serve’ on the remote sideEelco Dolstra
This makes things more efficient (we don't need to use an SSH master connection, and we only start a single remote process) and gets rid of locking issues (the remote nix-store process will keep inputs and outputs locked as long as they're needed). It also makes it more or less secure to connect directly to the root account on the build machine, using a forced command (e.g. ‘command="nix-store --serve --write"’). This bypasses the Nix daemon and is therefore more efficient. Also, don't call nix-store to import the output paths.
2014-07-10nix-copy-closure -s: Do substitutions via ‘nix-store --serve’Eelco Dolstra
This means we no longer need an SSH master connection, since we only execute a single command on the remote host.
2014-07-10nix-copy-closure: Restore compression and the progress viewerEelco Dolstra
2014-05-26nix-build: --add-root also takes 1 parameterAristid Breitkreuz
2014-04-10Don't barf when installing as rootEelco Dolstra