Fix local building for remote hosts
This commit is contained in:
parent
d6bdc90cc3
commit
f7afb02ad2
2 changed files with 98 additions and 0 deletions
96
patches/210382.patch
Normal file
96
patches/210382.patch
Normal file
|
@ -0,0 +1,96 @@
|
|||
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
|
Loading…
Add table
Add a link
Reference in a new issue