···446446 if length list < 2
447447 then # finish
448448 { result = list; }
449449- else if dfsthis ? "cycle"
449449+ else if dfsthis ? cycle
450450 then # there's a cycle, starting from the current vertex, return it
451451 { cycle = reverseList ([ dfsthis.cycle ] ++ dfsthis.visited);
452452 inherit (dfsthis) loops; }
453453- else if toporest ? "cycle"
453453+ else if toporest ? cycle
454454 then # there's a cycle somewhere else in the graph, return it
455455 toporest
456456 # Slow, but short. Can be made a bit faster with an explicit stack.
···159159160160 };
161161162162- environment.etc."profile".text =
162162+ environment.etc.profile.text =
163163 ''
164164 # /etc/profile: DO NOT EDIT -- this file has been generated automatically.
165165 # This file is read for login shells.
···184184 fi
185185 '';
186186187187- environment.etc."bashrc".text =
187187+ environment.etc.bashrc.text =
188188 ''
189189 # /etc/bashrc: DO NOT EDIT -- this file has been generated automatically.
190190···212212213213 # Configuration for readline in bash. We use "option default"
214214 # priority to allow user override using both .text and .source.
215215- environment.etc."inputrc".source = mkOptionDefault ./inputrc;
215215+ environment.etc.inputrc.source = mkOptionDefault ./inputrc;
216216217217 users.defaultUserShell = mkDefault pkgs.bashInteractive;
218218
···135135136136 programs.zsh.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
137137138138- environment.etc."zshenv".text =
138138+ environment.etc.zshenv.text =
139139 ''
140140 # /etc/zshenv: DO NOT EDIT -- this file has been generated automatically.
141141 # This file is read for all shells.
···159159 fi
160160 '';
161161162162- environment.etc."zprofile".text =
162162+ environment.etc.zprofile.text =
163163 ''
164164 # /etc/zprofile: DO NOT EDIT -- this file has been generated automatically.
165165 # This file is read for login shells.
···178178 fi
179179 '';
180180181181- environment.etc."zshrc".text =
181181+ environment.etc.zshrc.text =
182182 ''
183183 # /etc/zshrc: DO NOT EDIT -- this file has been generated automatically.
184184 # This file is read for interactive shells.
···219219 fi
220220 '';
221221222222- environment.etc."zinputrc".source = ./zinputrc;
222222+ environment.etc.zinputrc.source = ./zinputrc;
223223224224 environment.systemPackages = [ pkgs.zsh ]
225225 ++ optional cfg.enableCompletion pkgs.nix-zsh-completions;
···476476477477 boot.initrd.luks.devices = mkOption {
478478 default = { };
479479- example = { "luksroot".device = "/dev/disk/by-uuid/430e9eff-d852-4f68-aa3b-2fa3599ebe08"; };
479479+ example = { luksroot.device = "/dev/disk/by-uuid/430e9eff-d852-4f68-aa3b-2fa3599ebe08"; };
480480 description = ''
481481 The encrypted disk that should be opened before the root
482482 filesystem is mounted. Both LVM-over-LUKS and LUKS-over-LVM
···322322 [Service]
323323 ${let env = cfg.globalEnvironment // def.environment;
324324 in concatMapStrings (n:
325325- let s = optionalString (env."${n}" != null)
325325+ let s = optionalString (env.${n} != null)
326326 "Environment=${builtins.toJSON "${n}=${env.${n}}"}\n";
327327 # systemd max line length is now 1MiB
328328 # https://github.com/systemd/systemd/commit/e6dde451a51dc5aaa7f4d98d39b8fe735f73d2af
···490490 systemd.generators = mkOption {
491491 type = types.attrsOf types.path;
492492 default = {};
493493- example = { "systemd-gpt-auto-generator" = "/dev/null"; };
493493+ example = { systemd-gpt-auto-generator = "/dev/null"; };
494494 description = ''
495495 Definition of systemd generators.
496496 For each <literal>NAME = VALUE</literal> pair of the attrSet, a link is generated from
+2-2
nixos/modules/tasks/filesystems.nix
···12121313 fileSystems' = toposort fsBefore (attrValues config.fileSystems);
14141515- fileSystems = if fileSystems' ? "result"
1515+ fileSystems = if fileSystems' ? result
1616 then # use topologically sorted fileSystems everywhere
1717 fileSystems'.result
1818 else # the assertion below will catch this,
···211211 ls = sep: concatMapStringsSep sep (x: x.mountPoint);
212212 notAutoResizable = fs: fs.autoResize && !(hasPrefix "ext" fs.fsType || fs.fsType == "f2fs");
213213 in [
214214- { assertion = ! (fileSystems' ? "cycle");
214214+ { assertion = ! (fileSystems' ? cycle);
215215 message = "The ‘fileSystems’ option can't be topologically sorted: mountpoint dependency path ${ls " -> " fileSystems'.cycle} loops to ${ls ", " fileSystems'.loops}";
216216 }
217217 { assertion = ! (any notAutoResizable fileSystems);
···160160 (mapAttrsToList (k: _: k) do); "";
161161 # get those driverOptions that have been set
162162 filterSystemdOptions = filterAttrs (sysDOpt: kOpts:
163163- any (kOpt: do ? "${kOpt}") kOpts.optNames);
163163+ any (kOpt: do ? ${kOpt}) kOpts.optNames);
164164 # build final set of systemd options to bond values
165165 buildOptionSet = mapAttrs (_: kOpts: with kOpts;
166166 # we simply take the first set kernel bond option
167167 # (one option has multiple names, which is silly)
168168- head (map (optN: valTransform (do."${optN}"))
168168+ head (map (optN: valTransform (do.${optN}))
169169 # only map those that exist
170170- (filter (o: do ? "${o}") optNames)));
170170+ (filter (o: do ? ${o}) optNames)));
171171 in seq assertNoUnknownOption
172172 (buildOptionSet (filterSystemdOptions driverOptionMapping));
173173
+9-9
nixos/modules/tasks/network-interfaces.nix
···799799 networking.wlanInterfaces = mkOption {
800800 default = { };
801801 example = literalExample {
802802- "wlan-station0" = {
802802+ wlan-station0 = {
803803 device = "wlp6s0";
804804 };
805805- "wlan-adhoc0" = {
805805+ wlan-adhoc0 = {
806806 type = "ibss";
807807 device = "wlp6s0";
808808 mac = "02:00:00:00:00:01";
809809 };
810810- "wlan-p2p0" = {
810810+ wlan-p2p0 = {
811811 device = "wlp6s0";
812812 mac = "02:00:00:00:00:02";
813813 };
814814- "wlan-ap0" = {
814814+ wlan-ap0 = {
815815 device = "wlp6s0";
816816 mac = "02:00:00:00:00:03";
817817 };
···994994 domainname "${cfg.domain}"
995995 '';
996996997997- environment.etc."hostid" = mkIf (cfg.hostId != null)
997997+ environment.etc.hostid = mkIf (cfg.hostId != null)
998998 { source = pkgs.runCommand "gen-hostid" { preferLocalBuild = true; } ''
999999 hi="${cfg.hostId}"
10001000 ${if pkgs.stdenv.isBigEndian then ''
···1007100710081008 # static hostname configuration needed for hostnamectl and the
10091009 # org.freedesktop.hostname1 dbus service (both provided by systemd)
10101010- environment.etc."hostname" = mkIf (cfg.hostName != "")
10101010+ environment.etc.hostname = mkIf (cfg.hostName != "")
10111011 {
10121012 text = cfg.hostName + "\n";
10131013 };
···1027102710281028 # The network-interfaces target is kept for backwards compatibility.
10291029 # New modules must NOT use it.
10301030- systemd.targets."network-interfaces" =
10301030+ systemd.targets.network-interfaces =
10311031 { description = "All Network Interfaces (deprecated)";
10321032 wantedBy = [ "network.target" ];
10331033 before = [ "network.target" ];
···11621162 in
11631163 flip (concatMapStringsSep "\n") (attrNames wlanDeviceInterfaces) (device:
11641164 let
11651165- interfaces = wlanListDeviceFirst device wlanDeviceInterfaces."${device}";
11651165+ interfaces = wlanListDeviceFirst device wlanDeviceInterfaces.${device};
11661166 curInterface = elemAt interfaces 0;
11671167 newInterfaces = drop 1 interfaces;
11681168 in ''
11691169 # It is important to have that rule first as overwriting the NAME attribute also prevents the
11701170 # next rules from matching.
11711171- ${flip (concatMapStringsSep "\n") (wlanListDeviceFirst device wlanDeviceInterfaces."${device}") (interface:
11711171+ ${flip (concatMapStringsSep "\n") (wlanListDeviceFirst device wlanDeviceInterfaces.${device}) (interface:
11721172 ''ACTION=="add", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", ENV{INTERFACE}=="${interface._iName}", ${systemdAttrs interface._iName}, RUN+="${newInterfaceScript device interface}"'')}
1173117311741174 # Add the required, new WLAN interfaces to the default WLAN interface with the
+1-1
nixos/modules/virtualisation/brightbox-image.nix
···111111 # Always include cryptsetup so that NixOps can use it.
112112 environment.systemPackages = [ pkgs.cryptsetup ];
113113114114- systemd.services."fetch-ec2-data" =
114114+ systemd.services.fetch-ec2-data =
115115 { description = "Fetch EC2 Data";
116116117117 wantedBy = [ "multi-user.target" "sshd.service" ];
···5151 serviceConfig.PermissionsStartOnly = true;
5252 };
53535454- systemd.services."nextcloud-setup"= {
5454+ systemd.services.nextcloud-setup= {
5555 requires = ["postgresql.service"];
5656 after = [
5757 "postgresql.service"
···6262 # At the time of writing, redis creates its socket with the "nobody"
6363 # group. I figure this is slightly less bad than making the socket world
6464 # readable.
6565- systemd.services."chown-redis-socket" = {
6565+ systemd.services.chown-redis-socket = {
6666 enable = true;
6767 script = ''
6868 until ${pkgs.redis}/bin/redis-cli ping; do