Linus Heckemann
f2606d3127
* CreateOrAppendFile: setuid safety * Apply a sensible default mode if the file didn't already exist * remove some incorrect docs * Implement CreateOrInsertFile and use it instead of Append for shell rcs Ubuntu's bashrc has the following lines in it: # If not running interactively, don't do anything [ -z "$PS1" ] && return This means that anything appended to the file will only take effect in interactive sessions. However, we want noninteractive shells to have Nix on PATH too, e.g. for remote builds. Therefore, we need to add our snippet to the beginning of the file, not the end. * Adjust test fixtures to match new behaviour * interaction: indicate default for confirm correctly * CreateOrInsertFile: use randomised temporary filename * Fix temp file creation * Apply permissions to temp file, not final file The final file may not exist, and the temporary file is the one whose permissions will actually be preserved. * Use the right ActionError for renaming * Test the SSH behaviour properly * cargo fmt * [DS-574] Write to zshenv instead of zshrc * CreateOrInsertFile -> CreateOrInsertIntoFile Also move appending behaviour in here. * Update Linux fixtures * update darwin-multi fixture * fix fixture * fmt |
||
---|---|---|
.. | ||
darwin | ||
linux |