forked from LnL7/nix-darwin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
202 lines (143 loc) · 7.04 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
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.
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-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-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
- Added `homebrew` module, to manage formulas installed by Homebrew via `brew bundle`.
2020-10-25
- The option environment.variables.SHELL is no longer set automatically when,
eg. programs.zsh.enable is configured.
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
- 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
- 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-23
- The users module now supports declarative per-user packages similar to nixos.
eg.
users.users.<name>.packages = [ pkgs.hello ];
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
- 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-06
- added ssh.knownHosts, to manage global known_hosts.
2018-01-16
- 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-01-13
- added users.users and users.groups to manage user accounts.
Changes will not be applied to existing users or groups.
2018-01-08
- added networking.networkservices, to manage dns servers and searchdomains.
This will clear existing values when enabled.
2018-01-06
- added nixpkgs.overlays, there is a chapter on overlays in the nixpkgs manual
https://nixos.org/nixpkgs/manual/#chap-overlays with more information.
2018-01-04
- the nix.useDaemon/services.nix-daemon.enable options now automatically
reload the daemon for you when nix.conf changes.
2017-11-29
- the security.enableAccessibilityAccess option was removed since it
no longer works on macOS 10.12 and later.
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
- 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
- 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-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
- added support for command-not-found, using nix-index
programs.nix-index.enable = true;
2017-07-23
- darwin entry in the default nix.nixPath was removed for
system.stateVersion > 1
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