- We were looking for a top-level tarball path that looked like nix-*.
This was invalid, since our tarballs have lix-*.
- We were looking for a store path that looked like nix-*.*.*. This was
invalid, since ours is lix-*.*.*.
This change accepts both.
- We also added a symlink for nix-installer and nix-installer.sh, which
deals with the test suite being pretty tightly coupled to that path.
- We fixed a bug exposed in the tests where --no-substitute is not
passed while self-testing builds. This seems to have been relying on
offline detection and while it eventually passed, it was busted and
took ages.
Change-Id: I2f497bd647ecf1db5963a4bb245279db582d2af3
The `nix-installer-static` package is now named `lix-installer-static`.
However, the uninstall binary is still called `nix-installer`
Change-Id: I60fd2ab84867beaa8cf527e88c953298ec703881
Not all references to the crate name were caught when it was changed.
Some tests rely on importing from `lix_installer` and filter directives
for the logs vary based on crate name.
Change-Id: I29acde8b96c823332a740dc69ef1847fdd89d967
* Add SELinux support
* Nits
* Fix spellcheck
* Don't store mod, use locked shell
* Unwhoops a stale comment
* Speeling: Myy aarch neemesis
* Fix lost code:
* Add method note
* Uninstall shouldn't fail fast
* wip
* wip
* No longer fails fast
* Tidy up error handling
* Touchup post merge
* Refactor nix tests
* Some minor fixes
* Uninstall fail tests
* Fiddle with messaging
* nixfmt
* Tweak display a bit
* fix docs
* Fix Mac
* Revert setting I was testing
* Reflect feedback about a log level
* 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