1
0
Fork 0
mirror of https://github.com/LnL7/nix-darwin.git synced 2024-12-14 11:57:34 +00:00
Commit graph

117 commits

Author SHA1 Message Date
Evan Petousis
f1a0d68a8f
etc: add known hash for /etc/zshenv and /etc/nix/nix.conf
Adds support for DeterminateSystems installer 0.16.0 and later. Fixes #880.
2024-02-23 18:45:24 +11:00
Logan Barnett
27e6a022f2
apply feedback, fix merge goof 2024-02-21 10:44:30 -08:00
Logan Barnett
9f4fbed460
Merge remote-tracking branch 'ethnt/linux-builder-systems-config' into linux-builder-big-config-take-2 2024-02-21 09:29:40 -08:00
Logan Barnett
208cd70d04
Merge remote-tracking branch 'stv0g/linux-runner-options' into linux-builder-big-config-take-2 2024-02-21 09:27:02 -08:00
Logan Barnett
61c5879b5a
linux-builder: default pass through protocol to nix.buildMachines
This commit adds a protocol option for the `linux-builder` and defaults
it to `ssh-ng`.  I have observed it needing this with the following:

``` sh
$ nix store ping --store ssh://linux-builder
Store URL: ssh://linux-builder

$ nix store ping --store ssh-ng://linux-builder
Store URL: ssh-ng://linux-builder
Version: 2.18.1
Trusted: 0
```

This seems to make the difference on whether or not Nix picks up
`linux-builder` as an available builder.
2024-02-20 13:10:24 -08:00
Steffen Vogel
94558e7e8b linux-builder: Pass through more options to nix.buildMachines
This commit passes more options to  nix.buildMachines. Namely the mandatoryFeatures and speedFactor settings have been missing.
2024-02-18 13:25:01 +01:00
Jacek Galowicz
c4ea346d0f Dedupe the WorkingDirectory path of the linux-builder 2024-01-15 13:51:34 +01:00
Michael Hoang
4b9b83d5a9
Merge pull request #806 from DeterminateSystems/easier-uninstall
Install darwin-uninstall by default, which includes the 'empty' config it switches to
2023-11-24 14:11:34 +11:00
Ethan Turkeltaub
72dd60bfc9
Add default system to systems option 2023-11-22 20:43:29 -05:00
Ethan Turkeltaub
6a3a683d43
Use nix.buildMachines.*.systems instead of nix.buildMachines.*.system 2023-11-22 20:43:28 -05:00
Ethan Turkeltaub
a5812ff83c
Add nix.linux-builder.systems option to set corresponding nix.buildMachines.*.systems option 2023-11-22 20:43:27 -05:00
Graham Christensen
09284ab00b Install darwin-uninstall by default, which includes the 'empty' config it switches to
Co-Authored-By: Michael Hoang <enzime@users.noreply.github.com>
2023-11-16 17:47:24 +11:00
Michael Hoang
d4efdb7f88 etc: add more known hashes
This should be less of an issue as of DetSys' nix-installer 0.15.0 which
no longer includes the version number in `nix.conf`.
2023-11-16 14:26:25 +11:00
Domen Kožar
eb2b9b6423
Merge pull request #785 from Enzime/deferred-modules
linux-builder: change from `modules` to `config`
2023-11-08 09:58:53 +00:00
Michael Hoang
afe83cbc2e
Merge pull request #791 from lilyball/linux-builder-tmpdir
linux-builder: avoid /tmp for certs
2023-10-27 19:55:34 +02:00
Alexis Destrez
e621b5aea7 Provide 'supportedFeatures' option to the linux builder module 2023-10-18 17:47:27 +02:00
Lily Ballard
160eb3d99d linux-builder: avoid /tmp for certs
Fixes #768
2023-10-09 16:09:11 -07:00
Michael Hoang
70af808347 linux-builder: change from modules to config
Using the type `deferredModule` fixes `pkgs` not being accessible as a
module argument (apart from `config._module.args.pkgs`).
2023-09-29 12:38:39 +01:00
Lily Ballard
97e978626e linux-builder: add maxJobs option
Fixes #751
2023-08-02 12:33:34 -07:00
Michael Hoang
0dafe2170d Add darwin-version command 2023-07-14 23:06:46 +10:00
Michael Hoang
4b90ea84e4 doc: store a copy of known files 2023-07-11 18:59:05 +10:00
Michael Hoang
5288a72354 Allow flaky installation with darwin-rebuild 2023-07-11 18:59:05 +10:00
Michael Hoang
f70f90c422 flake: add packages.darwin-{option,rebuild} 2023-07-11 18:59:05 +10:00
Andrew Marshall
591446ca94 nix: Remove readOnlyStore option as it has no effect
This being under `nix` in upstream is misleading as it is only used in
the NixOS boot stage, not as configuration for the Nix daemon.
2023-07-10 08:30:38 -04:00
Andrew Marshall
4a7da05c1e Fix spelling 2023-07-10 08:30:15 -04:00
Daiderd Jordan
66a3047fa8
Merge pull request #723 from emilazy/rationalize-nixpkgs-handling
Rationalize handling of Nixpkgs
2023-07-09 12:34:19 +02:00
Michael Hoang
d9e825f121 linux-builder: fix evaluation errors
- `modules` cannot be a nested list
- `nix.settings.extra-trusted-users` might not be set
2023-07-09 13:55:22 +10:00
Emily
e25eeff158 nixpkgs: rebase module on latest NixOS
This is based on the current NixOS `nixpkgs` module, adjusted for the
nix-darwin context and without adding the options due for deprecation
in NixOS.

