1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-11 13:06:01 +01:00
Commit graph

164 commits

Author SHA1 Message Date
oldshensheep
ce8b1eb2c4 Improve the documentation of store path
# Conflicts:
#	doc/manual/source/protocols/store-path.md

(cherry picked from commit 355a923e81)
2025-04-02 15:44:26 +00:00
John Ericson
0c67777396 Expose the nix component in header include paths
For example, instead of doing

    #include "nix/store-config.hh"
    #include "nix/derived-path.hh"

Now do

    #include "nix/store/config.hh"
    #include "nix/store/derived-path.hh"

This was originally planned in the issue, and also recent requested by
Eelco.

Most of the change is purely mechanical. There is just one small
additional issue. See how, in the example above, we took this
opportunity to also turn `<comp>-config.hh` into `<comp>/config.hh`.
Well, there was already a `nix/util/config.{cc,hh}`. Even though there
is not a public configuration header for libutil (which also would be
called `nix/util/config.{cc,hh}`) that's still confusing, To avoid any
such confusion, we renamed that to `nix/util/configuration.{cc,hh}`.

Finally, note that the libflake headers already did this, so we didn't
need to do anything to them. We wouldn't want to mistakenly get
`nix/flake/flake/flake.hh`!

Progress on #7876

(cherry picked from commit cc24766fa6)
2025-04-02 11:37:17 -04:00
John Ericson
cc24766fa6 Expose the nix component in header include paths
For example, instead of doing

    #include "nix/store-config.hh"
    #include "nix/derived-path.hh"

Now do

    #include "nix/store/config.hh"
    #include "nix/store/derived-path.hh"

This was originally planned in the issue, and also recent requested by
Eelco.

Most of the change is purely mechanical. There is just one small
additional issue. See how, in the example above, we took this
opportunity to also turn `<comp>-config.hh` into `<comp>/config.hh`.
Well, there was already a `nix/util/config.{cc,hh}`. Even though there
is not a public configuration header for libutil (which also would be
called `nix/util/config.{cc,hh}`) that's still confusing, To avoid any
such confusion, we renamed that to `nix/util/configuration.{cc,hh}`.

Finally, note that the libflake headers already did this, so we didn't
need to do anything to them. We wouldn't want to mistakenly get
`nix/flake/flake/flake.hh`!

Progress on #7876
2025-04-01 11:40:42 -04:00
John Ericson
15658b259f Separate headers from source files
The short answer for why we need to do this is so we can consistently do
`#include "nix/..."`. Without this change, there are ways to still make
that work, but they are hacky, and they have downsides such as making it
harder to make sure headers from the wrong Nix library (e..g.
`libnixexpr` headers in `libnixutil`) aren't being used.

The C API alraedy used `nix_api_*`, so its headers are *not* put in
subdirectories accordingly.

Progress on #7876

We resisted doing this for a while because it would be annoying to not
have the header source file pairs close by / easy to change file
path/name from one to the other. But I am ameliorating that with
symlinks in the next commit.

