Loading pkgs/applications/video/obs-studio/default.nix +23 −19 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ alsa-lib, pulseaudioSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux, libpulseaudio, browserSupport ? false, # FIXME: broken libcef, pciutils, pipewireSupport ? stdenv.hostPlatform.isLinux, Loading Loading @@ -97,7 +98,6 @@ stdenv.mkDerivation (finalAttrs: { curl ffmpeg jansson libcef libjack2 libv4l libxkbcommon Loading Loading @@ -135,10 +135,11 @@ stdenv.mkDerivation (finalAttrs: { pipewire libdrm ] ++ optional browserSupport libcef ++ optional withFdk fdk_aac; # Copied from the obs-linuxbrowser postUnpack = '' postUnpack = lib.optionalString browserSupport '' mkdir -p cef/Release cef/Resources cef/libcef_dll_wrapper/ for i in ${libcef}/share/cef/*; do ln -s $i cef/Release/ Loading @@ -159,9 +160,6 @@ stdenv.mkDerivation (finalAttrs: { "nixpkgs-${if stdenv.hostPlatform.isDarwin then "darwin" else "linux"}" "-DOBS_VERSION_OVERRIDE=${finalAttrs.version}" "-Wno-dev" # kill dev warnings that are useless for packaging # Add support for browser source "-DENABLE_BROWSER=ON" "-DCEF_ROOT_DIR=../../cef" "-DENABLE_JACK=ON" "-DENABLE_WEBRTC=ON" (lib.cmakeBool "ENABLE_QSV11" stdenv.hostPlatform.isx86_64) Loading @@ -170,7 +168,8 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "ENABLE_PULSEAUDIO" pulseaudioSupport) (lib.cmakeBool "ENABLE_PIPEWIRE" pipewireSupport) (lib.cmakeBool "ENABLE_AJA" false) # TODO: fix linking against libajantv2 ]; (lib.cmakeBool "ENABLE_BROWSER" browserSupport) ] ++ lib.optional browserSupport "-DCEF_ROOT_DIR=../../cef"; env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=deprecated-declarations" Loading @@ -192,6 +191,12 @@ stdenv.mkDerivation (finalAttrs: { ]; in '' qtWrapperArgs+=( --prefix LD_LIBRARY_PATH : "$out/lib:${lib.makeLibraryPath wrapperLibraries}" ''${gappsWrapperArgs[@]} ) '' + lib.optionalString browserSupport '' # Remove cef components before patchelf, otherwise it will fail rm $out/lib/obs-plugins/libcef.so rm $out/lib/obs-plugins/libEGL.so Loading @@ -199,21 +204,20 @@ stdenv.mkDerivation (finalAttrs: { rm $out/lib/obs-plugins/libvk_swiftshader.so rm $out/lib/obs-plugins/libvulkan.so.1 rm $out/lib/obs-plugins/chrome-sandbox qtWrapperArgs+=( --prefix LD_LIBRARY_PATH : "$out/lib:${lib.makeLibraryPath wrapperLibraries}" ''${gappsWrapperArgs[@]} ) ''; postFixup = lib.optionalString stdenv.hostPlatform.isLinux '' postFixup = lib.concatStrings [ (lib.optionalString stdenv.hostPlatform.isLinux '' addDriverRunpath $out/lib/lib*.so addDriverRunpath $out/lib/obs-plugins/*.so '') (lib.optionalString browserSupport '' # Link cef components again after patchelfing other libs ln -s ${libcef}/lib/* $out/lib/obs-plugins/ ln -s ${libcef}/libexec/cef/* $out/lib/obs-plugins/ ''; '') ]; passthru.updateScript = nix-update-script { }; Loading Loading
pkgs/applications/video/obs-studio/default.nix +23 −19 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ alsa-lib, pulseaudioSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux, libpulseaudio, browserSupport ? false, # FIXME: broken libcef, pciutils, pipewireSupport ? stdenv.hostPlatform.isLinux, Loading Loading @@ -97,7 +98,6 @@ stdenv.mkDerivation (finalAttrs: { curl ffmpeg jansson libcef libjack2 libv4l libxkbcommon Loading Loading @@ -135,10 +135,11 @@ stdenv.mkDerivation (finalAttrs: { pipewire libdrm ] ++ optional browserSupport libcef ++ optional withFdk fdk_aac; # Copied from the obs-linuxbrowser postUnpack = '' postUnpack = lib.optionalString browserSupport '' mkdir -p cef/Release cef/Resources cef/libcef_dll_wrapper/ for i in ${libcef}/share/cef/*; do ln -s $i cef/Release/ Loading @@ -159,9 +160,6 @@ stdenv.mkDerivation (finalAttrs: { "nixpkgs-${if stdenv.hostPlatform.isDarwin then "darwin" else "linux"}" "-DOBS_VERSION_OVERRIDE=${finalAttrs.version}" "-Wno-dev" # kill dev warnings that are useless for packaging # Add support for browser source "-DENABLE_BROWSER=ON" "-DCEF_ROOT_DIR=../../cef" "-DENABLE_JACK=ON" "-DENABLE_WEBRTC=ON" (lib.cmakeBool "ENABLE_QSV11" stdenv.hostPlatform.isx86_64) Loading @@ -170,7 +168,8 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "ENABLE_PULSEAUDIO" pulseaudioSupport) (lib.cmakeBool "ENABLE_PIPEWIRE" pipewireSupport) (lib.cmakeBool "ENABLE_AJA" false) # TODO: fix linking against libajantv2 ]; (lib.cmakeBool "ENABLE_BROWSER" browserSupport) ] ++ lib.optional browserSupport "-DCEF_ROOT_DIR=../../cef"; env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=deprecated-declarations" Loading @@ -192,6 +191,12 @@ stdenv.mkDerivation (finalAttrs: { ]; in '' qtWrapperArgs+=( --prefix LD_LIBRARY_PATH : "$out/lib:${lib.makeLibraryPath wrapperLibraries}" ''${gappsWrapperArgs[@]} ) '' + lib.optionalString browserSupport '' # Remove cef components before patchelf, otherwise it will fail rm $out/lib/obs-plugins/libcef.so rm $out/lib/obs-plugins/libEGL.so Loading @@ -199,21 +204,20 @@ stdenv.mkDerivation (finalAttrs: { rm $out/lib/obs-plugins/libvk_swiftshader.so rm $out/lib/obs-plugins/libvulkan.so.1 rm $out/lib/obs-plugins/chrome-sandbox qtWrapperArgs+=( --prefix LD_LIBRARY_PATH : "$out/lib:${lib.makeLibraryPath wrapperLibraries}" ''${gappsWrapperArgs[@]} ) ''; postFixup = lib.optionalString stdenv.hostPlatform.isLinux '' postFixup = lib.concatStrings [ (lib.optionalString stdenv.hostPlatform.isLinux '' addDriverRunpath $out/lib/lib*.so addDriverRunpath $out/lib/obs-plugins/*.so '') (lib.optionalString browserSupport '' # Link cef components again after patchelfing other libs ln -s ${libcef}/lib/* $out/lib/obs-plugins/ ln -s ${libcef}/libexec/cef/* $out/lib/obs-plugins/ ''; '') ]; passthru.updateScript = nix-update-script { }; Loading