This gives us the ability to set the package set modularly through
`nixpkgs.pkgs` and builds up infrastructure for handling user-specified
Nixpkgs instantiations more robustly.

The cross-compilation options are currently not very useful due to
even Darwin->Darwin cross-compilation not being wholly functional
yet, but it looks feasible to build an `aarch64-darwin` system from
`x86_64-darwin` with some patching and it should be possible to make
cross-compilation more widely supported after the Darwin SDK situation
in Nixpkgs improves.

One casualty is the error for setting `nixpkgs.*` options when
overriding the package set. That could be ported over to this new
scheme, but it'd increase divergence with the NixOS module and reduce
cross-compatibility of configurations, so I lean towards adding it
upstream to NixOS if anything. (But if people want to keep it I can add
it back.)
2023-07-08 22:39:19 +01:00
Michael Hoang
d2b01ab455 nix/linux-builder: init 2023-07-08 14:05:37 +10:00
Michael Hoang
d2b70c61bf tailscale: improve MagicDNS setup 2023-06-27 01:38:51 +10:00
Daiderd Jordan
cb37c35e33
fix darwin-option descriptions
Also drops the eval hacks in favour of jq.
2023-06-25 13:03:52 +02:00
Emily
e65131e69c treewide: convert all option docs to Markdown
This process was automated by [my fork of `nix-doc-munge`]; thanks
to @pennae for writing this tool! It automatically checks that the
resulting documentation doesn't change, although my fork loosens
this a little to ignore some irrelevant whitespace and typographical
differences.

As of this commit there is no DocBook remaining in the options
documentation.

You can play along at home if you want to reproduce this commit:

    $ NIX_PATH=nixpkgs=flake:nixpkgs/c1bca7fe84c646cfd4ebf3482c0e6317a0b13f22 \
      nix shell nixpkgs#coreutils \
      -c find . -name '*.nix' \
      -exec nix run github:emilazy/nix-doc-munge/0a7190f600027bf7baf6cb7139e4d69ac2f51062 \
      {} +

