From 25c5c3b8ae52768a421af75d83ea806bb2626355 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 13 Dec 2012 23:46:55 +0100 Subject: dnyarri: Add kernel configuration as an attrset. So, now we have lots of duplication which needs to be merged as soon as possible. This commit is obviously quite similar to the previous commit: 7e62e31f9f2bba0864ee8dd05b490c17387f5322 Signed-off-by: aszlig --- machines/dnyarri.nix | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'machines/dnyarri.nix') diff --git a/machines/dnyarri.nix b/machines/dnyarri.nix index d2cfaf73..3a3801a2 100644 --- a/machines/dnyarri.nix +++ b/machines/dnyarri.nix @@ -44,11 +44,18 @@ with pkgs.lib; configfile = pkgs.substituteAll { name = "aszlig-with-firmware.kconf"; - src = pkgs.fetchurl { - name = "aszlig.kconf"; - url = "file:///home/aszlig/linux/.config"; - md5 = "318762752f2831d26a315d040437f42a"; - }; + # XXX: in mmrnmhrm.nix as well, factor out! + src = let + isNumber = c: elem c ["0" "1" "2" "3" "4" "5" "6" "7" "8" "9"]; + mkValue = val: + if val == "" then "\"\"" + else if val == "y" || val == "m" || val == "n" then val + else if all isNumber (stringToCharacters val) then val + else if substring 0 2 val == "0x" then val + else "\"${val}\""; + mkConfigLine = key: val: "${key}=${mkValue val}"; + mkConf = cfg: concatStringsSep "\n" (mapAttrsToList mkConfigLine cfg); + in pkgs.writeText "aszlig.kconf" (mkConf (import ./dnyarri-kconf.nix)); builtin_firmware = pkgs.stdenv.mkDerivation { name = "builtin-firmware"; -- cgit 1.4.1