(cherry picked from commit f3e1c47f47)
2025-03-31 18:04:04 -04:00
mergify[bot]
b4f13afc1a
Merge pull request #12828 from NixOS/mergify/bp/2.28-maintenance/pr-12624
Improve the documentation of the store path protocol (backport #12624)
2025-03-31 20:23:05 +00:00
mergify[bot]
a0cfbb1a38
Merge pull request #12825 from NixOS/mergify/bp/2.28-maintenance/pr-12618
Fix minor documentation typos (backport #12618)
2025-03-31 20:22:54 +00:00
Dmitry Bogatov
5ab3b9c616 Update doc/manual/source/protocols/store-path.md
Co-authored-by: John Ericson <git@JohnEricson.me>
(cherry picked from commit affd9bbab7)
2025-03-31 18:39:23 +00:00
Dmitry Bogatov
5805f9cb93 Improve the documentation of the store path protocol
1. Fix confusing wording that might imply unnecessary double-hashing.
2. Add references to specifics of base-32 encoding.
3. Fix incorrect description that sha256 hash of `fingerprint` is
   truncated. "Truncated" is actual wording used in Nix theses, but it has
   unusual meaning, that is better conveyed by word "compressed", which is
   used by the reference C++ implementation.
4. Clarify details of base16 encoding.

(cherry picked from commit a0facb2aba)
2025-03-31 18:39:22 +00:00
Farid Zakaria
12825ab972 Fix minor documentation typos
Was reading the store chapter and came across a few small typos
and edits.

(cherry picked from commit 33493b9ead)
2025-03-31 18:37:17 +00:00
John Ericson
3e2f4891c4 Advanced attributes organize
This is supposed to firstly improve the docs as they are, and secondly
hint at how the core conceptual information ought to be moved to the
store derivation section of the manual.

Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
(cherry picked from commit 637aa0944d)
2025-03-31 18:31:12 +00:00
John Ericson
f3e1c47f47 Separate headers from source files
The short answer for why we need to do this is so we can consistently do
`#include "nix/..."`. Without this change, there are ways to still make
that work, but they are hacky, and they have downsides such as making it
harder to make sure headers from the wrong Nix library (e..g.
`libnixexpr` headers in `libnixutil`) aren't being used.

The C API alraedy used `nix_api_*`, so its headers are *not* put in
subdirectories accordingly.

Progress on #7876

We resisted doing this for a while because it would be annoying to not
have the header source file pairs close by / easy to change file
path/name from one to the other. But I am ameliorating that with
symlinks in the next commit.
2025-03-31 12:20:25 -04:00
Cole Helbling
946297c684 Fixup release notes 2025-03-27 12:03:02 -07:00
Eelco Dolstra
10f9b2f1fc Set release date 2025-03-27 19:08:09 +01:00
Eelco Dolstra
9e6c999bdf Add release note 2025-03-27 19:07:06 +01:00
Eelco Dolstra
117d671923 Bump Determinate Nix version 2025-03-24 21:47:26 +01:00
Eelco Dolstra
9c26996e73 Fix release notes (1.0.0 -> 3.0.0) 2025-03-24 21:47:26 +01:00
Eelco Dolstra
dab0ff4f9e Tagging release 2.27.1
-----BEGIN PGP SIGNATURE-----
 
 iQFHBAABCAAxFiEEtUHVUwEnDgvPFcpdgXC0cm1xmN4FAmfheacTHGVkb2xzdHJh
 QGdtYWlsLmNvbQAKCRCBcLRybXGY3kt2B/4tQvs6iDXA12d409ClHbVQjr1d0FLP
 rv8RxZ7Z4+Jaw8r2ra/I+gpr9juI5ULyEJWqfES72hTvbYPjH1Grsrrjak1tx57E
 +STs21oEPojE8LXsFH1oZamGPPIIpyQdxCvTgZs1N6cqUfCRQ3Jx97X6E6SIGJDR
 VqBM4ruSXCY57yT36HqwYydTkxzZHiNP5wwABGfSb7u9pYW5x3r8W7+fQ3udTnCw
 kCRhA5vnfxIQSlxu4j7dJqSCGzOIPnhYB19bXDV4aPhl4sn3pkBCdMZxPBlCWSwx
 it0ngMITf+TeiMpVl2TtvMBOHtlGrbhusbyKcsqzFYULGyGOC9ngTAY3
 =/JzB
 -----END PGP SIGNATURE-----

Merge tag '2.27.1' into detsys-main

Tagging release 2.27.1
2025-03-24 21:28:03 +01:00
Eelco Dolstra
d000f5943a rl-2.27.md: Fix GitHub links
https://discourse.nixos.org/t/nix-2-27-0-released/62003/2?u=edolstra
(cherry picked from commit be5a455a1a)
2025-03-21 19:48:51 +00:00
Eelco Dolstra
be5a455a1a rl-2.27.md: Fix GitHub links
https://discourse.nixos.org/t/nix-2-27-0-released/62003/2?u=edolstra
2025-03-21 20:23:46 +01:00
oldshensheep
355a923e81 Improve the documentation of store path
# Conflicts:
#	doc/manual/source/protocols/store-path.md
2025-03-19 13:45:10 +08:00
John Ericson
f497711aa8
Merge pull request #12624 from KAction/store-path-doc
Improve the documentation of the store path protocol
2025-03-18 12:36:01 -04:00
Jörg Thalheim
af4c587ae3
Merge pull request #12596 from obsidiansystems/adv-attrs-organize
Advanced attributes organize
2025-03-12 23:21:48 +01:00
John Ericson
637aa0944d Advanced attributes organize
This is supposed to firstly improve the docs as they are, and secondly
hint at how the core conceptual information ought to be moved to the
store derivation section of the manual.

Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2025-03-12 17:45:51 -04:00
Graham Christensen
f988d9edbf
Merge pull request #12 from DeterminateSystems/update-upgrade-docs
Update upgrade docs
2025-03-12 13:23:41 +00:00
Luc Perkins
70f08ee91c
Merge pull request #11 from DeterminateSystems/revamp-introduction
Change title in introduction
2025-03-12 13:22:54 +00:00
Dmitry Bogatov
affd9bbab7
Update doc/manual/source/protocols/store-path.md
Co-authored-by: John Ericson <git@JohnEricson.me>
2025-03-11 12:30:21 -04:00
Dmitry Bogatov
a0facb2aba Improve the documentation of the store path protocol
1. Fix confusing wording that might imply unnecessary double-hashing.
2. Add references to specifics of base-32 encoding.
3. Fix incorrect description that sha256 hash of `fingerprint` is
   truncated. "Truncated" is actual wording used in Nix theses, but it has
   unusual meaning, that is better conveyed by word "compressed", which is
   used by the reference C++ implementation.
4. Clarify details of base16 encoding.
2025-03-08 19:00:00 -05:00
Farid Zakaria
33493b9ead Fix minor documentation typos
Was reading the store chapter and came across a few small typos
and edits.
2025-03-07 23:07:03 -08:00
Luc Perkins
b62167a014
Update upgrade docs 2025-03-07 14:53:22 -03:00
Luc Perkins
644f79dfd8
Add installation instructions to intro 2025-03-07 14:18:04 -03:00
Luc Perkins
4f6d3299a4
Change document title 2025-03-06 14:42:58 -03:00
Luc Perkins
fea4ee8c5e
Merge pull request #9 from DeterminateSystems/nix-channel-deprecated
Move nix-channel under deprecated commands
2025-03-06 17:37:54 +00:00
Luc Perkins
aaf1967faa
Remove default Nix expression links 2025-03-05 17:49:23 -03:00
Luc Perkins
0f04d36c73
Remove default Nix expression doc from summary 2025-03-05 17:45:11 -03:00
Luc Perkins
d67db97abb
Remove channels link 2025-03-05 17:41:24 -03:00
Luc Perkins
e2bc5e3774
Remove default Nix expression doc 2025-03-05 17:37:59 -03:00
Luc Perkins
e6a6bcbb73
Move nix-channel under deprecated commands 2025-03-05 17:30:47 -03:00
Luc Perkins
cef7855523
Fix merge conflict 2025-03-05 17:27:03 -03:00
Luc Perkins
4323868244
Remove links to binary doc 2025-03-05 16:55:45 -03:00
Luc Perkins
c451f60cc7
Revamp uninstallation docs 2025-03-05 16:51:55 -03:00
Luc Perkins
6381e06537
Reinstate binary doc 2025-03-05 16:46:46 -03:00
Luc Perkins
ff691e761b
Delete binary installation doc 2025-03-05 16:39:03 -03:00
Luc Perkins
be9fbb04bb
Remove environment variables doc 2025-03-05 16:35:55 -03:00
Luc Perkins
af23843434
Remove macOS sequoia recommandations 2025-03-05 16:31:18 -03:00
Valentin Gagarin
9c3dd34cfe doc: note that function bindings are accessible in default values
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2025-03-04 00:44:46 -05:00
Robert Hensing
8b9d401fe4 manual: Edit
(cherry picked from commit 1e00d14c29)
2025-03-03 22:13:09 +00:00
John Ericson
f278a631b0 Expand manual on derivation outputs
Note, this includes some text adapted from from Eelco's dissertation

(cherry picked from commit 2aa6e0f084)
2025-03-03 22:13:08 +00:00
Robert Hensing
efbd4c1ebb
Merge pull request #12442 from NixOS/store-derivation-options
Expand manual on derivation outputs
2025-03-03 23:11:51 +01:00
Robert Hensing
1e00d14c29 manual: Edit 2025-03-03 19:09:24 +01:00
John Ericson
2aa6e0f084 Expand manual on derivation outputs
Note, this includes some text adapted from from Eelco's dissertation
2025-02-27 02:13:36 -05:00