Hi,

On 03/04/2011 04:34 PM, Benjamin Franksen wrote:

Eelco Dolstra wrote:
How can I make the pkgs variable visible here?

Add the following line to the top of the file:

    { pkgs, ... }:

Lots of examples of configurations can be found here:
https://svn.nixos.org/repos/nix/configurations/trunk/

Thanks. I looked at these examples and saw such a line but, well... I just
didn't think this could work. I mean, with this addition
/etc/nixos/configuration.nix becomes a function, right? Is there a special
trick that makes nixos interpret the code as either a function or a plain
value?

Yes, there is, which is rather ugly :-) Basically modules are called by doing

  if builtins.isFunction module
  then module { ... args ... }
  else module

But this is really for backwards compatibility. It's best to always write modules as functions.

Please forgive my beginner's confusion, I have some problems groking the nix
language (the only functional languages I know are all statically typed).

Indeed we can get away with this only because we don't have static typing.

--
Eelco Dolstra | http://www.st.ewi.tudelft.nl/~dolstra/
_______________________________________________
nix-dev mailing list
[email protected]
https://mail.cs.uu.nl/mailman/listinfo/nix-dev

Reply via email to