summary refs log tree commit diff
path: root/configure.ac
AgeCommit message (Collapse)Author
2004-08-20* On systems that have the setresuid() and setresgid() system calls toEelco Dolstra
set the real uid and gid to the effective uid and gid, the Nix binaries can be installed as owned by the Nix user and group instead of root, so no root involvement of any kind is necessary. Linux and FreeBSD have these functions.
2004-08-20* Setuid support for sharing a Nix installation between multipleEelco Dolstra
users. If the configure flag `--enable-setuid' is used, the Nix programs nix-env, nix-store, etc. are installed with the setuid bit turned on so that they are executed as the user and group specified by `--with-nix-user=USER' and `--with-nix-group=GROUP', respectively (with defaults `nix' and `nix'). The setuid programs drop all special privileges if they are executed by a user who is not a member of the Nix group. The setuid feature is a quick hack to enable sharing of a Nix installation between users who trust each other. It is not generally secure, since any user in the Nix group can modify (by building an appropriate derivation) any object in the store, and for instance inject trojans into binaries used by other users. The setuid programs are owned by root, not the Nix user. This is because on Unix normal users cannot change the real uid, only the effective uid. Many programs don't work properly when the real uid differs from the effective uid. For instance, Perl will turn on taint mode. However, the setuid programs drop all root privileges immediately, changing all uids and gids to the Nix user and group.
2004-08-13* WTF? More canonical system name problems ("athlon-linux" instead ofEelco Dolstra
"i686-linux").
2004-07-18* Slightly better heuristic for picking the canonical system type.Eelco Dolstra
Now SuSE and Red Hat should yield the same type (`i686-linux'). Mac OS X should now give `powerpc-darwin' (i.e., the version number is gone).
2004-06-21* Adapted nix-pull to use the new substitute mechanism.Eelco Dolstra
2004-06-04* A Nix mode for Emacs.Eelco Dolstra
2004-05-18* Don't set the rpath here --- it's not portable.Eelco Dolstra
2004-05-18* Go back to the old way of generating the system name, and allow itEelco Dolstra
to be specified in configure (using `--with-system=SYSTEM').
2004-05-04* Allow the location of the store etc. to be specified usingEelco Dolstra
environment variables. * Started adding some automatic tests. * Do a `make check' when building RPMs.
2004-04-26* Bump the version number.Eelco Dolstra
2004-04-26* Only add `-preRELEASE' to the version if STABLE != 1.Eelco Dolstra
* Documented release procedures.
2004-04-23* Pass SYSTEM through config.h, and allow spaces.Eelco Dolstra
2004-04-21* Channels. These allow you to stay current with an evolving set ofEelco Dolstra
Nix expressions. To subscribe to a channel (needs to be done only once): nix-channel --add \ http://catamaran.labs.cs.uu.nl/dist/nix/channels/nixpkgs-unstable This just adds the given URL to ~/.nix-channels (which can also be edited manually). To update from all channels: nix-channel --update This fetches the latest expressions and pulls cache manifests. The default Nix expression (~/.nix-defexpr) is made to point to the conjunction of the expressions downloaded from all channels. So to update all installed derivations in the current user environment: nix-channel --update nix-env --upgrade '*' If you are really courageous, you can put this in a cronjob or something. You can subscribe to multiple channels. It is not entirely clear what happens when there are name clashes between derivations from different channels. From nix-env/main.cc it appears that the one with the lowest (highest?) hash will be used, which is pretty meaningless.
2004-04-21* Do initialise state (the DB etc.) when doing a `make install',Eelco Dolstra
unless `--disable-init-state' is passed to configure.
2004-04-08* EBNF grammar for the Nix expression language.Eelco Dolstra
2004-04-06* Fail if prerequisites are missing.Eelco Dolstra
2004-04-06* Switched from wget to curl.Eelco Dolstra
* Made the dependencies on bzip2 and the shell explicit.
2004-03-15* Added a utility that can be used to produce nice HTML pages from NixEelco Dolstra
build logs. The program `log2xml' converts a Nix build log (read from standard input) into XML file that can then be converted to XHTML by the `log2html.xsl' stylesheet. The CSS stylesheet `logfile.css' is necessary to make it look good. This is primarily useful if the log file has a *tree structure*, i.e., that sub-tasks such as the various phases of a build (unpack, configure, make, etc.) or recursive invocations of Make are represented as such. While a log file is in principle an unstructured plain text file, builders can communicate this tree structure to `log2xml' by using escape sequences: - "\e[p" starts a new nesting level; the first line following the escape code is the header; - "\e[q" ends the current nesting level. The generic builder in nixpkgs (not yet committed) uses this. It shouldn't be to hard to patch GNU Make to speak this protocol. Further improvements to the generated HTML pages are to allow collapsing/expanding of subtrees, and to abbreviate store paths (but to show the full path by hovering the mouse over it).
2004-03-15* Make perl a dependency of Nix.Eelco Dolstra
2004-02-16* Allow linking against an external Berkeley DB / ATerm library.Eelco Dolstra
2004-02-16* Allow the location of the store to be specified (--with-store-dir).Eelco Dolstra
* Do not create stuff in localstatedir when doing `make install' (since we may not have write access). In general, installation of constant code/data should be separate from the initialisation of mutable state.
2004-01-30* Detect flex and bison; updated the manual.Eelco Dolstra
2004-01-02* RPM sucks.Eelco Dolstra
2004-01-02* Generate RPM spec file.Eelco Dolstra
2003-12-22* GCC 2.95 compatibility.Eelco Dolstra
2003-12-01* Use a system name that does not include the OS manufacturer (i.e.,Eelco Dolstra
"i686-linux" instead of "i686-suse-linux").
2003-11-26* Typo fix.Eelco Dolstra
2003-11-26* Configure flags to specify the location of the DocBook DTD / stylesheets.Eelco Dolstra
2003-11-25* Use svn-revision to construct package version.Eelco Dolstra
2003-11-22* Don't use a hard-coded path.Eelco Dolstra
2003-11-19* nix-env: a tool to manage user environments.Eelco Dolstra
* Replace all directory reading code by a generic readDirectory() function.
2003-11-19* Refactoring (step 2).Eelco Dolstra
2003-11-19* Refactoring: put the Nix expression evaluator in its own library soEelco Dolstra
that it can be used by multiple programs.
2003-11-18* Forgot this one.Eelco Dolstra
2003-11-18* nix -> nix-store, fix -> nix-instantiate.Eelco Dolstra
2003-11-18* libnix -> libstore.Eelco Dolstra
2003-11-18* Source tree refactoring.Eelco Dolstra
2003-10-29* Forked new version of Fix.Eelco Dolstra
2003-10-20* Finished refactoring the tree.Eelco Dolstra
2003-10-16* Substitutes and nix-pull now work again.Eelco Dolstra
* Fixed a segfault caused by the buffering of stderr. * Fix now allows the specification of the full output path. This should be used with great care, since it by-passes the normal hash generation. * Incremented the version number to 0.4 (prerelease).
2003-09-23* Put the SVN revision number in the version string.Eelco Dolstra
2003-09-11* Removed references to char_traits so that boost/format also works onEelco Dolstra
GCC 2.95.
2003-08-20* Bumped the version number to 0.3.Eelco Dolstra
2003-08-12* Generate man pages from the manual.Eelco Dolstra
2003-08-06* Scan for wget and use the full path in fetchurl.sh.Eelco Dolstra
* Use nix-hash (not md5sum) in fetchurl.sh.
2003-07-28* Check for the pthread library (db4 needs it on some platforms).Eelco Dolstra
2003-07-23* Incorporated Berkeley DB and ATerm into the source tree.Eelco Dolstra
* `make dist'.
2003-07-18* Generate nar.sh, fetchurl.sh.Eelco Dolstra
2003-07-13* Pass $(prefix) and other variables through -D..., not Eelco Dolstra
through config.h, to prevent silly Autoconf problems.
2003-07-10* Get `nix-push' working again. It now uses Nix/Fix to create NixEelco Dolstra
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.