Fixing a terrible bug in nixos nfs-kernel server, related to the exports file.

The file contents were taken as a file path. This resulted in a system with a totally broken /etc:
lrwxrwxrwx 1 root nixbld   51 22 feb 21:45 bashrc -> /nix/store/gh71a6w50cxrl4124kxfn24yi0b7aaka-useradd
lrwxrwxrwx 1 root nixbld   44 22 feb 21:45 nix.conf -> 192.168.1.4(rw,no_root_squash,no_all_squash)
lrwxrwxrwx 1 root nixbld   58 22 feb 21:45 inputrc -> /nix/store/1czhdj7q74dc556frqrh51jyshfsxhl3-bashrc-user.sh
lrwxrwxrwx 1 root nixbld   51 22 feb 21:45 nsswitch.conf -> /nix/store/qsgsli992hd1g8245d8am9izn9xmw90x-inputrc
lrwxrwxrwx 1 root nixbld   20 22 feb 21:45 exports -> /home/sheevaplugroot

Notice that the inputrc has strange contents. In my case, that disabled me to type 's' or 'i' (at least) in any new interactive shell.

If you notice, the 'exports' symlink should point to a store file, which contents had to look like:
/home/sheevaplugroot 192.168.1.4(rw,no_root_squash,no_all_squash)

This patch achieves this later behaviour rather than the former.


svn path=/nixos/trunk/; revision=20181
This commit is contained in:
Lluís Batlle i Rossell 2010-02-22 21:41:49 +00:00
parent 0bae6c2c18
commit bc4e159d0e

View File

@ -82,7 +82,7 @@ in
});
environment.etc = mkIf cfg.server.enable (singleton
{ source = cfg.server.exports;
{ source = pkgs.writeText "exports" cfg.server.exports;
target = "exports";
});