* Add install script cure tests
* Add missing stuff from commit
* Fix installer-test-fedora-v36-install-script-multi-broken-daemon-disabled
* Do some renaming
* Speeling
* Tweak permissions since Mac apparently has no root group
* add some additional vm tests
* Wire things up
* Add further tests
* Fixups
* Add more exhaustive default test check
* Whoops fmt
* Disable a currently breaking test
* Repair notice content in CONTRIBUTING.md
* Enable deleting users and groups on Mac
* Scaffold user change
* Add a warning if it doesn't work in situations we expect it to not work
* Scaffold out doing group member ship -- maybe we need an AddGroup action
* AddUserToGroup action
* Update plans
* Improve messaging
* Nit in error message
* Repair some review nits
* wip
* Add dockerfile
* Add readme bits
* Fix logic inversion
* Relax init detection error
* Tidying heuristics
* Fix doc tests
* Mac supports start-daemon false
* Get VM tests working
* Add instructions
* Some target_os flagging
* More target flagging
* Fix lints
* Fixup more mac-only stuff
* cfg flag examples too
* Fix planner wording
* More os specific lint fixing
* More refinement on mac and the README
* Add new CI jobs to test no-daemon
* Use nix-installer-pr to point at branch
* Tests with no-init
* init/no-daemon are linux only
* nix tests support a per-distro all attribute
* Add working podman test
* Expand docker tests
* Add contributing notes
* format
* Support both podman and docker
* Update contributing
* Add Windows WSL test script for Ubuntu
* format nix tests
* More ignores to check-spelling
* Add systemd based wsl test
* We don't have root-only darwin
* Reflect review nits
* Reenable tests
* Restore mac plan
* Flag off os specific tests
* Better cfg flagging
* Remove dead comments
* Rework readme to look better with new sections
* Correct codeblock language
* Remove some warnings
* 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
* Add metadata do Cargo.toml
* Add docs link
* wip
* Get it mostly working
* Handle empty channels, local files, offline mode
* Get them working
* Expand CONTRIBUTING.md
* Expand more
* Correct some formatting/mistypes
* More notes about steps
* Correct speeling
* Improve ubuntu naming
* Add note about specific branch/checkout testing
* Review corrections
* Change match to if