Valentin Gagarin
034b6485c6
update keywords and language
...
most importantly Nixpkgs was missing.
the documentation team decided to use European English some time ago.
2023-05-12 07:25:46 +02:00
Valentin Gagarin
e47b082d22
turn anti-patterns into best practices
...
make generous use of admonitions
2023-05-12 05:49:48 +02:00
Valentin Gagarin
c6cbc22211
FAQ: should I enable flakes
2023-05-12 04:07:58 +02:00
Valentin Gagarin
744eeafbda
assign copyright to NixOS Foundation
...
based on Nix documentation team discussion on 2022-07-07
https://discourse.nixos.org/t/2022-07-07-documentation-team-meeting-notes-4/20198
"the author" are now nix.dev contributors, as this is the most accurate
way we can currently represent it. eventually we should provide a way to
credit authorship more precisely.
2023-05-11 20:48:39 +02:00
Valentin Gagarin
ac5b6c2a41
clarify notes on reading files
...
placeholders were referred to before showing the example, this is probably confusing
2023-05-11 18:49:29 +02:00
Valentin Gagarin
2bc7e57227
reword note on default.nix
2023-05-11 18:40:27 +02:00
Valentin Gagarin
964b3cf2e1
update Nix version in tutorial
...
this is the one currently in nixpkgs-unstable
2023-05-11 18:39:50 +02:00
Zach Mitchell
4ed3b9ceb8
Remove nesting, add tutorial series description
2023-05-09 22:36:30 -06:00
Zach Mitchell
b573def109
Set the structure of the tutorials section
2023-05-07 09:08:04 -06:00
Zach Mitchell
f127d9da6b
Add link to linkcheck ignore list
2023-05-06 12:56:18 -06:00
Zach Mitchell
8313ca8824
Fix link to renamed anchor
2023-05-06 12:39:39 -06:00
Lorenzo Manacorda
8834f94a67
integrate feedback and fix some issues
2023-04-29 21:50:42 +02:00
asymmetric
d9e8b3bbfe
Update source/contributing/how-to-get-help.md
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-04-29 19:43:30 +00:00
Lorenzo Manacorda
822aa7e49b
re-add to TOC
2023-04-17 12:12:45 +02:00
Lorenzo Manacorda
7e1880195f
incorporate feedback
2023-04-17 12:10:59 +02:00
asymmetric
40a1354419
Update source/contributing/how-to-get-help.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2023-04-17 12:10:59 +02:00
Lorenzo Manacorda
b517356b57
add section on how to get help
2023-04-17 12:10:57 +02:00
Zach Mitchell, PhD
f61492b03f
Update reference list order
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-04-14 20:37:16 -04:00
Zach Mitchell
20f2673d70
Add recipes, reference, and contributing sections
2023-04-13 21:50:10 -04:00
LX
fc1cad935a
add details about import
( #506 )
...
Add information about the behaviour of `import` if the given path is a directory.
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2023-04-06 23:44:42 +02:00
Zach Mitchell, PhD
00e8606dd7
Fix typos in ad-hoc-developer-environments.md
2023-04-05 22:08:09 -04:00
Valentin Gagarin
89d5f8aa37
Merge pull request #491 from Hamled/patch-1
...
NIX_PATH includes nixpkgs in cross-compilation.md
2023-04-05 01:26:26 +02:00
Valentin Gagarin
e5738519fc
Merge pull request #449 from fricklerhandwerk/pinning-fixups
...
fixups to pinning overview
2023-04-04 10:35:44 +02:00
Valentin Gagarin
d433507a62
clarify local expression path
2023-04-04 10:29:59 +02:00
Niklas Mohrin
ac72c7256b
Add missing trailing newline in multi-line string example
2023-03-30 22:35:40 +02:00
Valentin Gagarin
07de7ee501
remove redundant terms from glossary
...
we should always link to authoritative definitions of terms when they
exist, instead of doing double book keeping here.
"attribute name" should be uniquely defined in the Nix reference manual.
"package name" should be uniquely defined in the Nixpkgs manual.
2023-03-30 09:58:16 +02:00
Yuki Langley
25247077f4
Merge branch 'master' into information-overload
2023-03-29 14:20:53 +07:00
Charles Ellis
2067612bb3
NIX_PATH includes nixpkgs in cross-compilation.md
2023-03-23 17:47:45 -07:00
wzy
2da2d37082
Add information about installing nix by pacman ( #399 )
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-03-21 11:24:30 +01:00
Valentin Gagarin
77b5531a9a
rework nix-shell tutorial ( #447 )
...
this addresses multiple issues observed in user studies, in order to
make the first steps as smooth as possible.
2023-03-20 21:01:08 +01:00
Valentin Gagarin
be5a4c180a
Merge pull request #472 from NixOS/shebang
...
reword introduction to shebangs
2023-03-17 02:25:36 +01:00
Valentin Gagarin
959af485f9
make section title unambiguous
...
otherwise it may sound like we're talking about how-to guides here
2023-03-17 01:55:51 +01:00
Valentin Gagarin
076328e189
reword introduction to shebangs
...
a shebang is not the line, just the character sequence.
also it doesn't matter that much, so we may as well be brief.
2023-03-17 01:14:03 +01:00
Valentin Gagarin
2db9980664
fix heading level
2023-03-17 01:09:44 +01:00
Valentin Gagarin
1209c11eb0
fix wording
2023-03-17 01:07:35 +01:00
Valentin Gagarin
68ca23955d
ignore lesswrong.com on linkcheck
...
their server returns 403 on CI runs even for valid URLs
2023-03-17 00:59:46 +01:00
Valentin Gagarin
22c0bf8523
add a guide on writing tutorials
...
including references to valuable resources, the authors of which know
much better what they're doing.
2023-03-17 00:59:43 +01:00
olaf
442577eb25
tutorial: nixos configurations on vm ( #334 )
...
* tutorial: nixos configurations on vm
Co-authored-by: Benoit de Chezelles <bew@users.noreply.github.com>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-authored-by: Henrik <i97henka@gmail.com>
2023-03-16 18:37:04 +01:00
Valentin Gagarin
18bae0f41c
Merge pull request #446 from fricklerhandwerk/interpreted-scripts-next-steps
...
add additional links and next steps
2023-03-13 09:57:55 +01:00
Valentin Gagarin
a9f1378349
use OpenGroup's spec for env
2023-03-08 22:19:46 +01:00
Valentin Gagarin
c21145daa3
fix wording
2023-03-06 23:04:51 +01:00
Valentin Gagarin
0a5fa83a28
introduce the documentation team
...
since many people arrive here without prior knowledge,
there is no way for them to associate this resource with the official team.
2023-03-06 23:04:01 +01:00
Panashe Fundira
f16fd5854c
Quote URLs in nix language tutorial
...
Called out as an anti-pattern https://nix.dev/anti-patterns/language#unquoted-urls
This change is to make the docs more self-consistent, and promote good habits in the reader.
2023-03-05 08:51:35 -05:00
Valentin Gagarin
35833bd9fe
limit depth of tutorials TOC
2023-03-05 02:53:27 +01:00
Domen Kožar
36d3bf7bd7
bump actions to fix a critical bug
2023-03-01 06:03:02 +00:00
Pol Dellaiera
2de1f5bd12
Update nix-language.md ( #453 )
2023-02-25 00:49:34 +01:00
Valentin Gagarin
724cc43ae1
fix broken link
2023-02-20 15:33:29 +01:00
Henrik Karlsson
cc76b7d0cb
removing snabb hydra cache
...
This hydra cache no longer exists.
2023-02-20 08:40:55 +00:00
Henrik
fda85e22d0
working on #PR 325 - nix shell and shellbang ( #427 )
...
* changing to non-mobile wiki link
* adding link to nix-shell pure option.
* mentioning shebang just under the heading.
* adding bash in the listed included packages.
* corrected link snippet
* address review comments
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-16 19:23:23 +01:00
Valentin Gagarin
710a10af81
fixups to the Nix language manual ( #448 )
2023-02-16 15:48:22 +01:00
Valentin Gagarin
05d79a4203
fixups to pinning overview
...
remove the NixOS example, as the sample has lots of caveats, such as
having to rebuild NixOS a second time to make it effective.
2023-02-16 06:23:33 +01:00
Valentin Gagarin
a6efa591dc
add additional links and next steps
2023-02-16 02:36:45 +01:00
Solène Rapenne
91eda534ef
add tutorial for nix-shell in shebang ( #325 )
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-14 18:24:11 +01:00
Maksim Horbul
0db5c1e909
fix: type in the code example
2023-02-12 09:50:47 +01:00
Valentin Gagarin
9241b4f1d6
do not duplicate information on references
2023-02-09 19:47:25 +01:00
Valentin Gagarin
afe81027aa
refine wording around string interpolation
2023-02-09 19:47:25 +01:00
Gabriella Gonzalez
51d2fa4e9c
Add credit for integration test example ( #434 )
2023-02-08 01:22:50 +01:00
Valentin Gagarin
069bb6ffb4
bring back IPA pronunciation ( #431 )
2023-02-07 16:46:29 +01:00
Valentin Gagarin
c22b9e139f
remove notes and links to verifying Nix installation
...
Nix releases aren not signed any more:
https://github.com/NixOS/nix/pull/7411
nixos.org does not have the referenced section any more:
https://github.com/NixOS/nixos-homepage/pull/975
2023-02-06 10:30:48 +01:00
Felix Uhl
e57b033647
Rename antiquotation to string interpolation
...
This is in accordance with the official naming, which was
[changed in Release 2.13](https://nixos.org/manual/nix/stable/release-notes/rl-2.13.html ).
2023-01-30 15:27:17 +01:00
Domen Kožar
ea42f78c36
Merge pull request #422 from doubledup/patch-1
...
Make install command in documentation compatible with fish shell
2023-01-24 16:40:41 +00:00
Ottmar Deinhart
d8b911d12f
show how to exit nix repl ( #433 )
2023-01-20 22:21:53 +01:00
Jeremy Kolb
76ef73f079
Clarify that name should be set in builtins.path ( #430 )
...
* Clarify that name should be set in builtins.path
2023-01-18 19:07:43 +01:00
Julian Stecklina
a0dfa01349
Update faq.md
...
Fix NixOS 22.05+ instructions because they refered to `turstedBinaryCaches` which does not exist anymore.
2023-01-18 12:15:33 +01:00
luukasahola
5a0d95fcd2
Fixed a minor function spelling error (Definitely didn't fix this to claim to be a NixOS contributor)
2023-01-10 12:25:19 +02:00
Luc Perkins
af9c9eb3c1
Merge pull request #405 from yukiisbored/styling
...
Improve readibility via styling improvements
2023-01-05 16:43:55 +00:00
David Dunn
be05bdef94
Use a pipe for all install commands
2022-12-28 09:36:27 +04:00
Valentin Gagarin
ee2b3d63a0
Merge pull request #420 from gkelly/update-nixpkgs
...
Update example pinned nixpkgs to a recent one
2022-12-23 10:46:49 +01:00
Yuki Langley
d8ee8efca0
install-nix: Use tabs to choose OS
2022-12-18 21:58:05 +01:00
Yuki Langley
5d1fa6c217
Use grid instead of table
2022-12-18 21:58:01 +01:00
Yuki Langley
505a96774c
Use dropdown instead of details
2022-12-18 21:53:52 +01:00
Yuki Langley
3937aef0c6
Add sphinx-design extension
2022-12-18 21:29:44 +01:00
Yuki Langley
7af51a0055
Revert "Make details visually consistent"
...
This reverts commit 86d03051cc
.
2022-12-18 21:23:56 +01:00
Yuki Langley
4b1303ccae
Make details summary more consistent
2022-12-18 21:18:28 +01:00
Yuki Langley
f9553d0c76
Make opened details padding consistent
2022-12-18 21:18:28 +01:00
Yuki Langley
a230e3d523
Handle admonition classes inside details
2022-12-18 21:18:28 +01:00
Yuki Langley
2c2f2c7427
Apply padding to all elements under details
2022-12-18 21:18:28 +01:00
Yuki Langley
79ca846ada
Use Value instead of Result
...
Nix language tutorial asserts that it is called *Nix value* not *Nix
result*.
2022-12-18 21:18:28 +01:00
Yuki Langley
86d03051cc
Make details visually consistent
2022-12-18 21:18:28 +01:00
Yuki Langley
742f525741
Distinguish visually between expression and result
...
Related to https://github.com/NixOS/nix.dev/pull/395
2022-12-18 21:18:28 +01:00
David Dunn
4965408021
Add fish shell syntax for process substitution
2022-12-17 13:11:48 +02:00
Hans Christian v. Stockhausen
e583297654
Fix minor error with import-builtin example ( #421 )
2022-12-16 18:45:35 +01:00
Yuki Langley
f0239b6a91
Unify information on contributing documentation ( #384 )
...
* Unify information on contributing documentation to make it visible on nix.dev itself
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-16 08:32:48 +01:00
Garret Kelly
3264e91e74
Update example pinned nixpkgs to a recent one
...
The pinned nixpkgs in these examples does not work with more recent
versions of nix.
Fixes #419
2022-12-14 11:27:22 -05:00
Valentin Gagarin
aeaf6a3cd9
Merge pull request #415 from mmolhoek/fix/document-pi-4-display-problem
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-13 12:24:30 +01:00
Mischa Molhoek
8290fb7c8f
Comment about display problems and fix with older kernel
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-13 12:23:21 +01:00
Mischa Molhoek
26a7673f73
You have to run nixos-rebuild switch as well ( #416 )
2022-12-10 19:15:55 +01:00
Yuki Langley
3f95a892ff
Rewrite "Set up development environment" ( #376 )
...
* Rewrite "Set up development environment"
The previous version is specific to Python as it uses
`buildPythonApplication` instead of `mkShell`.
This one is more general but maintains the same Python Flask web
application example.
* Update pinning-nixpkgs to use 22.11
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-10 04:33:06 +01:00
Yuki Langley
8522325436
Add information on contributing documentation ( #371 )
...
* Add information on contributing documentation
* Refer to quick start on adding new packages
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-10 04:24:06 +01:00
Yuki Langley
e9601db8c4
Only show top-level categories on front-page
2022-12-09 14:51:38 +01:00
Yuki Langley
6df9bfc5e0
Update source/tutorials/index.md
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-09 14:46:01 +01:00
Yuki Langley
d58f1503da
Remove information overload from toctrees
2022-12-08 20:45:53 +01:00
Yuki Langley
428416093c
Mention WSL 2 systemd support ( #406 )
2022-12-04 09:16:32 +01:00
Henrik
fa6aebeea6
Correction in calling functions section ( #402 )
...
* correction in calling functions section
List elements separated by white space
examples were not generating correctly.
2022-11-26 01:24:13 +01:00
Jörg Thalheim
858bf0eae3
nix-language: attempt to simplify concept overview ( #397 )
...
In the current text its not even for me clear what it is referring to. This rewrite tries to give more examples for each concept of the language.
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-11-24 10:05:32 +01:00
Valentin Gagarin
6ae488e715
Merge pull request #388 from fricklerhandwerk/nix-language-introduction
...
rework parentheses example
2022-11-18 17:16:39 +01:00
Valentin Gagarin
ec14804aee
Merge pull request #387 from fricklerhandwerk/nix-language-examples
...
refine worked examples
2022-11-18 17:15:50 +01:00
Valentin Gagarin
dd8e3f6aa3
Merge pull request #386 from fricklerhandwerk/nix-language-tutorial
...
Nix language tutorial: add explanation on how `pkgs.lib` is obtained
2022-11-18 17:15:15 +01:00
Valentin Gagarin
8efe974f67
Merge pull request #392 from fricklerhandwerk/nix-language-derivation
2022-11-12 12:09:49 +01:00
Valentin Gagarin
a2f10f337f
fix wording on derivations
...
most importantly, derivations are not a special data type, but only
a certain kind of attribute set with two magic attributes.
we don't go into the details of the magic here, because it's really hard
to explain concisely. it would only distract from the surface feature
we care about here: composition through store paths.
2022-11-11 10:40:33 +01:00
Valentin Gagarin
ad19f50231
fix typos, grammar, indentation
2022-11-09 11:14:04 +01:00
Valentin Gagarin
ecf756298f
Update source/tutorials/nix-language.md
2022-11-08 20:40:39 +01:00
Yuki Langley
ac06c07360
Make code blocks consistent
...
Illustration of shell sessions or terminals should use shell-session.
Entire expressions should be encapsulated in code blocks, not inline code.
2022-11-08 17:37:41 +01:00
Valentin Gagarin
ade558c532
rework parentheses example
...
it was reported that the list example was confusing and lacked
explanation.
moved the example to function application, and reduced the syntax notes
to "notes on whitespace". moved the emphasis on the goals of this
tutorial to its proper place in the introduction.
it's good to leave the whitespace notes in the introductory part,
because they are unspecific and clearly belong to the "don't worry, it
may look weird, but that doesn't matter" part.
2022-11-08 14:28:01 +01:00
Valentin Gagarin
9b63c68d5c
refine worked examples
...
it was reported that the NixOS configuration is confusing, because
information is lacking to understand what it does.
added another note reminding of this tutorial's objective.
added section headings to give hints where to look next.
2022-11-08 13:35:51 +01:00
Valentin Gagarin
3b775207a5
clarify how library functions are implemented
2022-11-08 13:16:53 +01:00
Valentin Gagarin
4a18a5ffdc
add explanation on how pkgs.lib
is obtained
2022-11-08 12:38:20 +01:00
Yuki Langley
a4a6ce812b
Rewrite GitHub anchor links to user-content-
...
Due to an Sphinx issue[1], linkcheck fails on GitHub anchors for
GitHub rendered documents.
This change rewrites the anchors to the ones that can be verified by
linkcheck.
[1]: https://github.com/sphinx-doc/sphinx/issues/9016
2022-11-03 17:36:40 +01:00
Yuki Langley
9b01513c45
Fold terminology section to glossary document
...
Resolves https://github.com/NixOS/nix.dev/issues/377
2022-10-28 19:47:15 +02:00
Valentin Gagarin
6b6dac8a6b
Merge pull request #343 from jherland/nix-language-readthrough
...
Nix language tutorial: fix typos, add notes
2022-10-27 10:06:15 +02:00
Niklas Hambüchen
5d4cadace9
integration testing: Fix attribute name for interactive testing
...
According to
70ec3b9f54/nixos/doc/manual/development/running-nixos-tests-interactively.section.md (running-tests-interactively-sec-running-nixos-tests-interactively)
`driverInteractive` is needed, and just `driver` indeed just runs through
without giving me an interactive shell.
2022-10-25 13:54:53 +02:00
Yuki Langley
3effde4b66
Use possesive not contraction
2022-10-22 17:35:41 +02:00
Yuki Langley
34455a9d5b
Add filtered list of issues for each concern
2022-10-22 17:34:06 +02:00
Nejc Zupan
5ab8d5a77f
Fix leftovers from .rst -> .md migration
...
Sphinx doesn't care about filetype suffixes so we didn't see any errors.
But it's still nice to do this bit of gardening, I suppose?
2022-10-22 17:21:04 +02:00
Yuki Langley
4f33a6d07c
Move contributing from tutorials to top-level
2022-10-22 15:13:27 +02:00
Johan Herland
7017fdbb00
Warn about combining paths and antiquotation too early in the tutorial
...
This is the point in the tutorial where I started playing around with
paths and antiquotation in a `nix repl` session and got seriously
confused for a few minutes...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-10-19 12:01:09 +02:00
Johan Herland
17b1bd8c2e
Add a sentence on what happens to antiquoted dirs (vs. files)
2022-10-19 12:00:42 +02:00
Johan Herland
eb0615c397
Clarify explanation under the NixOS config example
...
Split one long point into two to make things clearer.
Also explain what happens to the `./hardware-configuration.nix` when evaluated.
2022-10-19 12:00:42 +02:00
Johan Herland
07098339b2
Minor clarifying reword
...
Without this, it almost sounds like you can bind a function to any other value.
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-10-19 12:00:42 +02:00
Valentin Gagarin
2dbfa6dda5
add 'customizing packages' to recommended reading
2022-10-18 18:26:06 +02:00
Valentin Gagarin
fbf2bbbfc7
reorganize recommended reading
2022-10-18 18:25:57 +02:00
Johan Herland
4b9563eb5d
Fix typo
2022-10-17 13:33:14 +02:00
Valentin Gagarin
8cf6831eab
Merge pull request #342 from lafrenierejm/fix-typo
2022-10-17 07:51:47 +02:00
Joseph M LaFreniere
933096363c
Fix typo "lanuage" to "language"
2022-10-16 20:13:03 -05:00
Domen Kožar
e269b465e7
github actions: bump versions
2022-10-12 14:23:52 +01:00
Valentin Gagarin
befd5ef784
Merge pull request #324 from GuillaumeDesforges/patch-1
...
Add section "Videos" to `recommended-reading.md`
2022-10-08 00:55:15 +02:00
Yann Hamdaoui
7bd6c145bc
Fix typo in Nix language tutorial
...
Fix the evaluation result of an example which missed enclosing brackets.
2022-10-04 17:04:51 +02:00
Valentin Gagarin
a68cf03133
rework section on purity, move antiquotation up
2022-10-04 08:34:34 +02:00
Valentin Gagarin
0bfd4b1bb2
add introductory notes on syntax
2022-10-04 08:34:34 +02:00
Valentin Gagarin
abb1808c31
guide -> tutorial
2022-10-04 08:34:34 +02:00
Valentin Gagarin
df7024c253
a Linux distribution
2022-10-04 08:34:34 +02:00
Valentin Gagarin
39cfb88480
show inherit inside let
2022-10-04 08:34:34 +02:00
Valentin Gagarin
e711230b39
attribute sets are actually ordered
2022-10-04 08:34:34 +02:00
Valentin Gagarin
b8e80af94a
a derivation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
014e0e507b
remove too detailed details
2022-10-04 08:34:33 +02:00
Valentin Gagarin
a2fe15959e
rework import
and side effects
...
based on detailed review by @infinisil
2022-10-04 08:34:33 +02:00
Valentin Gagarin
cf9c8c1919
improve wording on attribute set arguments
2022-10-04 08:34:33 +02:00
Valentin Gagarin
46f1c25277
more clarifications on curried functions
2022-10-04 08:34:33 +02:00
Valentin Gagarin
961bb2766a
be more precise what we cover here
...
most importantly, the "elements of programming" approach is understood
in a broader sence. we don't really deal with operators and just subsume
them under functions.
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e64b2059e0
flarify role of NixOS
2022-10-04 08:34:33 +02:00
Valentin Gagarin
23c8c80481
note the overview is an overview
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e5b77c58fc
make Derivations a topic on its own
...
this pays tribute to its central role in Nix and elegantly removes it
from the part on side effects, whicht it doesn't belong to.
2022-10-04 08:34:33 +02:00
Valentin Gagarin
b3407ec6b6
move indented strings to the end
...
they are the least significant combination of frequency of occurrence
and peculiarity, even if they're really handy.
but remember, the goal is to help people *understand* Nix language code,
not write it effectively.
2022-10-04 08:34:33 +02:00
Valentin Gagarin
90cbe92389
clarify purpose of inherit
2022-10-04 08:34:33 +02:00
Valentin Gagarin
8047c8f16e
restructure functions section
2022-10-04 08:34:33 +02:00
Valentin Gagarin
3e89ed3038
search paths are not reproducible at all
2022-10-04 08:34:33 +02:00
Valentin Gagarin
f478379550
add missing semicolons
2022-10-04 08:34:33 +02:00
Valentin Gagarin
1d86654878
elaborate on current directory
2022-10-04 08:34:33 +02:00
Valentin Gagarin
69b0858367
add emphasis
2022-10-04 08:34:33 +02:00
Valentin Gagarin
1dd5699888
less strict wording
2022-10-04 08:34:33 +02:00
Valentin Gagarin
d2cad3d48e
clarify nested functions with parentheses
2022-10-04 08:34:33 +02:00
Valentin Gagarin
de6128a8f8
chaining arguments -> multiple arguments
...
"chaining arguments" is not well-defined, as [noted] by @matta
[notes]: https://github.com/NixOS/nix.dev/pull/267/files#r968597277
2022-10-04 08:34:33 +02:00
Valentin Gagarin
f66543da01
Nix language -> the Nix language
...
as [pointed out] by @matta
[pointed out]: https://github.com/NixOS/nix.dev/pull/267/files#r968574463
2022-10-04 08:34:33 +02:00
Valentin Gagarin
ff2c457f32
reword; there are also invalid expressions
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e9af30a6ff
shorten time estimate
...
move the section further up, as recommended by @infinisil
2022-10-04 08:34:33 +02:00
Valentin Gagarin
d910383580
capitalize list items
...
according to English style guides such as [1]
[1]: https://www.instructionalsolutions.com/blog/bulleted-list-punctuation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
93706c411e
add notes on strict evaluation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
109ae74e94
Update source/tutorials/nix-language.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
aaea5b42c0
Update source/tutorials/nix-language.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
1fcaaea3b0
Update source/tutorials/nix-language.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
68c33e7ed1
Update source/tutorials/nix-language.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
7474d830a1
Update source/tutorials/nix-language.md
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
90522e865f
expressions are transformed, not simplified
...
@infinisil: This is a bit misleading, the model isn't that expressions get simplified. Instead it's that each expression type has semantics for how it should be turned into a Nix value.
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
14455c1d86
evaluate to Nix value, not just value
...
@infinisil: Introducing the concept of a Nix value fits very well here
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e5260f3d6d
libraries are not just functions
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
55eb91bd9e
stdenv -> stdenv.mkDerivation
...
@infinisil: `stdenv` itself is not a builder
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
5938ad044b
remove "and" from example list
...
@infinisil: The "and" would indicate the end of the list
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
506b35311e
libraries have more things than functions
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
30d76c858b
use less ambiguous grammar for what NixOS is
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
abf0f5e6d3
use consistent grammatical structure in requirements
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
95ce02b793
update Nix manual URLs
2022-10-04 08:34:33 +02:00
Valentin Gagarin
8ac15f8a08
Update source/tutorials/nix-language.md
...
Co-authored-by: Dan Baker <daniel.n.baker@gmail.com>
2022-10-04 08:34:33 +02:00
Valentin Gagarin
78a43fb28f
use consistent terminology
...
sort out derivation, Derivation, `derivation` and store derivation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
adaba6637e
fix wording
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e0ee7d5597
link to installation instructions
2022-10-04 08:34:33 +02:00
Valentin Gagarin
17bf23546a
rework section on side effects
2022-10-04 08:34:33 +02:00
Valentin Gagarin
397a39f9de
mention operators
...
at some point we have to introduce them, even if they are not really
important here.
2022-10-04 08:34:33 +02:00
Valentin Gagarin
8f1dd17106
add proper examples to file system paths
2022-10-04 08:34:33 +02:00
Valentin Gagarin
c36c6ed732
rewordings and links
2022-10-04 08:34:33 +02:00
Valentin Gagarin
8a4d87474b
add detailed explanations to some examples
2022-10-04 08:34:33 +02:00
Valentin Gagarin
cd7e00ba8d
reword time estimate
2022-10-04 08:34:33 +02:00
Valentin Gagarin
bb9e7d7ab3
Nix package manager -> Nix
...
based on https://github.com/NixOS/nix.dev/issues/275#issuecomment-1227572104
2022-10-04 08:34:33 +02:00
Valentin Gagarin
7e18f44302
add introduction and cross-linking
...
this should both help with initial overview and navigation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
5851659340
add detailed explanation to let expression
2022-10-04 08:34:33 +02:00
Valentin Gagarin
4253a0bc7a
nixpkgs/lib
-> pkgs.lib
...
this is probably how most people would encounter it, but since there are
so many equivalent representations, maybe it does not matter outside
a dedicated guide to Nixpkgs
2022-10-04 08:34:33 +02:00
Valentin Gagarin
922e018fd6
nixpkgs
-> Nixpkgs
...
based on https://github.com/NixOS/nix.dev/issues/275#issuecomment-1227572104
2022-10-04 08:34:33 +02:00
Valentin Gagarin
b084005748
fix copypaste error
2022-10-04 08:34:33 +02:00
Valentin Gagarin
aa0bf42491
fix typo in link
2022-10-04 08:34:33 +02:00
Valentin Gagarin
55c4d4feca
attempt at detailed explanation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
dfc6d1c31f
standard -> function
2022-10-04 08:34:33 +02:00
Valentin Gagarin
ab8784c2ad
add links to next steps
2022-10-04 08:34:33 +02:00
Valentin Gagarin
aebc9e91b1
clarifications
2022-10-04 08:34:33 +02:00
Valentin Gagarin
d770b13aef
add links, fixups
2022-10-04 08:34:33 +02:00
Valentin Gagarin
8ee55cbac1
expand on side effects, add next steps
2022-10-04 08:34:33 +02:00
Valentin Gagarin
c9f5ac3f1f
show store paths and fetchers
2022-10-04 08:34:33 +02:00
Valentin Gagarin
3a86358dbf
add TODO for operators
2022-10-04 08:34:33 +02:00
Valentin Gagarin
92f96cab30
more explicit explanation of partial evaluation
2022-10-04 08:34:33 +02:00
Valentin Gagarin
95f98f6a60
more explicit syntax notes
2022-10-04 08:34:33 +02:00
Valentin Gagarin
f791bd4875
nixpkgs is a token
2022-10-04 08:34:33 +02:00
Valentin Gagarin
cf0292e470
restructure introduction, show elements of programming
...
this does not take away information, but presents it in a different
order. put emphasis on that the language does not do all that many
things.
2022-10-04 08:34:33 +02:00
Valentin Gagarin
ee6f1e1c33
generate anchors down to heading level 3
2022-10-04 08:34:33 +02:00
Valentin Gagarin
d33eedadd3
add imports to side effects
2022-10-04 08:34:33 +02:00
Valentin Gagarin
20789513e8
notes on argument structure
2022-10-04 08:34:33 +02:00
Valentin Gagarin
e7807baa57
clarify explanation of nested functions
2022-10-04 08:34:33 +02:00
Valentin Gagarin
9a994092c2
function calls aka function application
2022-10-04 08:34:33 +02:00
Valentin Gagarin
6390aae686
remove superfluous empty line
2022-10-04 08:34:32 +02:00
Valentin Gagarin
bd4118ebb2
move search paths to values section
2022-10-04 08:34:32 +02:00
Valentin Gagarin
9b158e60d1
clarify inheriting from attribute
2022-10-04 08:34:32 +02:00
Valentin Gagarin
6c903a6ccf
clarify requirements of being able to read code
2022-10-04 08:34:32 +02:00
Valentin Gagarin
b0023d2ade
add subsections to modes of running examples
...
reorder to have the REPL first (it's fewer steps)
2022-10-04 08:34:32 +02:00
Valentin Gagarin
155ad688bc
explain how to read examples
2022-10-04 08:34:32 +02:00
Valentin Gagarin
6a4e69eef1
remove paths and strings from top-level outline
2022-10-04 08:34:32 +02:00
Valentin Gagarin
2406c22293
emphasize what this guide is about
2022-10-04 08:34:32 +02:00
Valentin Gagarin
61524d0d34
expressions can be nested
2022-10-04 08:34:32 +02:00
Valentin Gagarin
40ca6fc799
note on difference between antiquotation and shell vars
2022-10-04 08:34:32 +02:00
Valentin Gagarin
b3a42cffdc
expand on strings and antiquotation
...
move section into "names and values": it should be short enough not to
exhaust readers before we get to functions, and would not make much
sense as an afterthought to functions.
2022-10-04 08:34:32 +02:00
Valentin Gagarin
ca37fe15b0
regularize function examples
2022-10-04 08:34:32 +02:00
Valentin Gagarin
43f2895b2c
add counter-example to attribute set argument
2022-10-04 08:34:32 +02:00
Valentin Gagarin
23b52d351e
add subsection heading
2022-10-04 08:34:32 +02:00
Valentin Gagarin
560268d865
add missing colon
2022-10-04 08:34:32 +02:00
Valentin Gagarin
9015962289
make example explicit
2022-10-04 08:34:32 +02:00
Valentin Gagarin
c6a1c90bbf
tighter inherit notation
2022-10-04 08:34:32 +02:00
Valentin Gagarin
db56937ab3
add developer tools to skills outline
2022-10-04 08:34:31 +02:00
Valentin Gagarin
075df5b67b
give language properties more structure
2022-10-04 08:34:31 +02:00
Valentin Gagarin
41250bb231
reorder first sentences
2022-10-04 08:34:31 +02:00
Valentin Gagarin
92e6e2341e
add dynamic typing
2022-10-04 08:34:31 +02:00
Valentin Gagarin
80b0dcb8ae
expand on single function argument
2022-10-04 08:34:31 +02:00
Valentin Gagarin
fa674e3e11
restructure introduction
2022-10-04 08:34:31 +02:00
Valentin Gagarin
e5d41c8425
remove word repetition
2022-10-04 08:34:31 +02:00
Valentin Gagarin
3f3a2a432f
add recommendaton to search paths
2022-10-04 08:34:31 +02:00
Valentin Gagarin
cda602d3fb
restructure examples
2022-10-04 08:34:31 +02:00
Valentin Gagarin
4d65ecf82c
WIP: side effects
2022-10-04 08:34:31 +02:00
Valentin Gagarin
388e658437
break up long sentence
2022-10-04 08:34:31 +02:00
Valentin Gagarin
339320ffa1
restructure headings
...
this will have a nicer display in the table of contents
2022-10-04 08:34:31 +02:00
Valentin Gagarin
0c7c1eb594
everyone calls them side effects
2022-10-04 08:34:31 +02:00
Valentin Gagarin
76561aa33a
add structure to config example
2022-10-04 08:34:31 +02:00
Valentin Gagarin
f5439cdbc4
expand shell example
2022-10-04 08:34:31 +02:00
Valentin Gagarin
67b5187a30
clarify outline
2022-10-04 08:34:31 +02:00
Valentin Gagarin
ca66ac9a6a
guide -> direct
2022-10-04 08:34:31 +02:00
Valentin Gagarin
573586b684
prerequisites: programming languages -> software development
2022-10-04 08:34:31 +02:00
Valentin Gagarin
7f6404c1ae
restructure intro to functions
2022-10-04 08:34:31 +02:00
Valentin Gagarin
ceff1d7713
json example: set -> object
2022-10-04 08:34:31 +02:00
Valentin Gagarin
678d3ce737
restrucutre note on . and .. paths
2022-10-04 08:34:31 +02:00
Valentin Gagarin
c510aeb295
show example passing an attrset
2022-10-04 08:34:31 +02:00
Valentin Gagarin
f3e192e3b8
add note on ./. syntax
2022-10-04 08:34:31 +02:00
Valentin Gagarin
5a638c5ed8
fix grammar and typo
2022-10-04 08:34:31 +02:00
Valentin Gagarin
f1c90cdda5
function call: argument -> operand
2022-10-04 08:34:31 +02:00
Valentin Gagarin
f6ad05bf24
comment out missing links
2022-10-04 08:34:31 +02:00
Valentin Gagarin
4273dc987f
tutorial -> guide
2022-10-04 08:34:31 +02:00
Valentin Gagarin
c0ca352c83
remove trivial builders from libraries
...
they really belong to generic build mechanisms, and we will not cover
them here.
2022-10-04 08:34:31 +02:00