Your statement proves the point that developing for Linux means having to support many choices.
What patches will be needed for yet some different filesystem, or init system, or desktop interface? And how many hundreds or thousands of programs might be affected?