2024-09-10 15:17:57 +00:00
|
|
|
2024-09-10
|
|
|
|
- The default Nix build user group ID is now set to 350 when
|
|
|
|
`system.stateVersion` ≥ 5, to reflect the default for new Nix
|
|
|
|
installations. This only affects installations that enable
|
|
|
|
`nix.configureBuildUsers`, and any divergence will be detected on
|
|
|
|
system activation. To use `nix.configureBuildUsers` with a higher
|
|
|
|
`system.stateVersion` on installations using the old group ID, set:
|
|
|
|
|
|
|
|
ids.gids.nixbld = 30000;
|
|
|
|
|
|
|
|
We do not recommend trying to change the group ID with macOS user
|
|
|
|
management tools without a complete uninstallation and reinstallation
|
|
|
|
of Nix.
|
|
|
|
|
2023-07-16 15:59:43 +00:00
|
|
|
2024-06-15
|
|
|
|
- SECURITY NOTICE: The previous implementation of the
|
|
|
|
`users.users.<name>.openssh.authorizedKeys.*` options would not delete
|
|
|
|
authorized keys files when the setting for a given user was removed.
|
|
|
|
|
|
|
|
This means that if you previously stopped managing a user's authorized
|
|
|
|
SSH keys with nix-darwin, or intended to revoke their access by
|
|
|
|
removing the option, the previous set of keys could still be used to
|
|
|
|
log in as that user.
|
|
|
|
|
|
|
|
You can check the /etc/ssh/authorized_keys.d directory to see which
|
|
|
|
keys were permitted; afterwards, please remove the directory and
|
|
|
|
re-run activation. The options continue to be supported and will now
|
|
|
|
correctly permit only the keys in your current system configuration.
|
|
|
|
|
2022-08-25 00:53:45 +00:00
|
|
|
2022-08-24
|
|
|
|
- Major changes to `homebrew` module
|
|
|
|
`homebrew.cleanup` was renamed to `homebrew.onActivation.cleanup`.
|
|
|
|
|
|
|
|
`homebrew.autoUpdate` was renamed to `homebrew.onActivation.autoUpdate`.
|
|
|
|
|
|
|
|
`homebrew.onActivation.upgrade` was added, and the default behavior of the
|
|
|
|
module was changed to not upgrade installed formulae and apps.
|
|
|
|
|
|
|
|
`homebrew.global.autoUpdate` was added.
|
|
|
|
|
|
|
|
`homebrew.global.noLock` was replaced with `hombrew.global.lockfiles`.
|
|
|
|
|
|
|
|
`homebrew.caskArgs` submodule was added for configuring arguments to be used
|
|
|
|
for all casks.
|
|
|
|
|
|
|
|
`homebrew.{taps,brews,casks}` were reimplemented as lists of submodules,
|
|
|
|
instead of lists of strings, with well documented options for all available
|
|
|
|
arguments for these Brewfile entry types, while preserving backwards
|
|
|
|
compatibility with the previous implementation.
|
|
|
|
|
2022-08-15 00:52:52 +00:00
|
|
|
2022-08-14
|
|
|
|
- nix module updated to bring it back in sync with it's NixOS counterpart
|
|
|
|
It should now be much more fiesable to share code for this module between
|
|
|
|
`nix-darwin` and NixOS configs.
|
|
|
|
|
|
|
|
`nix-darwin` now requires Nix >= 2.2.
|
|
|
|
|
|
|
|
`nix.package` can no longer be a path to a profile.
|
|
|
|
|
|
|
|
`nix.version` option has been removed. Use `nix.package.version` if you want
|
|
|
|
to reference the version Nix installed/used by your config.
|
|
|
|
|
|
|
|
Many options moved/renamed from `nix.*` to `nix.settings.*`. For example
|
|
|
|
`nix.binaryCaches` is now `nix.settings.substituters`.
|
|
|
|
|
|
|
|
You can use `nix.settings` to set any option in `nix.conf`.
|
|
|
|
|
|
|
|
`users.nix.*` options moved to `nix.*`.
|
|
|
|
|
|
|
|
`nix.daemonIONice` was renamed to `nix.daemonIOLowPriority`, and
|
|
|
|
`nix.daemonNiceLevel` was removed in favor a new option
|
|
|
|
`nix.nix.daemonProcessType`.
|
|
|
|
|
2021-01-16 20:39:01 +00:00
|
|
|
2021-01-16
|
2020-12-18 20:51:31 +00:00
|
|
|
- Added `homebrew` module, to manage formulas installed by Homebrew via `brew bundle`.
|
|
|
|
|
2020-10-25 15:37:13 +00:00
|
|
|
2020-10-25
|
|
|
|
- The option environment.variables.SHELL is no longer set automatically when,
|
|
|
|
eg. programs.zsh.enable is configured.
|
|
|
|
|
2020-09-12 07:46:09 +00:00
|
|
|
2020-09-12
|
|
|
|
- Options using the deprecated loaOf where removed, see https://github.com/NixOS/nixpkgs/pull/96042
|
|
|
|
|
|
|
|
The following options no longer accept lists:
|
|
|
|
environment.etc, environment.launchAgents.*, environment.launchDaemons.*,
|
|
|
|
users.users, programs.ssh.knownHosts
|
|
|
|
|
2019-05-04 14:15:55 +00:00
|
|
|
2019-05-04
|
|
|
|
- A configuration.nix manpage is now included by default, run
|
|
|
|
`man 5 configuration.nix` or `darwin-help`. The documentation option can be
|
|
|
|
disabled to exclude the manual and it's extra build dependencies.
|
|
|
|
|
|
|
|
documentation.enable = false;
|
|
|
|
|
2019-05-01 11:04:16 +00:00
|
|
|
2019-05-01
|
|
|
|
- nix.nixPath entries are now merged by default
|
|
|
|
system.stateVersion > 3
|
|
|
|
|
|
|
|
For the original behaviour, override the option using a higher priority.
|
|
|
|
|
|
|
|
nix.nixPath = lib.mkForce [ "darwin-config=/configuration.nix" ... ];
|
|
|
|
|
|
|
|
This option also supports specifying named NIX_PATH entries using an
|
|
|
|
attribute set now.
|
|
|
|
|
|
|
|
nix.nixPath = [{ darwin = "/src/darwin"; }];
|
|
|
|
|
2019-02-24 21:52:29 +00:00
|
|
|
2019-02-23
|
|
|
|
- The users module now supports declarative per-user packages similar to nixos.
|
|
|
|
eg.
|
|
|
|
|
|
|
|
users.users.<name>.packages = [ pkgs.hello ];
|
|
|
|
|
2019-01-02 20:19:24 +00:00
|
|
|
2019-01-02
|
|
|
|
- The NIX_PATH validation can be disabled now, this is particularly useful if
|
|
|
|
the darwin configuration is deployed from another machine in which case it
|
|
|
|
often doesn't matter that darwin-rebuild won't work on the host itself.
|
|
|
|
|
|
|
|
system.checks.verifyNixPath = false;
|
|
|
|
|
2018-03-29 19:11:37 +00:00
|
|
|
2018-03-29
|
|
|
|
- default nix.package no longer uses the default profile.
|
|
|
|
system.stateVersion > 2
|
|
|
|
|
|
|
|
For the original behaviour configure nix.package
|
|
|
|
|
|
|
|
nix.package = "/nix/var/nix/profiles/default";
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-03-06
|
2018-03-06 20:25:23 +00:00
|
|
|
- added ssh.knownHosts, to manage global known_hosts.
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-01-16
|
2018-01-16 19:41:57 +00:00
|
|
|
- fixed issue for single-user installs, be careful when rolling back to a
|
|
|
|
revision after 9792b08fdf049524742143f4f788e3eb61a769fda.
|
|
|
|
|
|
|
|
If you run into trouble try NIX_REMOTE= darwin-rebuild switch.
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-01-13
|
2018-01-13 22:18:52 +00:00
|
|
|
- added users.users and users.groups to manage user accounts.
|
|
|
|
Changes will not be applied to existing users or groups.
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-01-08
|
2018-01-07 23:29:17 +00:00
|
|
|
- added networking.networkservices, to manage dns servers and searchdomains.
|
|
|
|
This will clear existing values when enabled.
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-01-06
|
2018-01-06 22:33:56 +00:00
|
|
|
- added nixpkgs.overlays, there is a chapter on overlays in the nixpkgs manual
|
|
|
|
https://nixos.org/nixpkgs/manual/#chap-overlays with more information.
|
|
|
|
|
2018-03-29 19:30:42 +00:00
|
|
|
2018-01-04
|
2018-01-03 19:11:34 +00:00
|
|
|
- the nix.useDaemon/services.nix-daemon.enable options now automatically
|
|
|
|
reload the daemon for you when nix.conf changes.
|
|
|
|
|
2017-11-28 23:21:39 +00:00
|
|
|
2017-11-29
|
|
|
|
- the security.enableAccessibilityAccess option was removed since it
|
|
|
|
no longer works on macOS 10.12 and later.
|
|
|
|
|
2017-11-05 23:09:49 +00:00
|
|
|
2017-11-06
|
|
|
|
- the programs.fish module was rewritten based on improvements from
|
|
|
|
NixOS. This might have some incompatible changes compared to the
|
|
|
|
previous implementation.
|
|
|
|
|
2017-10-06 17:57:47 +00:00
|
|
|
2017-10-06
|
|
|
|
- loeOf was removed from nixpkgs in 10881bbe11b2f66ebfa880795e5bc01a04158da4
|
|
|
|
|
|
|
|
Using single items instead of a list no longer works for
|
|
|
|
environment.systemPath and launchd.<serviceType>.<name>.path
|
|
|
|
|
2017-10-01 14:42:39 +00:00
|
|
|
2017-10-01
|
|
|
|
- added system.stateVersion option, add this to your configuration to
|
|
|
|
avoid breaking changes. This changelog and the activation checks
|
|
|
|
will show instructions on what to do to safely increment this value.
|
|
|
|
|
2017-09-06 21:37:34 +00:00
|
|
|
2017-07-06
|
|
|
|
- added user channels to the default nix.nixPath
|
|
|
|
|
|
|
|
Using a user channel now works without any custom configuration.
|
|
|
|
See https://github.com/NixOS/nix/issues/1548 if you are running into
|
|
|
|
issues when updating your channel.
|
|
|
|
|
2017-07-28 21:39:52 +00:00
|
|
|
2017-07-28
|
|
|
|
- added support for command-not-found, using nix-index
|
|
|
|
|
|
|
|
programs.nix-index.enable = true;
|
|
|
|
|
2017-07-23 16:56:37 +00:00
|
|
|
2017-07-23
|
2017-10-01 14:26:13 +00:00
|
|
|
- darwin entry in the default nix.nixPath was removed for
|
|
|
|
system.stateVersion > 1
|
2017-07-23 16:56:37 +00:00
|
|
|
|
|
|
|
Use a channel for nix-darwin or configure nix.nixPath
|
|
|
|
|
|
|
|
sudo nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
|
|
|
|
sudo nix-channel --update
|
|
|
|
|
|
|
|
nix.nixPath =
|
|
|
|
[ "darwin=$HOME/.nix-defexpr/darwin"
|
|
|
|
"darwin-config=$HOME/.nixpkgs/darwin-configuration.nix"
|
|
|
|
"/nix/var/nix/profiles/per-user/root/channels"
|
|
|
|
];
|
|
|
|
|
|
|
|
2017-01-09
|
|
|
|
- nix.profile was renamed to nix.package
|