Is it possible to look up values specified by nixConfig
in flake.nix
using nix repl
?
My problem : I’m trying out haskell.nix
from input-output-hk. Following their guide, I did
nix flake init --template templates#haskell-nix --impure
Many files were generated including the following flake.nix
.
{
# This is a template created by `hix init`
inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
inputs.nixpkgs.follows = "haskellNix/nixpkgs-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils, haskellNix }:
let
supportedSystems = [
"x86_64-linux"
"x86_64-darwin"
"aarch64-linux"
"aarch64-darwin"
];
in
flake-utils.lib.eachSystem supportedSystems (system:
let
overlays = [ haskellNix.overlay
(final: prev: {
hixProject =
final.haskell-nix.hix.project {
src = ./.;
evalSystem = "x86_64-linux";
};
})
];
pkgs = import nixpkgs { inherit system overlays; inherit (haskellNix) config; };
flake = pkgs.hixProject.flake {};
in flake // {
legacyPackages = pkgs;
});
# --- Flake Local Nix Configuration ----------------------------
nixConfig = {
# This sets the flake to use the IOG nix cache.
# Nix should ask for permission before using it,
# but remove it here if you do not want it to.
extra-substituters = ["https://cache.iog.io"];
extra-trusted-public-keys = ["hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="];
allow-import-from-derivation = "true";
};
}
So, as the tutorial suggests doing nix flake show
, I entered the command and the following error occurs.
error: cannot build '/nix/store/3a699dmzfdszpl58mbndav59z82m21aa-haskell-project-plan-to-nix-pkgs.drv' during evaluation because the option 'allow-import-from-derivation' is disabled
But as you can see from above flake.nix
, allow-import-from-derivation
is specified in nixConfig
. I wanted to check whether the value is indeed set, but could not find a way to inspect it with nix repl
!
By the way, I know that putting --allow-import-from-derivation
after nix flake show
solves the problem.
I want to learn how to find the root cause!