[my fork of `nix-doc-munge`]: https://github.com/emilazy/nix-doc-munge
2023-06-24 10:48:55 +01:00
Emily
efe314cdba treewide: manually convert some docs to Markdown
These all use DocBook markup too complex for `nix-doc-munge` to handle,
have syntax that clashes with Markdown, or already contain Markdown
syntax that currently isn't rendering correctly.

Converting DocBook list syntax makes me think that maybe Markdown
isn't so bad after all.
2023-06-24 10:48:55 +01:00
Emily
b97c235e37 treewide: tweak DocBook docs for conversion
These help `nix-munge-doc` automate more of the Markdown conversion
process. See the following nixpkgs commits for explanations of many
of these changes:

* 275a34e0d8
* 694d5b19d3
* f1d39b6d61
* 16102dce2f

I couldn't think of any particularly good way to format the
`system.defaults` breadcrumbs, so I just made them standalone
paragraphs. They weren't rendering correctly in DocBook anyway.
2023-06-24 10:48:55 +01:00
Cathal Mullan
51b8bdfc0e
nix: Add build machines protocol option. 2023-06-10 13:44:37 +01:00
Andrew Marshall
fa97d79567 nix: Fix registry extra attrs not being applied
This was
    mkDefault { } // filterAttrs () x

which is interpreted as
    (mkDefault { }) // (filterAttrs () x)

but the intention is
    mkDefault ({ } // filterAttrs () x)

Resulting in lastModified, rev, etc. not being included. This is
essentially just bringing this clause up-to-date with the one from
NixOS.
2023-05-04 23:53:14 -04:00
Andrew Childs
d0121790d4 nix: fix mandatoryFeatures in nix.buildMachines
Copied directly from https://github.com/NixOS/nixpkgs/pull/193404
2022-10-03 12:33:21 +09:00
Malo Bourgon
5fa362c32f Transition to using native floats 2022-08-29 15:39:16 -07:00
Domen Kožar
5af1aa51f6
Merge pull request #490 from malob/update-nix-module
Bring `nix` module back in sync with the NixOS module (as much as possible)
2022-08-22 09:55:24 +02:00
Malo Bourgon
796a72f0fe Update changelog 2022-08-16 17:41:13 -07:00
Malo Bourgon
ffc8ec5c9a Add .nix-defexpr to NIX_PATH the way the NixOS module does 2022-08-16 17:41:08 -07:00
Yonathan Randolph
2120245fc2 Fix #387 nix-rebuild --flake without XCode tools
Add nixpkgs git to PATH before /usr/bin/git so that when nix flake metadata invokes git, it does not invoke the XCode one.
2022-08-16 13:55:13 -07:00
Malo Bourgon
08edc0e19a Update/adapt daemon CPU/IO priority options in nix module
Stop using `nice` related options like NixOS, and because `launchd`
recommends using `ProcessType` instead. Note this commit also changes
the default `ProcessType` for the `nix-daemon` from `Interactive` to
`Standard`.
2022-08-16 10:41:51 -07:00
Malo Bourgon
7e74c1c9fb Move build user options to nix module to improve overlap with NixOS
Also add `config.ids` like in NixOS.
2022-08-16 10:41:51 -07:00
Malo Bourgon
f88286eda0 Update nix.registry definition to match NixOS module 2022-08-16 10:41:51 -07:00
Malo Bourgon
7648c9befc Refactor nix.nixPath to make diff easier to compare with NixOS module 2022-08-16 10:41:51 -07:00
Malo Bourgon
c3bdd6d95f Update nix.buildMachines def and implementation to match NixOS module 2022-08-16 10:41:51 -07:00
Malo Bourgon
39cf1e6fbe Minor tweaks to nix module options defs 2022-08-16 10:41:51 -07:00
Malo Bourgon
d44b8be38c Reorder nix module implementation to better match order of NixOS module 2022-08-16 10:41:51 -07:00
Malo Bourgon
5786c079f8 Make nix.settings docs specific to (nix-)darwin where applicable 2022-08-16 10:41:51 -07:00