summaryrefslogtreecommitdiff
path: root/3 resources/nix/language/With.md
diff options
context:
space:
mode:
Diffstat (limited to '3 resources/nix/language/With.md')
-rw-r--r--3 resources/nix/language/With.md15
1 files changed, 15 insertions, 0 deletions
diff --git a/3 resources/nix/language/With.md b/3 resources/nix/language/With.md
new file mode 100644
index 0000000..b291907
--- /dev/null
+++ b/3 resources/nix/language/With.md
@@ -0,0 +1,15 @@
+#nix #keyword
+
+---
+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. \ No newline at end of file