Commit graph

277 commits

Author SHA1 Message Date
Ana Hobden 55cbf41a00
Make self-test errors a warning only (#587) 2023-07-25 11:17:52 -07:00
Ana Hobden ff20fc04b3
Fix the Mac CI with Silverblue (#591) 2023-07-24 11:44:28 -07:00
Hofer-Julian e84fd2bed9
Add support for ostree-based Linux distributions (#586)
* Add support for ostree-based Linux distributions

Fixes #389
I've tested this planner on Fedora Silverblue and Endless OS

* Stop duplicating check functions

* Remove `init` cli flag
2023-07-24 11:10:20 -07:00
Ana Hobden a049e52fd8
Teach installer about Clear Linux (#581) 2023-07-24 10:43:10 -07:00
Ana Hobden 3ad209cc0d
Create GITHUB_PATH with 777 mode (#568) 2023-07-17 10:45:22 -07:00
Hofer-Julian 90dc4b93ad
Remove unneeded lifetime (#573) 2023-07-17 08:40:10 -07:00
Hofer-Julian c3fa6e9623
Fix most clippy warnings (#572)
The only remaining is at `NixInstallerSubcommand`

See https://rust-lang.github.io/rust-clippy/master/index.html#/large_enum_variant
2023-07-17 08:34:46 -07:00
Ana Hobden 80026e1e2f
Add pre install/uninstall checks to planners (#561)
* Add pre install/uninstall checks to planners

* Refine checks

* fmt

* Make sure checks run before install/uninstall described as well

* Make nix-darwin error expected

* Fix import

* Fix import

* Report expected errors properly

* format
2023-07-12 09:08:42 -07:00
Ana Hobden d076888f88
Tweak self-test reporting to make it more clear it may not be a total failure (#559) 2023-07-10 11:33:53 -07:00
Ana Hobden e5390faf1a
Offer better messaging around user/group creation (#557)
* Offer better messaging around user/group creation

* fmt
2023-07-06 08:24:35 -07:00
Ana Hobden edb72882fd
Add tracing around the Github Actions reinstall issue (#541) 2023-07-05 13:39:01 -07:00
Ana Hobden ba841149e7
launchctl bootstrap fails with disabled in a dirty state (#555)
* Handle a MacOS service being disabled during bootstrap

* Handle service disabled in configure_init_service

* Fixup missed line

* Fix import

* Don't deref pointer

* Tweak detection and re-enablement
2023-07-05 13:38:50 -07:00
Ana Hobden f8b3e29751
Remove atty dependency (#554) 2023-07-05 11:53:19 -07:00
Ana Hobden 675d93c644
Support create_directory paths being an existing mount (#547)
* Support create_directory paths being an existing mount

* Tidy up after install even on mounts

* Repair steam deck test

* Fixup some nits
2023-07-05 09:11:57 -07:00
Ana Hobden 9c915b3f6a
bugfix: Let Mac users specify encryption directly (#546) 2023-06-30 12:43:02 -07:00
Ana Hobden 3586457624
Turn off auto optimise store on mac (#542)
* Disable auto-optimise-store on Mac

* Add comment on why we disable something

* fmt

* Auto-allocate-uids is linux only too
2023-06-28 21:11:16 +00:00
Ana Hobden 4bfd6c2547
Use ssl-cert-file config (#527)
* Use ssl-cert-file config

* Include mac change

* Use canonical ssl cert file

* Don't set ssl-cert-file in shell profiles

* Canonicalize in diagnostics

* Optionally read cert file
2023-06-26 10:36:46 -07:00
Ana Hobden 0b6d723db3
Uninstalling should change directory if in nix (#526)
* Change directory during uninstall if run from /nix

* Include log message
2023-06-23 11:42:18 -07:00
Ana Hobden a962b3390b
Restore user creation on Mac (#524)
* Restore user creation on Mac

* Repair MacOS build

* Pass clone not borrow

* Fixup double group create

* Add some links
2023-06-23 10:29:47 -07:00
Ana Hobden b29a7585bd
Add self test functionality (#506)
* Add self test functionality

* Fix mac ci

* Improve erorr messaging

* i32 support

* Fixup self-test comment

* Fix review nits
2023-06-08 08:09:04 -07:00
Ana Hobden 99941446df
Fix uninstalling on latest steam deck with offload (#502) 2023-06-02 07:34:31 -07:00
Ana Hobden 1d51b25bf7
Use os-release to determine appropriate planner (#501) 2023-06-01 13:00:39 -07:00
Ana Hobden 5a07b2331b
Support for SteamOS Nix Offload in SteamOS 20230522.1000 (#495)
* Document how to handle different branches and buildIDs of the steam deck OS

* Changes required for SteamOS 20230522.1000

* Speeling

* Handle steamos upgrades better

* Speeling

* Tidy
2023-06-01 09:48:50 -07:00
Ana Hobden 0f231b715f
Improve messaging when /nix/receipt.json is already found (#491)
* Improve messaing when receipt already found

* Further improvement

* Use a const for message
2023-06-01 16:23:54 +00:00
Ana Hobden 7ec5148e6d
Add time machine exclusions for Mac (#480)
* Add time machine exclusions for Mac

* Prod CI

* Stub out mac test for a remote build

* Add plan changes

* wip

* Move the exclusions to be later

* Fixups

* Use pathbufs

* Import pathbuf

* Update test plans
2023-05-31 13:36:44 -07:00
Ana Hobden f91b93bdb0
APFS volumes don't necessarily have names (#490) 2023-05-31 13:36:24 -07:00
Ana Hobden 464ac0776e
Fixup GHA home directory on Mac (#482) 2023-05-26 13:16:31 -07:00
Ana Hobden 2673a9b299
Improve WSL systemd detection (#469)
* Improve WSL systemd detection

* Make systemd missing in wsl an expected error

* fmt

* Use && instead

* Make it more verbose
2023-05-19 14:49:43 +00:00
Ana Hobden 5a8526268d
Improve the SELinux heuristic to look for sestatus (#470) 2023-05-18 09:47:28 -07:00
Ana Hobden 9de3c56c37
Improve messaging around version incompatability (#457)
* Improve messaging around version incompatability, suggesting how the user may address the situation

* Even better messaging

* Improve plan versioning messaging

* Remove note about /nix/nix-installer since it may not exist
2023-05-17 10:29:47 -07:00
Ana Hobden 1c18698ee6
Improve failure chain on revert (#467) 2023-05-17 16:01:36 +00:00
Ana Hobden e3a5ffc8f7
Add SELinux support (#465)
* 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
2023-05-17 16:27:14 +02:00
Ana Hobden 10732cef68
Don't error if already installed with same settings, just warn (#454) 2023-05-09 07:53:36 -07:00
Ana Hobden 7c9dfacf8e
Fixup multiple --extra-conf usages (#456)
* Fixup multiple --extra-conf usages

* Merge experimental-features passed in extra-conf
2023-05-09 07:53:25 -07:00
Ana Hobden 217c3683bc
Make the RequiredBy items in the nix.mount of steam-deck planner in [Install] (#455) 2023-05-09 07:52:11 -07:00
Ana Hobden 08ef3bb82a
Test Nix 2.15 and the auto-uid-allocation feature (#196)
* Auto UID allocation

* Uncomment plan tests

* Delete legacy users on install

* Group up deleteuser actions
2023-05-05 13:54:37 -07:00
Ana Hobden bdd087a615
Set permissions on unpacked Nix store paths more carefully (#451)
* Set permissions on unpacked Nix store paths more carefully

* Don't setperm on links
2023-05-05 12:27:00 -07:00
Ana Hobden 965185dcab
fsync after writing Nix config to attempt to fix the flaky preserves_comment test (#448) 2023-05-05 12:12:05 -07:00
Graham Christensen 5a58cf20be
Nix 2.13.3 -> 2.15.0 (#428)
* Nix 2.13.3 -> 2.15.0

* Use new path for profile path addition

---------

Co-authored-by: Ana Hobden <operator@hoverbear.org>
2023-05-01 10:15:21 -07:00
Ana Hobden b3c47227ff
Fixup a cure case where a store path already exists so we never make a symlink (#414) 2023-04-12 06:25:24 -07:00
Ana Hobden 4fc7a0db18
Check user group commands exist during plan (#411)
* Check user/group related commands exist prior to execution/revert

* Fixup

* Don't check for executables on mac

* fmt
2023-04-11 07:44:49 -07:00
Ana Hobden 9549d793cc
Avoid globbing issues by using symlinks and readlink (#413) 2023-04-11 07:44:20 -07:00
Ana Hobden 75627bcd91
Provide users a better error message if systemd is not active (#412)
* Provide users a better error message if systemd is not active

* Fixups

* Fix mac

* Fixup
2023-04-10 16:16:46 -07:00
Ana Hobden cb48a7261b
Handle the APFS volume not existing but the Service and Fstab being present (#405)
* Handle the APFS volume not existing but the Service and Fstab being present

* Add handling if we need to bootout the service

* Spelling

* Rename enum
2023-04-10 20:13:25 +00:00
Ana Hobden 16ddada7a3
Only stop the nix daemon if it's actually active, not just enabled (#410)
* Only stop the nix daemon if it's actually active, not just enabled

* Add vm-tests
2023-04-10 12:47:34 -07:00
Ana Hobden 1718e0c428
Trim fdesetup output, remove accidently committed SSL related settings (#403)
* Trim fdesetup output, remove accidently committed SSL related settings

* More complete revert of accidental code

* Fix a bad
2023-04-05 11:13:24 -07:00
Ana Hobden 8bb37f1bcf
Uninstall shouldn't fail fast (#382)
* 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
2023-04-05 15:12:38 +00:00
Ana Hobden 5ec1d0e9b9
Fixup create_volume_service action tag (#398) 2023-04-03 16:19:28 +00:00
Ana Hobden 5b9cb16c94
Add a bit of issue metadata (#386)
* Add a bit of issue metadata

* Immediately install
2023-03-29 17:24:34 +00:00
Ana Hobden c0e9e7015e
Revert default_missing_value to default_value (#380)
We don't need to do this anymore. It was some change I was testing that
didn't work, and I forgot to remove it.
2023-03-28 16:58:57 +00:00