Done with the help of https://github.com/Mindavi/nixpkgs-mark-broken
Tool is still WIP but this is one of the first results.
I manually audited the results and removed some results that were not valid.
Note that some of these packages maybe should have more constrained platforms set
instead of broken set, but I think not being perfectly correct is better than
just keep trying to build all these things and never succeeding.
Some observations:
- Some darwin builds require XCode tools
- aarch64-linux builds sometimes suffer from using gcc9
- gcc9 is getting older and misses some new libraries/features
- Sometimes tools try to do system detection or expect some explicit settings for
platforms that are not x86_64-linux
If the user asks for a plugin that does come with their own binaries or other
files to be included in their OBS installation, it should include those files. A
good example is obs-vkcapture which /requires/ system-wide files to have any use
whatsoever.
Plugins' paths were removed from the wrapper in step with preventing OBS from
loading plugins twice but wasn't actually required because the env variables
already point at the one and only location for plugins. The plugins' share dirs
don't get put in the system-wide share by default on NixOS but I decided to
remove the directory anyways for clarity.
Partially reverts 593d64f975
Co-authored-by: Pedro Lara Campos <pedro.laracampos@gmail.com>
obs-ndi bundles the NDI SDK headers to avoid a more complicated build
setup, but this plays against us here because the soversion for the v5
NDI SDK is "5" even though as far as I know it's fully ABI compatible
with the v4 headers in use here.
Work around the v4/v5 incompatibility here by using the upstream SDK
headers instead.
fixes a regression due to #186548 where the symlinkJoin fails when a
package does not have that path such as `obs-studio-plugins.wlrobs`
Only one `symlinkJoin` is necessary