96 lines
4.6 KiB
Diff
96 lines
4.6 KiB
Diff
From cc4de1aa3ad39c480e111113aec48da2e7c24e8d Mon Sep 17 00:00:00 2001
|
||
From: =?UTF-8?q?Fabian=20M=C3=B6ller?= <fabianm88@gmail.com>
|
||
Date: Fri, 13 Jan 2023 10:16:46 +0100
|
||
Subject: [PATCH] nixos-rebuild: Allow local builds when --target-host is used
|
||
again
|
||
|
||
This is a followup of #148921, to allow local builds when
|
||
`--target-host` is used again. It also documents the change in
|
||
behavior, regarding the specialty of the `localhost` value.
|
||
|
||
By removing the special handling of an empty `buildHost` and non empty
|
||
`targetHost`, this change also slightly alters the behavior of
|
||
`nixos-rebuild`.
|
||
|
||
Originally by specifying `--target-host target --build-host ""`, the
|
||
now removed special case would transform those arguments to
|
||
`--target-host target --build-host target`.
|
||
Now the empty `--build-host` would result in a local build.
|
||
---
|
||
.../doc/manual/from_md/release-notes/rl-2305.section.xml | 9 +++++++++
|
||
nixos/doc/manual/man-nixos-rebuild.xml | 6 +++---
|
||
nixos/doc/manual/release-notes/rl-2305.section.md | 2 ++
|
||
pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh | 4 ----
|
||
4 files changed, 14 insertions(+), 7 deletions(-)
|
||
|
||
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
|
||
index 242841a56b65b..7a8c7b10596a8 100644
|
||
--- a/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
|
||
+++ b/nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
|
||
@@ -256,6 +256,15 @@
|
||
been changed to <literal>null</literal>.
|
||
</para>
|
||
</listitem>
|
||
+ <listitem>
|
||
+ <para>
|
||
+ The <literal>--target-host</literal> and
|
||
+ <literal>--build-host</literal> options of
|
||
+ <literal>nixos-rebuild</literal> no longer treat the
|
||
+ <literal>localhost</literal> value specially – to build
|
||
+ on/deploy to local machine, omit the relevant flag.
|
||
+ </para>
|
||
+ </listitem>
|
||
<listitem>
|
||
<para>
|
||
The <literal>nix.readOnlyStore</literal> option has been
|
||
diff --git a/nixos/doc/manual/man-nixos-rebuild.xml b/nixos/doc/manual/man-nixos-rebuild.xml
|
||
index cab871661a755..1b55d07c95022 100644
|
||
--- a/nixos/doc/manual/man-nixos-rebuild.xml
|
||
+++ b/nixos/doc/manual/man-nixos-rebuild.xml
|
||
@@ -532,15 +532,15 @@
|
||
<listitem>
|
||
<para>
|
||
Specifies the NixOS target host. By setting this to something other than
|
||
- <replaceable>localhost</replaceable>, the system activation will happen
|
||
+ an empty string, the system activation will happen
|
||
on the remote host instead of the local machine. The remote host needs to
|
||
be accessible over ssh, and for the commands <option>switch</option>,
|
||
<option>boot</option> and <option>test</option> you need root access.
|
||
</para>
|
||
|
||
<para>
|
||
- If <option>--build-host</option> is not explicitly specified, building
|
||
- will take place locally.
|
||
+ If <option>--build-host</option> is not explicitly specified or empty,
|
||
+ building will take place locally.
|
||
</para>
|
||
|
||
<para>
|
||
diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md
|
||
index b5c74836ef407..f6c71cc3da0ad 100644
|
||
--- a/nixos/doc/manual/release-notes/rl-2305.section.md
|
||
+++ b/nixos/doc/manual/release-notes/rl-2305.section.md
|
||
@@ -67,6 +67,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||
|
||
- In `mastodon` it is now necessary to specify location of file with `PostgreSQL` database password. In `services.mastodon.database.passwordFile` parameter default value `/var/lib/mastodon/secrets/db-password` has been changed to `null`.
|
||
|
||
+- The `--target-host` and `--build-host` options of `nixos-rebuild` no longer treat the `localhost` value specially – to build on/deploy to local machine, omit the relevant flag.
|
||
+
|
||
- The `nix.readOnlyStore` option has been renamed to `boot.readOnlyNixStore` to clarify that it configures the NixOS boot process, not the Nix daemon.
|
||
|
||
## Other Notable Changes {#sec-release-23.05-notable-changes}
|
||
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
|
||
index 217e04d35720e..ed7c9231905a3 100755
|
||
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
|
||
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
|
||
@@ -148,10 +148,6 @@ if [[ -n "$SUDO_USER" || -n $remoteSudo ]]; then
|
||
maybeSudo=(sudo --preserve-env="$preservedSudoVars" --)
|
||
fi
|
||
|
||
-if [[ -z "$buildHost" && -n "$targetHost" ]]; then
|
||
- buildHost="$targetHost"
|
||
-fi
|
||
-
|
||
# log the given argument to stderr if verbose mode is on
|
||
logVerbose() {
|
||
if [ -n "$verboseScript" ]; then
|