Commit graph

290 commits

Author SHA1 Message Date
Ana Hobden 1da69eef4a
Plan prompts for sudo (#639)
* Plan prompts for sudo

* clippy/fmt
2023-09-22 18:08:01 +00:00
Ana Hobden 8911329beb
Upgrade to Nix 2.18 (#637) 2023-09-22 10:45:23 -07:00
Ana Hobden 7669045865
Disable auto-allocate-uids on Linux too (#638)
* Disable auto-allocate-uids on Linux too

* Fix clippy/fmt
2023-09-22 10:44:40 -07:00
Ana Hobden abfde74d1f
Add support for URLs or paths in --nix-package-url and --extra-conf (#634)
* Add support for URLs or paths in --nix-package-url and --extra-conf

* fmt

* Into a mod with you, tests!
2023-09-20 19:10:56 +00:00
Graham Christensen 60e5fff623
Support user-defined diagnostics attribution (#635)
* Switch to flakehub

* Diagnostics: support user-defined attribution.

Allows a user to specify an additional value to associate their diagnostics with that value. nix-installer doesn't generate or store these values, and most users have no need for it.

* Respond to feedback
2023-09-20 11:23:23 -07:00
Ana Hobden 1c103edb90
Set max-jobs in nix.conf (#627) 2023-09-13 17:38:40 +00:00
Ana Hobden 05571a4990
Make nix.conf changes deterministic (#620)
* Make nix.conf changes deterministic

* Add mac fixture

* Warn/error if user settings don't match our needs

* Repair mac fixture

* fmt

* clipster

* Tidy up some feedback

* fmt

* resolve some nits
2023-09-13 17:02:05 +00:00
Ana Hobden b3dcf07f58
Check for file existence before attempting to open it (#626)
* Check for file existence before attempting to open it

* Fixup
2023-09-13 09:55:44 -07:00
Ana Hobden dd36129aa2
Improve --help (#624) 2023-09-13 09:52:41 -07:00
Ana Hobden dd6edfb5eb
Uninvert logic (#623) 2023-09-13 09:38:42 -07:00
Ana Hobden b870f97c0e
Improve the message when security delete-generic-password is required (#570)
* Improve the message when security delete-generic-password is required

* Spelling

* Use sudo in recommendation
2023-08-10 17:42:22 +00:00
Ana Hobden 5e68cf127b
Check versions on uninstall for safety (#579) 2023-08-10 10:23:07 -07:00
Martin Wimpress c31535a824
Nix 2.15.0 -> Nix 2.17.0 (#597) 2023-08-03 08:16:06 -07:00
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