[Nix-dev] Building linux kernle with manual-config.nix

Sergey Mironov grrwlf at gmail.com
Fri Mar 7 09:31:28 CET 2014


Just after sending the previous letter I've discovered that setting
outputs to ["out"] in the manual-config.nix [1] hides the error. Still
I don't know if it works correctly or not.

Regards,
Sergey

[1] - https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/linux/kernel/manual-config.nix#L77


2014-03-07 12:17 GMT+04:00 Sergey Mironov <grrwlf at gmail.com>:
> Hi. I am trying to build my own minimalistic kernel with `buildLinux'
> defined in kernel/manual-config.nix. I've written the wrapper
> expression as follows:
>
> # linuxHandMade.nix
> { stdenv, fetchurl, buildLinux } :
>
> buildLinux rec {
>
>   version = "3.10.28";
>
>   src = fetchurl {
>     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
>     sha256 = "1blzvr3qywi8wxgl28zsn5djwgvw70yh3i6qjh2sz3zk9gnpd6mq";
>   };
>
>   configfile = ./linux-config;
>
>   allowImportFromDerivation = true;
> }
>
> where ./linux-config is the .config I have built manually by unpacking
> kernel sources and doing 'make menuconfig'. Everything was OK until I
> disabled the loadable modules support. The ./linux-config now contains
> "# CONFIG_MODULES is not set" and kernel/manual-config.nix doesn't
> work. The error is quite obscure:
>
> $ nix-build econat.nix -A linuxHandMade  --show-trace
> error: while evaluating `callPackageWith' at
> `/home/grwlf/proj/nixpkgs-econat/lib/customisation.nix:95:35':
> while evaluating `makeOverridable' at
> `/home/grwlf/proj/nixpkgs-econat/lib/customisation.nix:56:24':
> while evaluating an anonymous function at
> `/home/grwlf/proj/nixpkgs-econat/econat/apps/kernel.nix:1:1':
> while evaluating an anonymous function at
> `/home/grwlf/proj/nixpkgs-econat/pkgs/os-specific/linux/kernel/manual-config.nix:13:4':
> while evaluating `mkDerivation' at
> `/home/grwlf/proj/nixpkgs-econat/pkgs/stdenv/generic/default.nix:55:24':
> while evaluating `addPassthru' at
> `/home/grwlf/proj/nixpkgs-econat/lib/customisation.nix:100:22':
> while evaluating an anonymous function at
> `/nix/store/mf69pq5r5948h2q4wj4zfx69rn6zcfk4-nix-1.6.1/share/nix/corepkgs/derivation.nix:4:1':
> value is null while a list was expected
>
> I think I've already entered the purely-tested areas of Nixos but
> still could anybody give me a clue of what may go wrong?
>
> Regards,
> Sergey


More information about the nix-dev mailing list