obs-studio: Fix wrapOBS double-including the built-in plugins

This commit is contained in:
M. Ian Graham 2022-08-14 08:37:29 +09:00
parent 3848945611
commit 593d64f975
No known key found for this signature in database
GPG key ID: E189648A55F59A9F
3 changed files with 23 additions and 4 deletions

View file

@ -8481,6 +8481,15 @@
githubId = 9980864;
name = "Max Hofer";
};
miangraham = {
email = "miangraham@users.noreply.github.com";
github = "miangraham";
githubId = 704580;
name = "M. Ian Graham";
keys = [{
fingerprint = "8CE3 2906 516F C4D8 D373 308A E189 648A 55F5 9A9F";
}];
};
mic92 = {
email = "joerg@thalheim.io";
matrix = "@mic92:nixos.dev";

View file

@ -140,7 +140,7 @@ mkDerivation rec {
video content, efficiently
'';
homepage = "https://obsproject.com";
maintainers = with maintainers; [ jb55 MP2E V ];
maintainers = with maintainers; [ jb55 MP2E V miangraham ];
license = licenses.gpl2Plus;
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
mainProgram = "obs";

View file

@ -6,7 +6,7 @@ symlinkJoin {
name = "wrapped-${obs-studio.name}";
nativeBuildInputs = [ makeWrapper ];
paths = [ obs-studio ] ++ plugins;
paths = [ obs-studio ];
postBuild = with lib;
let
@ -14,11 +14,21 @@ symlinkJoin {
pluginArguments =
lists.concatMap (plugin: plugin.obsWrapperArguments or []) plugins;
pluginsJoined = symlinkJoin {
name = "obs-studio-plugins";
paths = lists.map (plugin: "${plugin}/lib/obs-plugins") plugins;
};
pluginsDataJoined = symlinkJoin {
name = "obs-studio-plugins-data";
paths = lists.map (plugin: "${plugin}/share/obs/obs-plugins") plugins;
};
wrapCommand = [
"wrapProgram"
"$out/bin/obs"
''--set OBS_PLUGINS_PATH "$out/lib/obs-plugins"''
''--set OBS_PLUGINS_DATA_PATH "$out/share/obs/obs-plugins"''
''--set OBS_PLUGINS_PATH "${pluginsJoined}"''
''--set OBS_PLUGINS_DATA_PATH "${pluginsDataJoined}"''
] ++ pluginArguments;
in concatStringsSep " " wrapCommand;