<elvishjerricco>
I built an option `environment.hardEtc` that behaves like `environment.etc`, except that it creates hard links instead of symlinks. This requires the nix store to be in the same file system as /etc of course. But I use it to define `networking.hosts` and SSH authorized keys because macOS does not respect those if they're symlinks for some reason.
<elvishjerricco>
oh abathur is gone
<clever>
elvishjerricco: of note, sshd refuses to run if the server key is world-readable
<clever>
elvishjerricco: so symlinks cant even be used for that, nor hardlinks
<clever>
setup-etc.pl has a flag for this, where it will copy and chmod, rather then symlink
<elvishjerricco>
clever: Why is copying better than hard linking?
<clever>
elvishjerricco: hardlinking leaves it as world-readable
<elvishjerricco>
clever: You can chmod a file after hard linking it. There is no link between the permissions of different links to the same inode
<clever>
permissions are on the inode, and hardlinking shares the inode
<elvishjerricco>
wait really?
<clever>
yeah
<elvishjerricco>
I may have messed up my nix store then :P
<elvishjerricco>
I thought permissions were on the link, not the node
<clever>
the link is just a name+inode pair
<clever>
the inode is where owner/chmod/data is held