summaryrefslogtreecommitdiff
path: root/3 resources/nix/language/keyword-with.md
blob: 10763ff40299f110b20ee24c7994e2084f2b31a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
The  `with` keyword brings all attributes from a given set, e.g nixpkgs, into the local scope. Making them accessible as if they were declared in the same file.

An example, bringing everything from nixpkgs into scope:
```
with import <nixpkgs>;
with python310Packages; <-- declared in nixpkgs

buildPythonPackage <-- declared in python310Packages
```

The import statement is required here because imports a nix expression from another source, in this case nixpkgs.
It is not required at line two, because python310Packages itself is already in the local scope.