summaryrefslogtreecommitdiff
path: root/3 resources/nix/language/With.md
diff options
context:
space:
mode:
authorJasper Ras <jras@hostnet.nl>2025-01-13 13:16:06 +0100
committerJasper Ras <jras@hostnet.nl>2025-01-13 13:16:06 +0100
commit9232b8d817d4cd4122947375156fa2fa1e9fba14 (patch)
treee4feb77f2e508f008b78f722e91488bb9a3f3806 /3 resources/nix/language/With.md
parented0753ad224f0c65133bd7a63180257eecd9f5e3 (diff)
vault backup: 2025-01-13 13:16:06
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