Wouter den Breejen
546ca6e8bc
Merged R8864
2007-10-08 10:26:21 +00:00
Wouter den Breejen
854e155b2c
Merged R8636
2007-10-08 10:20:43 +00:00
Wouter den Breejen
3800f55b54
Merging the trunk back into my branch: just merged revision 8628
2007-10-07 14:32:42 +00:00
Wouter den Breejen
f435abcdb6
Fixed recalculated drv path issue.
2007-09-18 17:01:17 +00:00
Wouter den Breejen
315cd18337
2007-09-17 15:38:13 +00:00
Wouter den Breejen
ed55982085
Fixed remote issues
2007-09-05 14:13:50 +00:00
Wouter den Breejen
35e239af33
EOF
2007-09-04 17:09:26 +00:00
Wouter den Breejen
89ab441fd2
Changed the [solid-state-dependencies] list in the derivation to a single variable 'externalState' (since we also have a single state path) which can, for instance, be set to ~/.mozilla-test in the case of firefox (not bugfree yet)
2007-09-03 19:22:09 +00:00
Wouter den Breejen
627afcc1aa
Fixed a lot of remote store issues. But there is still a bug with 32bit unsigned integers: 'implementation cannot deal with > 32-bit integers'
2007-08-28 15:22:27 +00:00
Wouter den Breejen
bdcce95a39
Added / Removed state functions to the Store API
2007-08-27 13:09:24 +00:00
Wouter den Breejen
53a6b9aaa5
* Fixed very old transactional bug that caused a freeze sometimes
...
* State components that get their state at runtime can now be (un)installed with nix-env
2007-08-17 15:35:34 +00:00
Wouter den Breejen
4089bd5f19
State is now maintained (their paths are automatically shared), unless sharedState is set in the nix-expr, when a new version with the same drv-name of the component is installed
2007-08-13 15:35:12 +00:00
Wouter den Breejen
7424d72098
Partially integrated state components (startscripts) into nix-env
2007-08-10 15:39:02 +00:00
Wouter den Breejen
7f2140d17f
Before adjusting queryReferences/Referrers to handle shared state paths
2007-07-19 12:25:38 +00:00
Wouter den Breejen
c0bd494865
Firefox can now be brought under state control, however, the symlink ~/.mozilla/firefox/ --> /nix/state/...../ can not (yet) be created automatically at build time since ~/ is set to /homeless-shelter/ ...
2007-07-13 18:37:25 +00:00
Wouter den Breejen
ba437f451e
2007-07-10 09:23:42 +00:00
Wouter den Breejen
9f00b42f38
downscaled to 1 repos per statePath
2007-07-08 22:40:16 +00:00
Wouter den Breejen
0e41b191bf
2007-06-21 16:47:48 +00:00
Wouter den Breejen
a4fda31ad5
Before editting get-drvs.hh: DrvInfo
2007-06-21 13:26:58 +00:00
Wouter den Breejen
bdecf3bdbc
In the middle of adding state references to derivations and the db...
2007-06-18 19:54:31 +00:00
Wouter den Breejen
184443d18d
Before adjusting getStateReferencesClosure_
2007-06-13 15:18:57 +00:00
Wouter den Breejen
b909d57f5d
broken, in the middle of edditting user / drv mod
2007-06-12 19:08:05 +00:00
Wouter den Breejen
fe04276aef
before adjusting derivers table
2007-06-12 12:48:35 +00:00
Wouter den Breejen
95ce7e04b7
Nix now includes the username into the hash calculation, statepaths are also recomputed at buildtime so they cannot be spoofed
2007-06-11 16:43:32 +00:00
Wouter den Breejen
267ccc589d
Nix now understands the difference between runtime-state-components and non-runtime-state-compontens. Components and Derivations are now properly (re)build/derived (or not) when necessary.
2007-06-08 16:00:55 +00:00
Wouter den Breejen
01062b0563
Removed collision-bug between repositorys, each group of repositorys and each individual repository has now a scannable unique hash
2007-06-07 14:08:57 +00:00
Wouter den Breejen
79d5604780
Changed commit script: it recursively walkes through all dirs itself now, uses svn stat where needed, and doesnt use svn add *,svn revert anymore and is much faster
2007-06-07 13:16:38 +00:00
Wouter den Breejen
7166ad8eba
Completed updateStateDerivation(Path storepath) method
2007-06-04 19:41:46 +00:00
Wouter den Breejen
bcf9d3ab2f
2007-06-04 16:51:15 +00:00
Wouter den Breejen
9c46444641
Before creating multiple derivation - component instances
2007-05-31 17:18:13 +00:00
Wouter den Breejen
653e557e81
Before modifying commit shell script
2007-05-30 11:27:01 +00:00
Wouter den Breejen
cbd0d39583
Added beginnnings of getStatePathClosure and GetDrv in local-store.cc, next: setting up variables in nix-state to recursively commit state
2007-05-29 15:42:44 +00:00
Wouter den Breejen
c9e78a973a
Created commit shell script; next adding nix-state
2007-05-24 15:08:12 +00:00
Wouter den Breejen
97eb8c32a0
created sub commit scripts
2007-05-22 16:57:36 +00:00
Wouter den Breejen
73995157e3
nixstate is now backwards comptible (because of some ugly hack ..)
2007-05-22 12:14:16 +00:00
Wouter den Breejen
09b8b7efbc
Added backwards compatib. but still something... remains that changes the hashes .... :(
2007-05-21 23:42:20 +00:00
Wouter den Breejen
802d7f40bd
Small fix
2007-05-21 21:56:34 +00:00
Wouter den Breejen
3fc0b0da58
build error
2007-05-20 12:29:55 +00:00
Wouter den Breejen
8a7874d77d
in the middle of adding nixStoreState ...
2007-05-18 19:50:58 +00:00
Wouter den Breejen
4c63f18dcc
added state options and state locations into drv
2007-05-16 10:16:10 +00:00
Wouter den Breejen
b712f0f019
First commit
2007-05-15 09:26:33 +00:00
Eelco Dolstra
044b6482c1
* Greatly reduced the amount of stack space used by the Nix expression
...
evaluator. This was important because the NixOS expressions started
to hit 2 MB default stack size on Linux.
GCC is really dumb about stack space: it just adds up all the local
variables and temporaries of every scope into one huge stack frame.
This is really bad for deeply recursive functions. For instance,
every `throw Error(format("error message"))' causes a format object
of a few hundred bytes to be allocated on the stack. As a result,
every recursive call to evalExpr2() consumed 4680 bytes. By
splitting evalExpr2() and by moving the exception-throwing code out
of the main functions, evalExpr2() now only consumes 40 bytes.
Similar for evalExpr().
2007-02-27 19:10:45 +00:00
Eelco Dolstra
adce01a8d0
* When NIX_SHOW_STATS=1, show the amount of stack space consumed by
...
the Nix expression evaluator.
2007-02-27 17:28:51 +00:00
Eelco Dolstra
451dbf687f
* nix-env now maintains meta info (from the `meta' derivation
...
attribute) about installed packages in user environments. Thus, an
operation like `nix-env -q --description' shows useful information
not only on available packages but also on installed packages.
* nix-env now passes the entire manifest as an argument to the Nix
expression of the user environment builder (not just a list of
paths), so that in particular the user environment builder has
access to the meta attributes.
* New operation `--set-flag' in nix-env to change meta info of
installed packages. This will be useful to pass per-package
policies to the user environment builder (e.g., how to resolve
collision or whether to disable a package (NIX-80)) or upgrade
policies in nix-env (e.g., that a package should be "masked", that
is, left untouched by upgrade actions). Example:
$ nix-env --set-flag enabled false ghc-6.4
2007-02-02 01:52:42 +00:00
Eelco Dolstra
b618fa6eb6
* computeStorePathForText: take the references into account when
...
computing the store path (NIX-77). This is an important security
property in multi-user Nix stores.
Note that this changes the store paths of derivations (since the
derivation aterms are added using addTextToStore), but not most
outputs (unless they use builtins.toFile).
2007-01-29 15:51:37 +00:00
Eelco Dolstra
c558b1583c
* Don't capitalise the primop functions.
2007-01-29 15:15:37 +00:00
Eelco Dolstra
18e6096105
* Organise primops.cc a bit better.
2007-01-29 15:11:32 +00:00
Eelco Dolstra
7349bd0176
New primitives:
...
* `sub' to subtract two numbers.
* `stringLength' to get the length of a string.
* `substring' to get a substring of a string. These should be enough
to allow most string operations to be expressed.
2007-01-29 14:23:09 +00:00
Eelco Dolstra
7dedbd896a
* filterSource: pass strings to the predicate function instead of
...
paths. Paths can have unexpected semantics.
2007-01-29 13:32:50 +00:00
Eelco Dolstra
71ceb1c161
* Handle multiple indirect symlinks when loading a Nix expression.
2007-01-15 14:50:25 +00:00