diff options
-rw-r--r-- | doc/manual/command-ref/conf-file.xml | 19 | ||||
-rw-r--r-- | src/libstore/globals.hh | 8 |
2 files changed, 25 insertions, 2 deletions
diff --git a/doc/manual/command-ref/conf-file.xml b/doc/manual/command-ref/conf-file.xml index c76640c97e7e..5c21a40a11e9 100644 --- a/doc/manual/command-ref/conf-file.xml +++ b/doc/manual/command-ref/conf-file.xml @@ -254,6 +254,25 @@ false</literal>.</para> </varlistentry> + <varlistentry><term><literal>extra-platforms</literal></term> + + <listitem><para>Platforms other than the native one which + this machine is capable of building for. This can be useful for + supporting additional architectures on compatible machines: + i686-linux can be built on x86_64-linux machines (and the default + for this setting reflects this); armv7 is backwards-compatible with + armv6 and armv5tel; some aarch64 machines can also natively run + 32-bit ARM code; and qemu-user may be used to support non-native + platforms (though this may be slow and buggy). Most values for this + are not enabled by default because build systems will often + misdetect the target platform and generate incompatible code, so you + may wish to cross-check the results of using this option against + proper natively-built versions of your + derivations.</para></listitem> + + </varlistentry> + + <varlistentry><term><literal>extra-substituters</literal></term> <listitem><para>Additional binary caches appended to those diff --git a/src/libstore/globals.hh b/src/libstore/globals.hh index b382da01e97e..897d53b7b94c 100644 --- a/src/libstore/globals.hh +++ b/src/libstore/globals.hh @@ -295,8 +295,12 @@ public: "Nix store has a valid signature (that is, one signed using a key " "listed in 'trusted-public-keys'."}; - Setting<StringSet> extraPlatforms{this, StringSet{}, "build-extra-platforms", - "Additional platforms that can be built on the local system, e.g. using qemu-user."}; + Setting<StringSet> extraPlatforms{this, + SYSTEM == "x86_64-linux" ? StringSet{"i686-linux"} : StringSet{}, + "extra-platforms", + "Additional platforms that can be built on the local system. " + "These may be supported natively (e.g. armv7 on some aarch64 CPUs " + "or using hacks like qemu-user."}; Setting<Strings> substituters{this, nixStore == "/nix/store" ? Strings{"https://cache.nixos.org/"} : Strings(), |