diff --git a/doc/configuration.xml b/doc/configuration.xml index 55c5ea809d3..5370265c53a 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