summaryrefslogtreecommitdiff
path: root/3 resources/nix/language/keyword-with.md
diff options
context:
space:
mode:
authorJasper Ras <jras@hostnet.nl>2025-01-08 10:48:09 +0100
committerJasper Ras <jras@hostnet.nl>2025-01-08 10:48:09 +0100
commited0753ad224f0c65133bd7a63180257eecd9f5e3 (patch)
treecc662868574fe17db58be9e0faadd452c84dc59c /3 resources/nix/language/keyword-with.md
parent493be30dc981eaf762a95a1218f96893b1976727 (diff)
vault backup: 2025-01-08 10:48:09
Diffstat (limited to '3 resources/nix/language/keyword-with.md')
-rw-r--r--3 resources/nix/language/keyword-with.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/3 resources/nix/language/keyword-with.md b/3 resources/nix/language/keyword-with.md
new file mode 100644
index 0000000..10763ff
--- /dev/null
+++ b/3 resources/nix/language/keyword-with.md
@@ -0,0 +1,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. \ No newline at end of file