prefer the special syntax approach, based on the arguments that all
other alternatives would defeat the purpose of guaranteeing predictable
results, which this proposal values higher than forward compatibility.
* Initial nixos container commit because I want to view diffs between changes
* Updates / Improvements
* Note regarding static networking
* Updates
* update
* Update.
* Update.
* Update
Thanks Linus for the proof-read :)
* Update.
Mention that nixops container backend is also affected as pointed out by
fpletz.
* fixup! wording, spelling
* Move document according to assigned RFC number
* Linkify related issues
As it's done in https://github.com/NixOS/rfcs/blob/master/rfcs/0004-replace-unicode-quotes.md
* Bind-mounting Nix state isn't strictly needed
It's sufficient to have the store-paths available.
* Wording
Co-authored-by: Kevin Cox <kevincox@kevincox.ca>
* Clarify "default mode", remove a few unnecessary implementation details
* rfc108: add shepherds
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
* Apply wording suggestions from @lheckemann
Co-authored-by: Linus Heckemann <git@sphalerite.org>
* Usage of `nsenter` to update a container's configuration is not relevant for the RFC
* Rename `config` to `system-config` to avoid ambiguities in the module system
* Explicitly talk about deprecation of current implementation
Co-authored-by: Erik Arvstedt <erik.arvstedt@gmail.com>
Co-authored-by: Kevin Cox <kevincox@kevincox.ca>
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
Co-authored-by: Linus Heckemann <git@sphalerite.org>
* Initial draft "ret-cont" recursive Nix
* Fix typos and finish trailing sentance
* Switch to advocating temp store rather than daemon socket
Also:
- Allow fixed output builds (in that temp store)
- Clean up drawbacks and alternatives.
* ret-cont-recursive-nix: Fix typo
Thanks @siddharthist!
Co-Authored-By: Ericson2314 <git@JohnEricson.me>
* ret-cont-recursive-nix: Fix typo
Thanks @Mic92
Co-Authored-By: Ericson2314 <git@JohnEricson.me>
* ret-cont-recursive-nix: Fix typo
Thanks @globin
Co-Authored-By: Ericson2314 <git@JohnEricson.me>
* ret-cont-recursive-nix: Fix typo
Thanks @siddharthist!
Co-Authored-By: Ericson2314 <git@JohnEricson.me>
* ret-cont-recursive-nix: Clean up motivation, adding examples
* ret-cont-recursive-nix: Improve syntax highlighting
* Do a lousy job formalizing the detailed design
Break off some previously inline observations into their own subsection.
* ret-cont-recursive-nix: Mention `builtins.exec` in alternatives
* ret-cont-recursive-nix: Fix typo
Thanks @Mic92!
Co-Authored-By: Ericson2314 <git@JohnEricson.me>
* ret-cont-recursive-nix: Remove dangling "$o"
The later examples with `nix-instantiate` automatically get all the outputs of the final rewritten drv, so there's no output iteration needed. `"$o"` was mistakenly copied over from the earlier examples.
Thanks to @ocharles for asking me the question that led me to this. Hopefully this change answers that?
* Update rfcs/0000-ret-cont-recursive-nix.md
Co-Authored-By: Domen Kožar <domen@enlambda.com>
* ret-cont-recursive: Fix typo
about -> out
* ret-cont: Add examples and expand future work
* ret-cont: Fix syntax error
No `let`, so don't need `in`.
* ret-cont: Mention Ninja's upcomming `dyndep` and C++ oppertunity
* ret-cont: Fix missing explicit `outputs` and `__recursive`
This was in the "wrapper" derivation example.
* ret-cont: "caching builds" -> "caching evaluation"
We already cache builds just fine, thanks!
Thanks @globin for catching
* ret-cont: Improve formalism and reference #62
* drv-build-drv: Start drafting from old ret-cont-recursive-nix RFC
* drv-buiild-drv: WIP rewrite
* plan-dynamism: Rewrite RFC yet again
* plan-dynamism: Rename file accordingly
* plan-dynanism: Fix typo
Thanks @mweinelt.
* plan-dynanism: Fix formalism slightly
* Apply suggestions from code review
Thanks!
Co-authored-by: Rosario Pulella <Rosariopulella@gmail.com>
Co-authored-by: Ninjatrappeur <NinjaTrappeur@users.noreply.github.com>
* plan-dynamism: `Buildables` -> `DerivedPathsWithHints`
Thanks @sternenseemann for catching.
* plan-dynamism: Add semantics and examples for `!` syntax
* plan-dynamism: Too many dashes in `--derivation`
* plan-dynanism: Put pupose of text hashing before name
* Apply suggestions from code review
Co-authored-by: Ollie Charles <ollie@ocharles.org.uk>
* Apply suggestions from code review
Co-authored-by: Ollie Charles <ollie@ocharles.org.uk>
* Apply suggestions from code review
* Update rfcs/0000-plan-dynanism.md
* plan-dynanism: Fix bad sentence
Thanks @roberth!
* plan-dynamism: Number the two parts
* plan-dynamism: Rip out part 2
There is more to do I'm sure, but I wanted to get the ball rolling.
* plan-dynamism: New motivation
* plan-dynamism: Fix typo
Thanks @L-as
* TEMP PLES AMEND
* [RFC 0092] Rename file
* [RFC 0092] Fix YAML header
* [RFC 0092] Rewrite summary
* [RFC 0092] Add link to documentation
* [RFC 0092] Rewrite example section
* [RFC 0092] Small fix
* [RFC 0092] Rewrite drawbacks and alternatives
* [RFC 0092] Improve alternatives section
* [RFC 0092] Fix syntax error
* [RFC 0092] Small change
* [RFC 0092] Remove unnecessary file
* [RFC 0092] Add comment about IFD
* [RFC 0092] Fix typo
* Update rfcs/0092-plan-dynamism.md
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
* plan-dynamism-experiment: Make clear is experimental
* plan-dynamism-experiment: Fix typo
Thanks @L-as
Co-authored-by: Langston Barrett <langston.barrett@gmail.com>
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
Co-authored-by: Robin Gloster <mail@glob.in>
Co-authored-by: Domen Kožar <domen@enlambda.com>
Co-authored-by: Rosario Pulella <Rosariopulella@gmail.com>
Co-authored-by: Ninjatrappeur <NinjaTrappeur@users.noreply.github.com>
Co-authored-by: Ollie Charles <ollie@ocharles.org.uk>
Co-authored-by: Las Safin <me@las.rs>
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
* CAP RFC: First draft
* typo
* Apply @grahamc's suggestions
Co-Authored-By: Graham Christensen <graham@grahamc.com>
* nix code -> Nix expression
* Break-up the big introduction paragraph
As suggested in https://github.com/NixOS/rfcs/pull/62/files#r356694585
* Rename to match the PR number
* Rename the drv attribute to __contentAddressed
Makes it more in line with other "magic" attributes like
`__structuredAttributes`
Also fix the orthograph
* Mention the GC issue
* Remove the ambiguity on what an `output` is
* Replace aliases paths by a pathOf mapping
* Move the example after the design description
* Rephrase the design
In particular, replace `static` and `dynamic` by `symbolic` and
`resolved`
* Add shepherd team
* Rewrite the RFC to account for the RFC meeting comments
- Add the notion of `drvOutputId`
- Replace the alias paths by a `PathOf(drvOutputId)` function
- Mention the notion of "truster" in the `PathOf` function
* Add a section about leaking output paths
* Refine the design summary
* Rename dependency-addressed into input-addressed
And define the term at the begining of the RFC
* minor fixup after comments
* Apply suggestions from code review
Co-authored-by: asymmetric <lorenzo@mailbox.org>
Co-authored-by: Profpatsch <philip.patsch@tweag.io>
* Update rfcs/0062-content-addressed-paths.md
* Update the terminology to match the in the implementation
* Reword the detailed design presentation
* Quote some strings in the yaml frontmatter
* Add a design paragraph about the remote caching
And update the “unresolved questions” to take it into account
* Lift the determinism requirement
It's not required anymore by the current remote caching semantics
* Typo
Co-authored-by: davidak <davidak@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: davidak <davidak@users.noreply.github.com>
* Rewrite the RFC
This is mostly a full-rewrite of the RFC to
1. Make it more “incremental”: A first part just describes the minimal
model upon which everything is based, and a second one shows
different extensions of this model to add more features
2. Remove the big ugly examples that don’t add much value because they
aren’t really readable
3. Add a python pseudo-code pseudo-formalisation of the RFC.
This is imho both more readable and precise than nested bullet-points
of handwaved language
* Make the python samples a bit more pythonic
Co-authored-by: zseri <zseri.devel@ytrizja.de>
* Explicit that unresolved dependencies are eval-time
* Prettify
* Make the end-goal an experiment
Simplify the paperwork and just get this to FCP because right now it’s stuck in a hole
Co-authored-by: Théophane Hufschmitt <regnat@users.noreply.github.com>
Co-authored-by: Graham Christensen <graham@grahamc.com>
Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
Co-authored-by: asymmetric <lorenzo@mailbox.org>
Co-authored-by: Profpatsch <philip.patsch@tweag.io>
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
Co-authored-by: davidak <davidak@users.noreply.github.com>
Co-authored-by: zseri <zseri.devel@ytrizja.de>