Boolean environment variables are parsed inconsistently across the code base. Different call sites use different rules (exact "1" comparison, "set and not 0", any non-empty string), so intuitively-truthy values behave unexpectedly (e.g. PICARD_DISABLE_AUTOUPDATE=false evaluates to true, PICARD_BUILD_PORTABLE=0 evaluates to true). There is no shared convention for Picard-owned boolean variables.
Also add PICARD_FORCE_FUSION variable to force the Qt Fusion style on any platform (notably useful on macOS, which otherwise keeps its native style), it will help to debug issues on this platform.
Document all supported environment variables (runtime, build, and third-party), as they are rather hidden in the code.