Tuomas Tynkkynen
66eeff3345
libexpr: Remove unnecessary drvName assignment in prim_derivationStrict
...
drvName is already assigned to the same value right at the start of the
function.
2018-02-17 16:54:21 +02:00
Tuomas Tynkkynen
7e0360504d
libexpr: Optimize prim_derivationStrict by using more symbol comparisons
2018-02-17 16:54:21 +02:00
Tuomas Tynkkynen
0845cdf944
libexpr: Rely on Boehm returning zeroed memory in EvalState::allocEnv()
...
Boehm guarantees that memory returned by GC_malloc() is zeroed, so take
advantage of that.
2018-02-17 16:54:21 +02:00
Tuomas Tynkkynen
b8bed7da14
libexpr: Optimize prim_attrNames a bit
...
Instead of having lexicographicOrder() create a temporary sorted array
of Attr*:s and copying attr names from that, copy the attr names
first and then sort that.
2018-02-17 16:54:21 +02:00
Tuomas Tynkkynen
f67a7007a2
libexpr: Pre-reserve space in string in unescapeStr()
...
Avoids some malloc() traffic.
2018-02-16 04:39:43 +02:00
Eelco Dolstra
3a5a241b32
Merge pull request #1873 from matthewbauer/fix-manpath
...
Set MANPATH in case man path isn’t set correctly.
2018-02-15 17:37:21 +01:00
Matthew Bauer
8f186722a9
Set backup MANPATH in case man path isn’t set correctly.
...
Previously, this would fail at startup for non-NixOS installs:
nix-env --help
The fix for this is to just use "nixManDir" as the value for MANPATH
when spawning "man".
To test this, I’m using the following:
$ nix-build release.nix -A build
$ MANPATH= ./result/bin/nix-env --help
Fixes #1627
2018-02-15 10:20:02 -06:00
Eelco Dolstra
d26b71fda6
Merge pull request #1872 from shlevy/macOS-poll-fix
...
monitor-fds: Fix on macOS.
2018-02-15 11:43:56 +01:00
Shea Levy
ac973a6d3c
monitor-fds: Fix on macOS.
...
Fixes #1871 .
2018-02-14 18:26:37 -05:00
Eelco Dolstra
96d48318cb
Merge pull request #1870 from shlevy/split-version
...
Add splitVersion primop.
2018-02-14 16:39:53 +01:00
Shea Levy
b095c06139
Add splitVersion primop.
...
Fixes #1868 .
2018-02-14 09:55:43 -05:00
Shea Levy
de4934ab3b
Allow plugins to define new settings.
2018-02-13 14:43:32 -05:00
Shea Levy
3fe9767dd3
Fix plugin tests on darwin
2018-02-13 12:49:14 -05:00
Eelco Dolstra
52c777a793
Merge pull request #1863 from shlevy/conf-includes
...
Allow includes from nix.conf
2018-02-13 17:33:07 +01:00
Eelco Dolstra
7253113fd2
Merge pull request #1862 from shlevy/plugin-dirs
...
Enable specifying directories in plugin-files.
2018-02-13 17:32:32 +01:00
Shea Levy
b8739f2fb3
Enable specifying directories in plugin-files.
2018-02-13 11:25:01 -05:00
Linus Heckemann
78ac3eb4eb
Fix #1762
...
nix-store --export, nix-store --dump, and nix dump-path would previously
fail silently if writing the data out failed, because
a) FdSink::write ignored exceptions, and
b) the commands relied on FdSink's destructor, which ignores
exceptions, to flush the data out.
This could cause rather opaque issues with installing nixos, because
nix-store --export would happily proceed even if it couldn't write its
data out (e.g. if nix-store --import on the other side of the pipe
failed).
This commit adds tests that expose these issues in the nix-store
commands, and fixes them for all three.
2018-02-13 14:26:19 +00:00
Shea Levy
6eb1040e90
Allow includes from nix.conf
2018-02-13 08:16:32 -05:00
Eelco Dolstra
f471aacff2
Merge pull request #1775 from LnL7/darwin-build-users
...
installer: create 'enough' build users
2018-02-13 12:31:53 +01:00
Eelco Dolstra
7828dca9e8
Merge branch 'register-constant' of https://github.com/shlevy/nix
2018-02-13 12:24:48 +01:00
Eelco Dolstra
1c10a74c73
Merge branch 'plugins' of https://github.com/shlevy/nix
2018-02-13 12:15:27 +01:00
Eelco Dolstra
c5cc57e962
Merge pull request #1859 from FRidh/flatten
...
Nix stats: flatten statistics
2018-02-13 11:11:12 +01:00
Eelco Dolstra
9bcb4d2dd9
Fix hang in build-remote
2018-02-12 22:48:55 +01:00
Eelco Dolstra
4f09ce7940
Fix 'deadlock: trying to re-acquire self-held lock'
...
This was caused by derivations with 'allowSubstitutes = false'. Such
derivations will be built locally. However, if there is another
SubstitionGoal that has the output of the first derivation in its
closure, then the path will be simultaneously built and substituted.
There was a check to catch this situation (via pathIsLockedByMe()),
but it no longer worked reliably because substitutions are now done in
another thread. (Thus the comment 'It can't happen between here and
the lockPaths() call below because we're not allowing multi-threading'
was no longer valid.)
The fix is to handle the path already being locked in both
SubstitutionGoal and DerivationGoal.
2018-02-12 17:06:06 +01:00
Eelco Dolstra
35fd31770c
toBuildables -> build
2018-02-12 17:06:06 +01:00
Will Dietz
c6209030c4
compression: make parallel sink separate class
2018-02-11 13:50:28 -06:00
Will Dietz
a0bdc96726
compression: print warning if parallel requested but not supported
2018-02-11 13:03:47 -06:00
Frederik Rietdijk
60eca58533
Nix stats: flatten statistics
...
Flattens the list of statistics as suggested in
https://github.com/NixOS/ofborg/issues/67 . This makes it easier to work
with.
2018-02-11 14:37:50 +01:00
Will Dietz
5a082ad15a
configure.ac: check if lzma has MT support, fix deb build/etc.
2018-02-09 21:02:25 -06:00
Eelco Dolstra
960e9c560e
nix: Ensure that the user sees errors from substituters
2018-02-09 15:06:47 +01:00
Eelco Dolstra
aa02cdc33c
getDefaultSubstituters(): Skip broken substituters
...
Fixes #1340 .
2018-02-09 15:06:47 +01:00
Eelco Dolstra
3d2d207aad
Merge pull request #1848 from AmineChikhaoui/parallel-xz
...
support multi threaded xz encoder
2018-02-09 15:03:25 +01:00
Shea Levy
081f14a169
Allow using RegisterPrimop to define constants.
...
This enables plugins to add new constants, as well as new primops.
2018-02-08 14:35:50 -05:00
Shea Levy
88cd2d41ac
Add plugins to make Nix more extensible.
...
All plugins in plugin-files will be dlopened, allowing them to
statically construct instances of the various Register* types Nix
supports.
2018-02-08 12:44:37 -05:00
Eelco Dolstra
ad97a21834
nix-env: Fix parsing of --system
...
https://hydra.nixos.org/build/68827814
2018-02-08 15:25:03 +01:00
Eelco Dolstra
444bae44ef
dsa -> ed25519
...
DSS is disabled by default in NixOS 18.03.
https://hydra.nixos.org/build/68788560
2018-02-08 13:46:23 +01:00
AmineChikhaoui
0685a6480a
Merge branch 'master' of https://github.com/NixOS/nix into parallel-xz
2018-02-08 12:24:48 +01:00
Will Dietz
c7e0be1bfc
build-dry: disable failing portion of test until issue is fixed
2018-02-07 15:20:54 -06:00
Will Dietz
98031b6050
nix build: Don't create output links with --dry-run.
...
Fixes #1849 .
2018-02-07 15:20:54 -06:00
Will Dietz
3780435a0e
tests: Add (failing) tests for reported --dry-run issues.
2018-02-07 15:20:54 -06:00
Will Dietz
f201b7733e
More completely fix recursive nix, unbreak tests
...
See:
88b5d0c8e8 (commitcomment-27406365)
2018-02-07 15:19:28 -06:00
AmineChikhaoui
a56637205a
Merge branch 'master' of https://github.com/NixOS/nix into parallel-xz
2018-02-07 21:09:04 +01:00
AmineChikhaoui
47ad88099b
move the parallel-compression setting to binary-cache-store, the setting
...
can be done now from the url e.g s3://nix-cache?parallel-compression=1
instead of nix.conf.
2018-02-07 21:06:11 +01:00
Eelco Dolstra
88b5d0c8e8
Prevent accidental recursive Nix
2018-02-07 19:07:38 +01:00
AmineChikhaoui
55ecdfe2a8
make multi threaded compression configurable and use single threaded
...
by default.
2018-02-07 17:54:08 +01:00
AmineChikhaoui
163e39547a
Merge branch 'master' of https://github.com/NixOS/nix into parallel-xz
2018-02-07 17:53:50 +01:00
Shea Levy
48c192ca2d
builtins.path test: Don't rely on shlevy's XDG_RUNTIME_DIR
2018-02-07 10:26:53 -05:00
Eelco Dolstra
84989d3af2
Improve filtering of ANSI escape sequences in build logs
...
All ANSI sequences except color setting are now filtered out. In
particular, terminal resets (such as from NixOS VM tests) are filtered
out.
Also, fix the completely broken tab character handling.
2018-02-07 15:23:57 +01:00
Eelco Dolstra
cfdfad5c34
Simplify
2018-02-07 14:15:20 +01:00
Eelco Dolstra
0f3dae1064
Merge branch 'fix-aarch64-test' of https://github.com/grahamc/nix
2018-02-07 14:12:15 +01:00