Skip to content

Commit

Permalink
Remove zipTwoLists
Browse files Browse the repository at this point in the history
This function is redundant (we also have zipLists).
  • Loading branch information
edolstra committed Jul 28, 2015
1 parent 67b1a20 commit 7c30ce9
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 23 deletions.
14 changes: 0 additions & 14 deletions lib/lists.nix
Original file line number Diff line number Diff line change
Expand Up @@ -209,20 +209,6 @@ rec {
init = list: assert list != []; take (length list - 1) list;


# Zip two lists together.
zipTwoLists = xs: ys:
let
len1 = length xs;
len2 = length ys;
len = if len1 < len2 then len1 else len2;
zipTwoLists' = n:
if n != len then
[ { first = elemAt xs n; second = elemAt ys n; } ]
++ zipTwoLists' (n + 1)
else [];
in zipTwoLists' 0;


deepSeqList = xs: y: if any (x: deepSeq x false) xs then y else y;

crossLists = f: foldl (fs: args: concatMap (f: map f args) fs) [f];
Expand Down
18 changes: 9 additions & 9 deletions nixos/lib/build-vms.nix
Original file line number Diff line number Diff line change
Expand Up @@ -41,22 +41,22 @@ rec {

machines = attrNames nodes;

machinesNumbered = zipTwoLists machines (range 1 254);
machinesNumbered = zipLists machines (range 1 254);

nodes_ = flip map machinesNumbered (m: nameValuePair m.first
nodes_ = flip map machinesNumbered (m: nameValuePair m.fst
[ ( { config, pkgs, nodes, ... }:
let
interfacesNumbered = zipTwoLists config.virtualisation.vlans (range 1 255);
interfaces = flip map interfacesNumbered ({ first, second }:
nameValuePair "eth${toString second}" { ip4 =
[ { address = "192.168.${toString first}.${toString m.second}";
interfacesNumbered = zipLists config.virtualisation.vlans (range 1 255);
interfaces = flip map interfacesNumbered ({ fst, snd }:
nameValuePair "eth${toString snd}" { ip4 =
[ { address = "192.168.${toString fst}.${toString m.snd}";
prefixLength = 24;
} ];
});
in
{ key = "ip-address";
config =
{ networking.hostName = m.first;
{ networking.hostName = m.fst;

networking.interfaces = listToAttrs interfaces;

Expand All @@ -76,11 +76,11 @@ rec {

virtualisation.qemu.options =
flip map interfacesNumbered
({ first, second }: qemuNICFlags second first m.second);
({ fst, snd }: qemuNICFlags snd fst m.snd);
};
}
)
(getAttr m.first nodes)
(getAttr m.fst nodes)
] );

in listToAttrs nodes_;
Expand Down

0 comments on commit 7c30ce9

Please sign in to comment.