Commit graph

300 commits

Author SHA1 Message Date
Cole Helbling 2594316750
Integrate nix-config-parser (#263)
Co-authored-by: Ana Hobden <operator@hoverbear.org>
2023-03-06 17:29:44 +00:00
Ana Hobden d9dfb3c063
Update some dependencies (#303) 2023-03-06 09:14:40 -08:00
Ana Hobden 903258942c
Add more failure context / Improve error structure (#296)
* wip: add more context to errors

* Add a bunch fo context

* Repair source handling

* Add remaining contexts

* Add some context, but some of it is not right...

* Tidy up contexts properly

* Get command errors working how I want

* Remove some debug statements

* Repair mac build

* Move typetag to Action

* newtypes!

* Fix doctest
2023-03-03 14:20:17 -08:00
Cole Helbling 49154b9863
Make errors non-exhaustive (#299) 2023-03-03 20:03:51 +00:00
Cole Helbling d7c14d6695
Detect WSL1 and error (#297)
* Detect WSL1 and error

WSL1 is not supported because some things Nix relies on to work are not
available.

* Update linux.rs

* Add link to MS docs on WSL1 -> WSL2 upgrade
2023-03-03 09:49:46 -08:00
Cole Helbling 3be93c54f6
Use launchctl load -w on macOS (#298) 2023-03-03 09:28:55 -08:00
Cole Helbling 792639b6ad
update: dogfood our action (#293) 2023-03-02 08:08:34 -08:00
Cole Helbling 9c8284cd06
Add newline to end of plan json output (#283)
* Add newline to end of `plan` json output

This causes some shells (like sh) to continue their prompt right after
the closing brace, which is kinda meh.

* Add newline to end of `receipt.json`

`cat /nix/receipt.json` has the same issue as the previous commit, in
that it will bleed into the prompt for some shells that don't insert an
implicit newline.

* Add newline to end of fixture json documents
2023-02-28 08:38:42 -08:00
Cole Helbling d49e12cd7d
Update default nix_package_url to Nix 2.13.3 (#279) 2023-02-28 08:38:14 -08:00
Cole Helbling f941e13140
Use 0o644 for files, not 0o664 (#278)
(.nix-channels was the last remaining user of the 0o664 typo)
2023-02-28 08:36:09 -08:00
Cole Helbling 9ddcbf6513
Bump tempfile to 3.4.0 (#277) 2023-02-27 07:51:47 -08:00
Graham Christensen d20c0b9746
Describe Diagnostics (#276)
Co-authored-by: Cole Helbling <cole.helbling@determinate.systems>
2023-02-27 15:49:40 +00:00
Ana Hobden f9f927840d
Release v0.4.0 (#273) 2023-02-24 22:29:52 +00:00
Ana Hobden 3fc5857db2
Repair is_ci handling, sudo was erasing the variables (#274) 2023-02-24 22:09:26 +00:00
Ana Hobden db329ea65f
Prelease tidy and add is_ci to Diagnostics (#271)
* Some pre-release tidy and add is_ci to diagnostics

* Bump locks

* Fixup cargo-audit raised issues

* Remove a spare 'I' which we were saving for later

* rename a field

* failure_variant, not error_variant
2023-02-24 13:07:11 -08:00
Ana Hobden 59abd1bef0
Use extra-nix-path to resolve nix-shell -p not working (#270) 2023-02-24 12:28:16 -08:00
Cole Helbling 2fa5bf2e22
gitignore: ignore Nix result directories (#272) 2023-02-24 20:12:58 +00:00
Ana Hobden 19dd7a13d4
Add diagnostics reporting (#264)
* Add diagnostics reporting

* Some tidying

* Remove injected failure

* Update URL

* Fixups

* Fix tests

* Use triples instead of architecture
2023-02-24 10:11:12 -08:00
Cole Helbling 8de35b2477
README: upgrade MacOS stability and note (#269)
Removing users and/or groups may fail if there is no user logged in
graphically. Aside from that, it should work.
2023-02-24 09:27:00 -08:00
Cole Helbling b04b1eec70
Improve permissions checking when dealing with existing files (#267)
* create_file: check if path is file, improve permissions checking

* create_or_insert_into_file: check if path is file, improve permissions checking

* fixup: 100xxx -> xxx modes

* fixup: suggest legal mode for chmod
2023-02-23 19:32:09 +00:00
Ana Hobden 689cf84bbf
Enable deleting users and groups on Mac (#253)
* 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
2023-02-22 07:46:52 -08:00
Ana Hobden 7e951a5b6a
Set the correct permissions on the zshenv (#257)
* Set the correct permissions on the zshenv

* Update error to suggest chmod instead of delete

* Missed a formatting option

* 644, not 755

* Get a bit more specific

* Mac specific permissions
2023-02-21 07:28:14 -08:00
Luc Perkins 5582d050fc
Add note on --no-confirm flag (#261) 2023-02-21 07:27:21 -08:00
Ana Hobden a89e05b850
Don't parallize user creation (#260) 2023-02-18 16:56:25 -08:00
Ana Hobden 5e7cb50c50
Don't specify chmod on synthetic.conf (#259) 2023-02-17 14:10:00 -08:00
Ana Hobden f20b2a4b63
Improve error message guidance (#258)
* Improve error message guidance

* Fix octal
2023-02-17 20:41:01 +00:00
Ana Hobden c150d603ea
Remove some bad merge code (#252) 2023-02-15 13:20:58 -08:00
Ana Hobden 9f34c49461
Mac support note (#251)
* Add Mac support note

* Reframe stability wording on Mac
2023-02-15 18:18:55 +00:00
Ana Hobden 41fdc2d20e
Release v0.3.0 (#249) 2023-02-14 09:45:20 -08:00
Ana Hobden 6ec5080a2f
How about a CI API call reduction? (#245)
* How about a CI API call reduction?

* Not everyone uses Nix with flakes, turns out we are one of them

* Unbreak GHA file

* Purge github actifacts use

* Missed one.

* chmod right path

* chmod right binary name

* Fix steam deck, mac still broken due to containers

* Attempt to use github cache instead of the buildkite action

* See if we get the right artifacts

* Skip a test that Macs dislike

* Write GHA file correctly

* Refine jobs on buildkite and pathes on gha

* Better output

* Even more output!

* Use correct folder structure
2023-02-14 08:27:40 -08:00
Ana Hobden 1c0c92f35e
Repair some tests (#248)
* Repair some tests

* Yank sha256 prefixes
2023-02-13 23:33:30 +00:00
Ana Hobden 1b3d441051
Clarify stability (#244)
* Clarify stability a bit

* Further stability clarification in CONTRIBUTING.md

* Improve some wording
2023-02-13 14:07:35 -08:00
Ana Hobden c24e19ddca
Workaround some Mac issues in CI (#247) 2023-02-13 12:46:55 -08:00
Ana Hobden e3d06c24e7
Offer users better error if fstab entries exist (#241)
* Offer users better error if fstab entries exist

* Split up errors

* Remove a naughty bracket

* last nits
2023-02-10 22:44:39 +00:00
Ana Hobden fc13c1d250
Make systemd unit start detect already running unit (#240)
* Make systemd unit start detect already running unit

* Prod CI

* Fixup messaging

* Reflect comments
2023-02-10 20:43:46 +00:00
Ana Hobden ab4c528595
Rename some of the planners (#243)
* Rename some of the planners

* Fixup Mac

* Also move actions

* Also update CI
2023-02-10 20:35:00 +00:00
dependabot[bot] 0441ae64e1
Bump DeterminateSystems/update-flake-lock from 14 to 16 (#223)
Bumps [DeterminateSystems/update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock) from 14 to 16.
- [Release notes](https://github.com/DeterminateSystems/update-flake-lock/releases)
- [Commits](https://github.com/DeterminateSystems/update-flake-lock/compare/v14...v16)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 12:03:11 -08:00
Ana Hobden e35278a121
It's the Determinate Nix Installer (#242)
* We like the phrasing the Determinate Nix Installer for now

* Cajoled

* Fixups
2023-02-10 19:48:44 +00:00
Ana Hobden 20b054b50c
Better support existing files with CreateFile and CreateorInsertIntoFile (#239)
* Better support existing files with CreateFile and CreateorInsertIntoFile

* Skip instead of complete if found

* Fixup some permissions

* Fixup nix version used

* Use unix module instead of linux one

* Use unix module instead of linux one in other spot

* Also cover CreateDirectory

* Add some more tests

* Fixup messaging

* Corect some logic inversions
2023-02-10 10:56:22 -08:00
Ana Hobden ce28eedf2a
Better support users/groups existing before install (#238)
* Better support users/groups existing before install

* Skip instead of complete if found

* Prod CI

* Add debuging messages

* Mark completed instead of skipped
2023-02-09 10:34:34 -08:00
Ana Hobden 28db9f2953
Attempt to minimize steam deck display manager restart risk (#237)
* Attempt to minimize steam deck display manager restart risk

* Fiddle a bit more

* Prod CI

* Be much more specific with services we restart
2023-02-08 11:58:48 -08:00
Ana Hobden 4884588339
Bump Nix to 2.13.2 (#236)
* Bump Nix to 2.13.2

* Use nix 2.13.2 in flake

* Prod CI
2023-02-08 11:41:36 -08:00
Ana Hobden 2c91bea9eb
Add 32 bit support (#229)
* Add 32 bit support

* Add buildkite job for i686

* Use x86 for system on i686

* Adapt nix-installer.sh script to support i686
2023-02-06 07:50:23 -08:00
Ana Hobden 8dcd991c57
Update dependencies (#233) 2023-02-03 09:07:10 -08:00
Cole Helbling c1944c9c5e
release: only run one release action at a time (#231) 2023-02-02 10:39:45 -08:00
Ana Hobden 3d1b9f2644
v0.2.1-unreleased (#232) 2023-02-02 18:38:46 +00:00
Ana Hobden 95852f295e
Release v0.2.0 (#230) 2023-02-01 13:46:55 -08:00
Ana Hobden d69f335703
init-less install (#188)
* 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
2023-02-01 12:35:52 -08:00
Ana Hobden 4d2e2c3911
Use 30k range not 3k range for UIDs on Linux and 30k for a GID on all (#222) 2023-02-01 10:41:10 -08:00
Ana Hobden 8042ac5131
Add plist use to the CreateFstabEntry action (#221) 2023-02-01 10:40:56 -08:00