aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/manual/local.mk4
-rw-r--r--doc/manual/meson.build3
-rw-r--r--doc/manual/rl-next/leading-period.md10
-rw-r--r--doc/manual/rl-next/nix-config-show.md7
-rw-r--r--doc/manual/rl-next/nix-profile-names.md9
-rw-r--r--doc/manual/rl-next/upgrade-nix-override.md6
-rw-r--r--doc/manual/rl-next/upgrade-nix-profile-compat.md8
-rw-r--r--doc/manual/src/SUMMARY.md2
-rw-r--r--doc/manual/src/command-ref/new-cli/nix3-config-show.md1
-rw-r--r--doc/manual/src/command-ref/new-cli/nix3-config.md1
-rw-r--r--doc/manual/src/command-ref/new-cli/nix3-show-config.md1
-rw-r--r--doc/manual/src/command-ref/nix-env.md22
12 files changed, 59 insertions, 15 deletions
diff --git a/doc/manual/local.mk b/doc/manual/local.mk
index 215609f79..50c67b8ae 100644
--- a/doc/manual/local.mk
+++ b/doc/manual/local.mk
@@ -29,7 +29,7 @@ man-pages += $(foreach subcommand, \
clean-files += $(d)/*.1 $(d)/*.5 $(d)/*.8
# Provide a dummy environment for nix, so that it will not access files outside the macOS sandbox.
-# Set cores to 0 because otherwise nix show-config resolves the cores based on the current machine
+# Set cores to 0 because otherwise nix config show resolves the cores based on the current machine
dummy-env = env -i \
HOME=/dummy \
NIX_CONF_DIR=/dummy \
@@ -89,7 +89,7 @@ doc/manual/generated/in/nix.json: $(doc_nix)
doc/manual/generated/in/conf-file.json: $(doc_nix)
@mkdir -p doc/manual/generated/in
- $(trace-gen) $(dummy-env) $(doc_nix) show-config --json --experimental-features nix-command > $@.tmp
+ $(trace-gen) $(dummy-env) $(doc_nix) config show --json --experimental-features nix-command > $@.tmp
@mv $@.tmp $@
doc/manual/generated/in/contributing/experimental-feature-descriptions.md: doc/manual/generated/in/xp-features.json $(d)/utils.nix $(d)/generate-xp-features.nix $(doc_nix)
diff --git a/doc/manual/meson.build b/doc/manual/meson.build
index cfb6be36f..e253a9bd8 100644
--- a/doc/manual/meson.build
+++ b/doc/manual/meson.build
@@ -197,6 +197,8 @@ endforeach
nix3_manpages = [
'nix3-build',
'nix3-bundle',
+ 'nix3-config',
+ 'nix3-config-show',
'nix3-copy',
'nix3-daemon',
'nix3-derivation-add',
@@ -258,7 +260,6 @@ nix3_manpages = [
'nix3-run',
'nix3-search',
'nix3-shell',
- 'nix3-show-config',
'nix3-store-add-file',
'nix3-store-add-path',
'nix3-store-cat',
diff --git a/doc/manual/rl-next/leading-period.md b/doc/manual/rl-next/leading-period.md
new file mode 100644
index 000000000..7a2fd1f67
--- /dev/null
+++ b/doc/manual/rl-next/leading-period.md
@@ -0,0 +1,10 @@
+---
+synopsis: Store paths are allowed to start with `.`
+issues: 912
+prs: [9867, 9091, 9095, 9120, 9121, 9122, 9130, 9219, 9224]
+---
+
+Leading periods were allowed by accident in Nix 2.4. The Nix team has considered this to be a bug, but this behavior has since been relied on by users, leading to unnecessary difficulties.
+From now on, leading periods are officially, definitively supported. The names `.` and `..` are disallowed, as well as those starting with `.-` or `..-`.
+
+Nix versions that denied leading periods are documented [in the issue](https://github.com/NixOS/nix/issues/912#issuecomment-1919583286).
diff --git a/doc/manual/rl-next/nix-config-show.md b/doc/manual/rl-next/nix-config-show.md
new file mode 100644
index 000000000..1e7545e73
--- /dev/null
+++ b/doc/manual/rl-next/nix-config-show.md
@@ -0,0 +1,7 @@
+---
+synopsis: rename 'nix show-config' to 'nix config show'
+issues: 7672
+prs: 9477
+---
+
+`nix show-config` was renamed to `nix config show` to be more consistent with the rest of the command-line interface.
diff --git a/doc/manual/rl-next/nix-profile-names.md b/doc/manual/rl-next/nix-profile-names.md
new file mode 100644
index 000000000..53dc53fa9
--- /dev/null
+++ b/doc/manual/rl-next/nix-profile-names.md
@@ -0,0 +1,9 @@
+---
+synopsis: "`nix profile` now allows referring to elements by human-readable name, and no longer accepts indices"
+prs: 8678
+cls: [978, 980]
+---
+
+[`nix profile`](@docroot@/command-ref/new-cli/nix3-profile.md) now uses names to refer to installed packages when running [`list`](@docroot@/command-ref/new-cli/nix3-profile-list.md), [`remove`](@docroot@/command-ref/new-cli/nix3-profile-remove.md) or [`upgrade`](@docroot@/command-ref/new-cli/nix3-profile-upgrade.md) as opposed to indices. Indices have been removed. Profile element names are generated when a package is installed and remain the same until the package is removed.
+
+**Warning**: The `manifest.nix` file used to record the contents of profiles has changed. Nix will automatically upgrade profiles to the new version when you modify the profile. After that, the profile can no longer be used by older versions of Nix.
diff --git a/doc/manual/rl-next/upgrade-nix-override.md b/doc/manual/rl-next/upgrade-nix-override.md
new file mode 100644
index 000000000..d3046ff13
--- /dev/null
+++ b/doc/manual/rl-next/upgrade-nix-override.md
@@ -0,0 +1,6 @@
+---
+synopsis: add --store-path argument to `nix upgrade-nix`, to manually specify the Nix to upgrade to
+cls: 953
+---
+
+`nix upgrade-nix` by default downloads a manifest to find the new Nix version to upgrade to, but now you can specify `--store-path` to upgrade Nix to an arbitrary version from the Nix store.
diff --git a/doc/manual/rl-next/upgrade-nix-profile-compat.md b/doc/manual/rl-next/upgrade-nix-profile-compat.md
new file mode 100644
index 000000000..df9879c6f
--- /dev/null
+++ b/doc/manual/rl-next/upgrade-nix-profile-compat.md
@@ -0,0 +1,8 @@
+---
+synopsis: using `nix profile` on `/nix/var/nix/profiles/default` no longer breaks `nix upgrade-nix`
+cls: 952
+---
+
+On non-NixOS, Nix is conventionally installed into a `nix-env` style profile at /nix/var/nix/profiles/default.
+Like any `nix-env` profile, using `nix profile` on it automatically migrates it to a `nix profile` style profile, which is incompatible with `nix-env`.
+`nix upgrade-nix` previously relied solely on `nix-env` to do the upgrade, but now will work fine with either kind of profile.
diff --git a/doc/manual/src/SUMMARY.md b/doc/manual/src/SUMMARY.md
index 7747b9061..2437c0dc5 100644
--- a/doc/manual/src/SUMMARY.md
+++ b/doc/manual/src/SUMMARY.md
@@ -91,6 +91,8 @@
- [nix](command-ref/new-cli/nix.md)
- [nix build](command-ref/new-cli/nix3-build.md)
- [nix bundle](command-ref/new-cli/nix3-bundle.md)
+ - [nix config](command-ref/new-cli/nix3-config.md)
+ - [nix config show](command-ref/new-cli/nix3-config-show.md)
- [nix copy](command-ref/new-cli/nix3-copy.md)
- [nix daemon](command-ref/new-cli/nix3-daemon.md)
- [nix derivation](command-ref/new-cli/nix3-derivation.md)
diff --git a/doc/manual/src/command-ref/new-cli/nix3-config-show.md b/doc/manual/src/command-ref/new-cli/nix3-config-show.md
new file mode 100644
index 000000000..a39cd13e9
--- /dev/null
+++ b/doc/manual/src/command-ref/new-cli/nix3-config-show.md
@@ -0,0 +1 @@
+{{#include @generated@/command-ref/new-cli/nix3-config-show.md}}
diff --git a/doc/manual/src/command-ref/new-cli/nix3-config.md b/doc/manual/src/command-ref/new-cli/nix3-config.md
new file mode 100644
index 000000000..ba824c7bc
--- /dev/null
+++ b/doc/manual/src/command-ref/new-cli/nix3-config.md
@@ -0,0 +1 @@
+{{#include @generated@/command-ref/new-cli/nix3-config.md}}
diff --git a/doc/manual/src/command-ref/new-cli/nix3-show-config.md b/doc/manual/src/command-ref/new-cli/nix3-show-config.md
deleted file mode 100644
index 060fc065d..000000000
--- a/doc/manual/src/command-ref/new-cli/nix3-show-config.md
+++ /dev/null
@@ -1 +0,0 @@
-{{#include @generated@/command-ref/new-cli/nix3-show-config.md}}
diff --git a/doc/manual/src/command-ref/nix-env.md b/doc/manual/src/command-ref/nix-env.md
index 941723216..5a9e05fed 100644
--- a/doc/manual/src/command-ref/nix-env.md
+++ b/doc/manual/src/command-ref/nix-env.md
@@ -25,17 +25,17 @@ individual users can switch between different environments.
`nix-env` takes exactly one *operation* flag which indicates the
subcommand to be performed. The following operations are available:
-- [`--install`](./nix-env/install.md)
-- [`--upgrade`](./nix-env/upgrade.md)
-- [`--uninstall`](./nix-env/uninstall.md)
-- [`--set`](./nix-env/set.md)
-- [`--set-flag`](./nix-env/set-flag.md)
-- [`--query`](./nix-env/query.md)
-- [`--switch-profile`](./nix-env/switch-profile.md)
-- [`--list-generations`](./nix-env/list-generations.md)
-- [`--delete-generations`](./nix-env/delete-generations.md)
-- [`--switch-generation`](./nix-env/switch-generation.md)
-- [`--rollback`](./nix-env/rollback.md)
+- [`--install`](./nix-env/install.md) - add packages to user environment
+- [`--upgrade`](./nix-env/upgrade.md) - upgrade packages in user environment
+- [`--uninstall`](./nix-env/uninstall.md) - remove packages from user environment
+- [`--set`](./nix-env/set.md) - set profile to contain a specified derivation
+- [`--set-flag`](./nix-env/set-flag.md) - modify meta attributes of installed packages
+- [`--query`](./nix-env/query.md) - display information about packages
+- [`--switch-profile`](./nix-env/switch-profile.md) - set user environment to a given profile
+- [`--list-generations`](./nix-env/list-generations.md) - list profile generations
+- [`--delete-generations`](./nix-env/delete-generations.md) - delete profile generations
+- [`--switch-generation`](./nix-env/switch-generation.md) - set user environment to a given profile generation
+- [`--rollback`](./nix-env/rollback.md) - set user environment to previous generation
These pages can be viewed offline: