Go to file
Eelco Dolstra bd013b6f98 On Linux, make the Nix store really read-only by using the immutable bit
I was bitten one time too many by Python modifying the Nix store by
creating *.pyc files when run as root.  On Linux, we can prevent this
by setting the immutable bit on files and directories (as in ‘chattr
+i’).  This isn't supported by all filesystems, so it's not an error
if setting the bit fails.  The immutable bit is cleared by the garbage
collector before deleting a path.  The only tricky aspect is in
optimiseStore(), since it's forbidden to create hard links to an
immutable file.  Thus optimiseStore() temporarily clears the immutable
bit before creating the link.
2012-02-15 01:31:56 +01:00
corepkgs * currentOutput -> outputName. "current" implies some temporal 2012-01-04 12:00:39 +00:00
doc * Added a command ‘nix-store --print-env $drvpath’ that prints out the 2012-01-17 23:07:22 +00:00
externals * Fix the broken reference to bunzip2 in the channel unpack script. 2011-11-05 21:06:24 +00:00
misc * Handle <path> syntax. 2011-08-06 18:54:29 +00:00
perl * Don't distribute Store.cc, it's generated automatically by xsubpp. 2012-01-18 16:43:48 +00:00
scripts * nix-channel: fail if we don't have write permission to the manifests 2012-02-02 12:25:56 +00:00
src On Linux, make the Nix store really read-only by using the immutable bit 2012-02-15 01:31:56 +01:00
tests * Add a test for importing derivations. 2012-01-26 13:04:50 +00:00
.gitignore Update .gitignore 2012-02-08 19:25:43 +01:00
AUTHORS * Put something in here. 2004-11-07 20:30:02 +00:00
COPYING * Change this to LGPL to keep the government happy. 2006-04-25 16:41:06 +00:00
INSTALL * Autoconf / Automake configuration and building. 2003-04-04 16:14:56 +00:00
Makefile.am * Include the Nix Perl bindings in Nix itself. This will allow the 2011-10-10 18:12:40 +00:00
README * Install documentation in $(docdir) (i.e. share/doc/nix). 2008-11-19 13:19:09 +00:00
bootstrap.sh bootstrap: Simplify & make more robust. 2011-09-06 12:11:05 +00:00
configure.ac On Linux, make the Nix store really read-only by using the immutable bit 2012-02-15 01:31:56 +01:00
nix.conf.example * Document --cores in the manual. 2010-08-17 07:22:05 +00:00
nix.spec.in * Hopefully perl-devel contains the required headers (untested). 2011-10-10 18:58:49 +00:00
release.nix Set the versionSuffix to include the Git shortrev 2012-02-08 12:31:14 +01:00
substitute.mk tests: Run `download-using-manifests' via libtool so that dlopening works. 2012-01-11 16:58:49 +00:00
version * Bump the version number. 2010-08-17 15:39:35 +00:00

README

Nix is a purely functional package manager.  For installation and
usage instructions, please read the manual, which can be found in
`docs/manual/manual.html', and additionally at the Nix website at
<http://nixos.org/>.


Acknowledgments

This product includes software developed by the OpenSSL Project for
use in the OpenSSL Toolkit (http://www.OpenSSL.org/).