about summary refs log tree commit diff
path: root/scripts
AgeCommit message (Collapse)AuthorFilesLines
2003-07-16 * The write() system call can write less than the requested Eelco Dolstra1-0/+4
number of bytes, e.g., in case of a signal like SIGSTOP. This caused `nix --dump' to fail sometimes. Note that this bug went unnoticed because the call to `nix --dump' is in a pipeline, and the shell ignores non-zero exit codes from all but the last element in the pipeline. Is there any way to check the result of the initial elements in the pipeline? (In other words, is it at all possible to write reliable shell scripts?)
2003-07-16 * Substitute fixes.Eelco Dolstra2-15/+12
2003-07-14 * Get the garbage collector to work again.Eelco Dolstra2-22/+25
2003-07-13 * Generate the scripts so that we can substitute the prefixEelco Dolstra5-21/+23
etc. correctly. * Fixed nix-switch.
2003-07-10 * Compress Nix archives when pushing them.Eelco Dolstra2-3/+5
2003-07-10 * Working derivate sharing.Eelco Dolstra2-4/+23
2003-07-10 * Convert tabs to spaces.Eelco Dolstra2-70/+70
2003-07-10 * Performance enhancement.Eelco Dolstra1-2/+8
2003-07-10 * The policy-free derivate sharing now *almost* works. :-) For anyEelco Dolstra5-133/+69
hash for which no local expansion is available, Nix can execute a `substitute' which should produce a path with such a hash. This is policy-free since Nix does not in any way specify how the substitute should work, i.e., it's an arbitrary (unnormalised) fstate expression. For example, `nix-pull' registers substitutes that fetch Nix archives from the network (through `wget') and unpack them, but any other method is possible as well. This is an improvement over the old Nix sharing scheme, which had a policy (fetching through `wget') built in. The sharing scheme doesn't work completely yet because successors from fstate rewriting have to be registered on the receiving side. Probably the whole successor stuff can be folded up into the substitute mechanism; this would be a nice simplification.
2003-07-10 * Get `nix-push' working again. It now uses Nix/Fix to create NixEelco Dolstra3-1/+63
archives (using the package in corepkgs/nar). * queryPathByHash -> expandHash, and it takes an argument specifying the target path (which may be empty). * Install the core Fix packages in $prefix/share/fix. TODO: bootstrap Nix and install Nix as a Fix package.
2003-06-18 * Set CPLUS_INCLUDE_PATH as well as C_INCLUDE_PATH. Otherwise g++Eelco Dolstra1-0/+1
won't see header files under Nix control.
2003-05-30 * Set umask to 0022 on startup.Eelco Dolstra2-0/+4
2003-05-30 * Don't set MANPATH. It's not necessary.Eelco Dolstra1-1/+1
2003-05-30 * Set MANPATH and PKG_CONFIG_PATH.Eelco Dolstra1-1/+5
2003-05-27 * Fix the rsync destination.Eelco Dolstra1-1/+1
2003-05-26 * Removed some debug code that prevented packages from building.Eelco Dolstra1-58/+0
2003-05-26 * Nix can now fetch prebuilts (and other files) from the network, iffEelco Dolstra4-8/+22
a mapping from the hash to a url has been registered through `nix regurl'. * Bug fix in nix: don't pollute stdout when running tar, it made nix-switch barf. * Bug fix in nix-push-prebuilts: don't create a subdirectory on the target when rsync'ing.
2003-05-25 * Prebuilt package sharing. We allow transparent binary deployment byEelco Dolstra5-21/+118
sharing package directories (i.e., the result of building a Nix descriptor). `nix-pull-prebuilts' obtains a list of all known prebuilts by consulting the paths and URLs specified in $prefix/etc/nix/prebuilts.conf. The mappings ($pkghash, $prebuilthash) and ($prebuilthash, $location) are registered with Nix so that it can use the prebuilt with hash $prebuilthash when installing a package with hash $pkghash by downloading and unpacking $location. `nix-push-prebuilts' creates prebuilts for all packages for which no prebuilt is known to exist. It can then optionally upload these to the network through rsync. `nix-[pull|push]-prebuilts' just provide a policy. Nix provides the mechanism through the `nix [export|regprebuilt|regurl]' commands.
2003-04-25 * Bug fix: deleting the old links didn't work properly.Eelco Dolstra1-2/+2
2003-04-24 * nix-switch now removes the link to the previously activated systemEelco Dolstra1-2/+20
package as a root of the garbage collector, unless `--keep' is specified.
2003-04-09 * A garbage collector for installed packages. nix-collect-garbageEelco Dolstra2-1/+23
doesn't actually delete any packages, it just prints their descriptor hashes. So we can do nix info $(nix-collect-garbage) to print out the ids of the packages that would be deleted, and nix delpkg $(nix-collect-garbage) to actually delete them.
2003-04-09 * When we activate a descriptor in nix-switch, remember its hash.Eelco Dolstra1-1/+7
This allows us to find out all `live' packages on the system by doing nix closure $(cat /nix/var/nix/links/*.hash) which will print out the activated configurations and all packages referenced by them. We could then garbage collect unused packages by deleting the difference between `nix listinst' and the set returned by `nix closure ...'.
2003-04-09 * We no longer use nix-populate standalone, rather we use it as aEelco Dolstra4-40/+71
build action for `system' packages (like system.fix) that have dependencies on all packages we want to activate. So the command sequence to switch to a new activation configuration of the system would be: $ fix -i .../fixdescriptors/system.fix ... system.fix -> 89cf4713b37cc66989304abeb9ea189f $ nix-switch 89cf4713b37cc66989304abeb9ea189f * A nix-profile.sh script that can be included in .bashrc.
2003-04-08 * Descriptor importing in Fix.Eelco Dolstra1-0/+89
2003-04-08 * FreeBSD / gcc 2.95 compatibility fixes.Eelco Dolstra1-0/+20
* A script to generate prebuilt registration scripts.