From c66440c1048387599e002a1c2d17ba5cbaebf3f8 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 17 Apr 2018 16:08:21 -0400 Subject: doc: Document `config.allowUnsupportedSystem` and its env var --- doc/configuration.xml | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/configuration.xml b/doc/configuration.xml index 55c5ea809d354..5370265c53ad8 100644 --- a/doc/configuration.xml +++ b/doc/configuration.xml @@ -14,6 +14,8 @@ true: its meta.broken set to true. + The package isn't intended to run on the given system, as none of its meta.platforms match the given system. + The package's meta.license is set to a license which is considered to be unfree. @@ -88,6 +90,42 @@ distributing the software. +
+ Installing packages on unsupported systems + + + + There are also two ways to try compiling a package which has been marked as unsuported for the given system. + + + + + For allowing the build of a broken package once, you can use an environment variable for a single invocation of the nix tools: + + $ export NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1 + + + + + For permanently allowing broken packages to be built, you may add allowUnsupportedSystem = true; to your user's configuration file, like this: + + +{ + allowUnsupportedSystem = true; +} + + + + + + + The difference between an a package being unsupported on some system and being broken is admittedly a bit fuzzy. + If a program ought to work on a certain platform, but doesn't, the platform should be included in meta.platforms, but marked as broken with e.g. meta.broken = !hostPlatform.isWindows. + Of course, this begs the question of what "ought" means exactly. + That is left to the package maintainer. + +
+
Installing unfree packages @@ -397,7 +435,7 @@ fi
- +
GNU info setup -- cgit 1.4.1