diff --git a/nixos/doc/manual/installation/installing-behind-a-proxy.xml b/nixos/doc/manual/installation/installing-behind-a-proxy.xml
new file mode 100644
index 000000000000..c59d073c61c7
--- /dev/null
+++ b/nixos/doc/manual/installation/installing-behind-a-proxy.xml
@@ -0,0 +1,47 @@
+
+ Installing behind a proxy
+
+
+ To install NixOS behind a proxy, do the following before running
+ nixos-install.
+
+
+
+
+ Update proxy configuration in
+ /mnt/etc/nixos/configuration.nix to keep the
+ internet accessible after reboot.
+
+
+networking.proxy.default = "http://user:password@proxy:port/";
+networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+
+
+
+
+ Setup the proxy environment variables in the shell where you are
+ running nixos-install.
+
+
+# proxy_url="http://user:password@proxy:port/"
+# export http_proxy="$proxy_url"
+# export HTTP_PROXY="$proxy_url"
+# export https_proxy="$proxy_url"
+# export HTTPS_PROXY="$proxy_url"
+
+
+
+
+
+
+ If you are switching networks with different proxy configurations, use the
+ nesting.clone option in
+ configuration.nix to switch proxies at runtime.
+ Refer to for more information.
+
+
+
diff --git a/nixos/doc/manual/installation/installing.xml b/nixos/doc/manual/installation/installing.xml
index 6f8e0f613b19..916384559e24 100644
--- a/nixos/doc/manual/installation/installing.xml
+++ b/nixos/doc/manual/installation/installing.xml
@@ -443,4 +443,5 @@ $ nix-env -i w3m
+
diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
old mode 100644
new mode 100755
index bb201d97ded1..04678c919c22
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -574,6 +574,10 @@ $bootLoaderConfig
# networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
+ # Configure network proxy if necessary
+ # networking.proxy.default = "http://user:password@proxy:port/";
+ # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+
# Select internationalisation properties.
# i18n = {
# consoleFont = "Lat2-Terminus16";
diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix
index 9d410a8b9ca4..fff88e2c2bf3 100644
--- a/nixos/modules/system/activation/top-level.nix
+++ b/nixos/modules/system/activation/top-level.nix
@@ -162,6 +162,13 @@ in
description = ''
Additional configurations to build based on the current
configuration which then has a lower priority.
+
+ To switch to a cloned configuration (e.g. child-1)
+ at runtime, run
+
+
+ # sudo /run/current-system/fine-tune/child-1/bin/switch-to-configuration test
+
'';
};