1
0
Fork 0
mirror of https://github.com/NixOS/nix.dev.git synced 2024-10-18 14:32:43 -04:00
Commit graph

13 commits

Author SHA1 Message Date
Dan Baker c682c68bde
Add first lesson for the new module tutorials. (#982)
* Add first lesson for the new module tutorials, and cut redundant parts from the deep dive


Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2024-05-23 08:39:28 +00:00
Pete Dietl b14ab7bdb7 module system deep dive: minor improvements
Add more error checking to the `map.sh` and `geocode.sh` script

The default zoom of 2 results in the `center` option not showing anything
different. So, we change the default zoom to 10.

We also clear up the fact that using an option type of `nullOr <blah>` does not
set a default value of `null` for you.
2024-05-22 01:00:54 +02:00
Pete Dietl 7a26361be1 add .sh suffix to shell script files
Rename `map` to `map.sh` and `geocode` to `geocode.sh` in hopes that
when downloading, Google Chrome doesn't automatically add a `.txt` extension.
2024-05-22 01:00:54 +02:00
Norman Rauschen 9243f9dc2f Fix typo
`paremeters` -> `parameters`
2024-05-14 22:42:16 +02:00
Norman Rauschen 905cd62a16 Fix typo
`matche` -> `match`
2024-05-14 22:42:16 +02:00
Manuel Thalmann 4b72c64e1b
Fix Typos (#973) 2024-04-29 14:44:03 +00:00
ben-christian 5dc7037af1 refactor: rename test.nix to default.nix for consistency 2024-04-12 17:25:41 +10:00
Mark Sisson 05d8461965
fix: correct typo in module-system tutorial 2024-03-27 22:14:17 -05:00
Valentin Gagarin c9ed694ea8 NixOS tutorials: add next steps 2024-01-31 02:39:45 +01:00
Brian McGillion 2d6276114d
tutorials: Map Module (#820)
* tutorial: Propagate previous geocode changes

Propagate the changes made in a previous code snippet to this code
snippet. Primarily fixing the poorly referenced ``${geocode``.

* tutorial: Fix requestParams for path.nix

Adjust the functionality to reference geocode correctly and
also to make sure of the correct escaping formats.

Signed-off-by: Brian McGillion <bmg.avoin@gmail.com>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-12-01 23:51:34 +01:00
Brian McGillion b58466875c
tutorial: Fix the markers to build and concatenate (#816)
The current code has a number of issues.

1. realising the code results in:

``
markers=$(geocode 'New York') size=640x640 scale=2 zoom=7 ...
        ^-------------------^ SC2046 (warning): Quote this to prevent
        word splitting.
``

2.
``
$(geocode ${lib.escapeShellArg marker.location})"
``

Assumes that geocode has been added to the PATH so replace with

``
${config.scripts.geocode}/bin/geocode
``

as per previous examples.

3.
``
  in "markers=${ lib.concatStringsSep "\\|" attributes}";
in builtins.map paramForMarker config.map.markers;
``

The ordering of this actually creates multiple ``[markers =]``
parameters and does not use the concatenation string to join the
attributes together (in effect there is only 1 attribute per call) to
map, and 1 new ``marker`` created.

Signed-off-by: Brian McGillion <bmg.avoin@gmail.com>
2023-11-28 21:30:28 +01:00
Brian McGillion 327c100954
tutorials: fix passing paramaters to geocode (#812)
* tutorials: fix passing paramaters to geocode

When running the package as-is the following error occurs

``geocode: line 7: $1: unbound``

This is caused because ``scripts.geocode`` does not pass the parameters
down to the wrapped script ``geocode``.

Signed-off-by: Brian McGillion <bmg.avoin@gmail.com>
2023-11-27 07:42:07 +01:00
Silvan Mosberger 37922482b7
Module system deep dive tutorial (#645)
* Draft module system introduction tutorial

* add intro/conclusion, rework prose, follow styleguide, clean diffs

* Review pass

* Apply suggestions from code review

* fix whitespace

* add some more motivation the each section

* make scripts downloadable

* address review comments

* make script actually work

...hopefully. can't test it without Google API key

* add file watching

yes, this looks scary, and yes, it works.

* update diff and wording

* more notes on potential pitfalls

* be explicit which `map` we mean

* split nullable from default values

* also wrap the geocode script

* work through the tutorial to the end

* add tutorial overview

* `lib` is always passed

* add separate section for `evalModules` and fix link

* make option strucutre more self-explanatory

* explain command line invocations

* add note on incomplete reference documentation

* add more highlight to the `config` distinction

* fix parameter passing to the `./map` script

* fix typo

* fix wording

* link to summer of nix

* add missing word

* link to Google Maps API docs

* more explicit requirement

* use correct module system terminology

* Update source/tutorials/module-system/module-system.md

* Apply suggestions from code review

* whitespace

* module-system.md: replace comments with captions

* add missing lang for code-block

* Update module system title

* change most headers to be about module features (#797)

* change most headers to be about module features

Some headers could not be made about module features, and that's a
strong signal that those sections should be removed.

* Apply suggestions from code review

* module-system.md: Fix header casing

Co-authored-by: Alexander Groleau <source@proof.construction>
Co-authored-by: asymmetric <lorenzo@mailbox.org>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-11-20 17:21:06 +01:00