uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
|
|
@ -0,0 +1,36 @@
|
|||
From 0de0a90f8fe5e1e48fa4ec7aa7c825ef88770f9d Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Foster <RytoEX@gmail.com>
|
||||
Date: Mon, 9 Sep 2019 23:55:02 -0400
|
||||
Subject: [PATCH] Enable file access and universal access for file URLs
|
||||
|
||||
When loading a local file, instead of disabling CEF's web security,
|
||||
enable file access and universal access for file URLs. This should allow
|
||||
local files to make CORS requests without completely disabling CEF's
|
||||
security model.
|
||||
---
|
||||
obs-browser-source.cpp | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/obs-browser-source.cpp b/obs-browser-source.cpp
|
||||
index ab1181e..c775283 100644
|
||||
--- a/plugins/obs-browser/obs-browser-source.cpp
|
||||
+++ b/plugins/obs-browser/obs-browser-source.cpp
|
||||
@@ -179,9 +179,12 @@ bool BrowserSource::CreateBrowser()
|
||||
|
||||
#if ENABLE_LOCAL_FILE_URL_SCHEME
|
||||
if (is_local) {
|
||||
- /* Disable web security for file:// URLs to allow
|
||||
- * local content access to remote APIs */
|
||||
- cefBrowserSettings.web_security = STATE_DISABLED;
|
||||
+ /* Enable file access and universal access from file://
|
||||
+ * URLs to allow local content access to remote APIs */
|
||||
+ cefBrowserSettings.file_access_from_file_urls =
|
||||
+ STATE_ENABLED;
|
||||
+ cefBrowserSettings.universal_access_from_file_urls =
|
||||
+ STATE_ENABLED;
|
||||
}
|
||||
#endif
|
||||
|
||||
--
|
||||
2.31.1
|
||||
|
||||
148
pkgs/applications/video/obs-studio/default.nix
Normal file
148
pkgs/applications/video/obs-studio/default.nix
Normal file
|
|
@ -0,0 +1,148 @@
|
|||
{ config
|
||||
, lib
|
||||
, stdenv
|
||||
, mkDerivation
|
||||
, fetchFromGitHub
|
||||
, addOpenGLRunpath
|
||||
, cmake
|
||||
, fdk_aac
|
||||
, ffmpeg_4
|
||||
, jansson
|
||||
, libjack2
|
||||
, libxkbcommon
|
||||
, libpthreadstubs
|
||||
, libXdmcp
|
||||
, qtbase
|
||||
, qtx11extras
|
||||
, qtsvg
|
||||
, speex
|
||||
, libv4l
|
||||
, x264
|
||||
, curl
|
||||
, wayland
|
||||
, xorg
|
||||
, pkg-config
|
||||
, libvlc
|
||||
, mbedtls
|
||||
, wrapGAppsHook
|
||||
, scriptingSupport ? true
|
||||
, luajit
|
||||
, swig
|
||||
, python3
|
||||
, alsaSupport ? stdenv.isLinux
|
||||
, alsa-lib
|
||||
, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
|
||||
, libpulseaudio
|
||||
, libcef
|
||||
, pciutils
|
||||
, pipewireSupport ? stdenv.isLinux
|
||||
, pipewire
|
||||
, libdrm
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib) optional optionals;
|
||||
|
||||
in
|
||||
mkDerivation rec {
|
||||
pname = "obs-studio";
|
||||
version = "27.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "obsproject";
|
||||
repo = "obs-studio";
|
||||
rev = version;
|
||||
sha256 = "sha256-OiSejQovSmhItrnrQlcVp9PCDRgAhuxTinSpXbH8bo0=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Lets obs-browser build against CEF 90.1.0+
|
||||
./Enable-file-access-and-universal-access-for-file-URL.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
addOpenGLRunpath
|
||||
cmake
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
]
|
||||
++ optional scriptingSupport swig;
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
fdk_aac
|
||||
ffmpeg_4
|
||||
jansson
|
||||
libcef
|
||||
libjack2
|
||||
libv4l
|
||||
libxkbcommon
|
||||
libpthreadstubs
|
||||
libXdmcp
|
||||
qtbase
|
||||
qtx11extras
|
||||
qtsvg
|
||||
speex
|
||||
wayland
|
||||
x264
|
||||
libvlc
|
||||
mbedtls
|
||||
pciutils
|
||||
]
|
||||
++ optionals scriptingSupport [ luajit python3 ]
|
||||
++ optional alsaSupport alsa-lib
|
||||
++ optional pulseaudioSupport libpulseaudio
|
||||
++ optionals pipewireSupport [ pipewire libdrm ];
|
||||
|
||||
# Copied from the obs-linuxbrowser
|
||||
postUnpack = ''
|
||||
mkdir -p cef/Release cef/Resources cef/libcef_dll_wrapper/
|
||||
for i in ${libcef}/share/cef/*; do
|
||||
cp -r $i cef/Release/
|
||||
cp -r $i cef/Resources/
|
||||
done
|
||||
cp -r ${libcef}/lib/libcef.so cef/Release/
|
||||
cp -r ${libcef}/lib/libcef_dll_wrapper.a cef/libcef_dll_wrapper/
|
||||
cp -r ${libcef}/include cef/
|
||||
'';
|
||||
|
||||
# obs attempts to dlopen libobs-opengl, it fails unless we make sure
|
||||
# DL_OPENGL is an explicit path. Not sure if there's a better way
|
||||
# to handle this.
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_CXX_FLAGS=-DDL_OPENGL=\\\"$(out)/lib/libobs-opengl.so\\\""
|
||||
"-DOBS_VERSION_OVERRIDE=${version}"
|
||||
"-Wno-dev" # kill dev warnings that are useless for packaging
|
||||
# Add support for browser source
|
||||
"-DBUILD_BROWSER=ON"
|
||||
"-DCEF_ROOT_DIR=../../cef"
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
preFixup = ''
|
||||
qtWrapperArgs+=(
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xorg.libX11 libvlc ]}"
|
||||
''${gappsWrapperArgs[@]}
|
||||
)
|
||||
'';
|
||||
|
||||
postFixup = lib.optionalString stdenv.isLinux ''
|
||||
addOpenGLRunpath $out/lib/lib*.so
|
||||
addOpenGLRunpath $out/lib/obs-plugins/*.so
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Free and open source software for video recording and live streaming";
|
||||
longDescription = ''
|
||||
This project is a rewrite of what was formerly known as "Open Broadcaster
|
||||
Software", software originally designed for recording and streaming live
|
||||
video content, efficiently
|
||||
'';
|
||||
homepage = "https://obsproject.com";
|
||||
maintainers = with maintainers; [ jb55 MP2E V ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
|
||||
mainProgram = "obs";
|
||||
};
|
||||
}
|
||||
13
pkgs/applications/video/obs-studio/plugins/default.nix
Normal file
13
pkgs/applications/video/obs-studio/plugins/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{ callPackage, libsForQt5 }:
|
||||
|
||||
{
|
||||
obs-gstreamer = callPackage ./obs-gstreamer.nix {};
|
||||
obs-move-transition = callPackage ./obs-move-transition.nix {};
|
||||
obs-multi-rtmp = libsForQt5.callPackage ./obs-multi-rtmp.nix {};
|
||||
obs-ndi = libsForQt5.callPackage ./obs-ndi.nix {};
|
||||
obs-websocket = libsForQt5.callPackage ./obs-websocket.nix {};
|
||||
wlrobs = callPackage ./wlrobs.nix {};
|
||||
looking-glass-obs = callPackage ./looking-glass-obs.nix {};
|
||||
obs-nvfbc = callPackage ./obs-nvfbc.nix {};
|
||||
obs-vkcapture = callPackage ./obs-vkcapture.nix {};
|
||||
}
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/external/FindLibObs.cmake b/external/FindLibObs.cmake
|
||||
index ab0a3de..19c63ee 100644
|
||||
--- a/external/FindLibObs.cmake
|
||||
+++ b/external/FindLibObs.cmake
|
||||
@@ -95,7 +95,7 @@ if(LIBOBS_FOUND)
|
||||
|
||||
set(LIBOBS_INCLUDE_DIRS ${LIBOBS_INCLUDE_DIR} ${W32_PTHREADS_INCLUDE_DIR})
|
||||
set(LIBOBS_LIBRARIES ${LIBOBS_LIB} ${W32_PTHREADS_LIB})
|
||||
- include(${LIBOBS_INCLUDE_DIR}/../cmake/external/ObsPluginHelpers.cmake)
|
||||
+ include(external/ObsPluginHelpers.cmake)
|
||||
|
||||
# allows external plugins to easily use/share common dependencies that are often included with libobs (such as FFmpeg)
|
||||
if(NOT DEFINED INCLUDED_LIBOBS_CMAKE_MODULES)
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
diff --git a/src/obs-ndi.cpp b/src/obs-ndi.cpp
|
||||
index 493831c..7b0f8db 100644
|
||||
--- a/src/obs-ndi.cpp
|
||||
+++ b/src/obs-ndi.cpp
|
||||
@@ -197,11 +197,7 @@ const char* obs_module_description()
|
||||
const NDIlib_v4* load_ndilib()
|
||||
{
|
||||
QStringList locations;
|
||||
- locations << QString(qgetenv(NDILIB_REDIST_FOLDER));
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
- locations << "/usr/lib";
|
||||
- locations << "/usr/local/lib";
|
||||
-#endif
|
||||
+ locations << "@NDI@/lib";
|
||||
|
||||
for (QString path : locations) {
|
||||
blog(LOG_INFO, "Trying '%s'", path.toUtf8().constData());
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
{ lib, stdenv, fetchFromGitHub, cmake, libbfd, SDL2, obs-studio
|
||||
, looking-glass-client }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "looking-glass-obs";
|
||||
version = looking-glass-client.version;
|
||||
|
||||
src = looking-glass-client.src;
|
||||
|
||||
sourceRoot = "source/obs";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ obs-studio libbfd SDL2 ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-mavx";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/obs-plugins/
|
||||
mv liblooking-glass-obs.so $out/lib/obs-plugins/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Plugin for OBS Studio for efficient capturing of looking-glass";
|
||||
homepage = "https://looking-glass.io/docs/stable/obs/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ babbaj ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
32
pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix
Normal file
32
pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, gst_all_1
|
||||
, pkg-config
|
||||
, meson
|
||||
, ninja
|
||||
, obs-studio
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-gstreamer";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fzwoch";
|
||||
repo = "obs-gstreamer";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KhSBZcV2yILTf5+aNoYWDfNwPiJoyYPeIOQMDFvOusg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config meson ninja ];
|
||||
buildInputs = with gst_all_1; [ gstreamer gst-plugins-base obs-studio ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An OBS Studio source, encoder and video filter plugin to use GStreamer elements/pipelines in OBS Studio";
|
||||
homepage = "https://github.com/fzwoch/obs-gstreamer";
|
||||
maintainers = with maintainers; [ ahuzik ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index f6d8fa3..5f0657d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,6 +1,17 @@
|
||||
+if (POLICY CMP0048)
|
||||
+ cmake_policy(SET CMP0048 NEW)
|
||||
+endif (POLICY CMP0048)
|
||||
+
|
||||
project(move-transition VERSION 2.4.3)
|
||||
set(PROJECT_FULL_NAME "Move Transition")
|
||||
|
||||
+include(FindLibobs.cmake)
|
||||
+find_package(LibObs REQUIRED)
|
||||
+
|
||||
+include_directories(
|
||||
+ "${LIBOBS_INCLUDE_DIR}/../plugins/obs-transitions"
|
||||
+ "${LIBOBS_INCLUDE_DIR}/../UI/obs-frontend-api")
|
||||
+
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_SOURCE_DIR}/version.h)
|
||||
|
||||
set(move-transition_HEADERS
|
||||
@@ -38,4 +49,10 @@ target_link_libraries(move-transition
|
||||
libobs)
|
||||
|
||||
set_target_properties(move-transition PROPERTIES FOLDER "plugins/exeldro")
|
||||
-install_obs_plugin_with_data(move-transition data)
|
||||
+set_target_properties(move-transition PROPERTIES PREFIX "")
|
||||
+
|
||||
+install(TARGETS move-transition
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/obs-plugins)
|
||||
+
|
||||
+install(DIRECTORY data/locale/
|
||||
+ DESTINATION "${CMAKE_INSTALL_PREFIX}/share/obs/obs-plugins/move-transition/locale")
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, fetchurl
|
||||
, cmake
|
||||
, obs-studio
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-move-transition";
|
||||
version = "2.4.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "exeldro";
|
||||
repo = "obs-move-transition";
|
||||
rev = version;
|
||||
sha256 = "sha256-/6PcNLOnBBqLZHVKMg1tdX9OktcllEEqnL93nXpuXL0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ obs-studio ];
|
||||
|
||||
cmakeFlags = with lib; [
|
||||
"-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs"
|
||||
"-Wno-dev"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
cp ${obs-studio.src}/cmake/external/FindLibobs.cmake FindLibobs.cmake
|
||||
'';
|
||||
|
||||
patches = [ ./obs-move-transition-use-FindLibobs.cmake.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace move-source-filter.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
||||
substituteInPlace move-value-filter.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
||||
substituteInPlace move-transition.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
||||
substituteInPlace audio-move.c --replace '<../UI/obs-frontend-api/obs-frontend-api.h>' '<obs-frontend-api.h>'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Plugin for OBS Studio to move source to a new position during scene transition";
|
||||
homepage = "https://github.com/exeldro/obs-move-transition";
|
||||
maintainers = with maintainers; [ starcraft66 ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
{ lib, stdenv, fetchFromGitHub, obs-studio, cmake, qtbase }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-multi-rtmp";
|
||||
version = "0.2.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sorayuki";
|
||||
repo = "obs-multi-rtmp";
|
||||
rev = version;
|
||||
sha256 = "sha256-OhatuSlDJ2VDNorM4QfoKPYKyv5YpN8EnIelLdBTlZ0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ obs-studio qtbase ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBOBS_INCLUDE_DIR=${obs-studio}/include/obs"
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/sorayuki/obs-multi-rtmp/";
|
||||
changelog = "https://github.com/sorayuki/obs-multi-rtmp/releases/tag/${version}";
|
||||
description = "Multi-site simultaneous broadcast plugin for OBS Studio";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ jk ];
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
||||
36
pkgs/applications/video/obs-studio/plugins/obs-ndi.nix
Normal file
36
pkgs/applications/video/obs-studio/plugins/obs-ndi.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{ lib, stdenv, fetchFromGitHub, obs-studio, cmake, qtbase, ndi }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-ndi";
|
||||
version = "4.9.1";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ obs-studio qtbase ndi ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Palakis";
|
||||
repo = "obs-ndi";
|
||||
rev = version;
|
||||
sha256 = "1y3xdqp55jayhg4sinwiwpk194zc4f4jf0abz647x2fprsk9jz7s";
|
||||
};
|
||||
|
||||
patches = [ ./fix-search-path.patch ./hardcode-ndi-path.patch ];
|
||||
|
||||
postPatch = "sed -i -e s,@NDI@,${ndi},g src/obs-ndi.cpp";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBOBS_INCLUDE_DIR=${obs-studio}/include/obs"
|
||||
"-DLIBOBS_LIB=${obs-studio}/lib"
|
||||
"-DCMAKE_CXX_FLAGS=-I${obs-studio.src}/UI/obs-frontend-api"
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Network A/V plugin for OBS Studio";
|
||||
homepage = "https://github.com/Palakis/obs-ndi";
|
||||
maintainers = with maintainers; [ jshcmpbll ];
|
||||
license = licenses.gpl2;
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
||||
25
pkgs/applications/video/obs-studio/plugins/obs-nvfbc.nix
Normal file
25
pkgs/applications/video/obs-studio/plugins/obs-nvfbc.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{ stdenv, lib, fetchFromGitLab, meson, ninja, pkg-config
|
||||
, obs-studio, libGL, libX11
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-nvfbc";
|
||||
version = "0.0.5";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "fzwoch";
|
||||
repo = "obs-nvfbc";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Si+TGYWpNPtUUFT+M571lCYslPyeYX92MdYV9EGgcyQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson pkg-config ninja ];
|
||||
buildInputs = [ obs-studio libGL libX11 ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "OBS Studio source plugin for NVIDIA FBC API";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ babbaj ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
35
pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix
Normal file
35
pkgs/applications/video/obs-studio/plugins/obs-vkcapture.nix
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, ninja
|
||||
, wayland
|
||||
, obs-studio
|
||||
, libX11
|
||||
, vulkan-headers
|
||||
, vulkan-loader
|
||||
, libGL
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-vkcapture";
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nowrep";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-iIV9ke2yPEt2Lf4bwiEHFip4tLhMS4raWGyCWpao74w=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja ];
|
||||
buildInputs = [ libGL libX11 obs-studio vulkan-headers vulkan-loader wayland ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "OBS Linux Vulkan/OpenGL game capture";
|
||||
homepage = "https://github.com/nowrep/obs-vkcapture";
|
||||
maintainers = with maintainers; [ atila ];
|
||||
license = licenses.gpl2Only;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
||||
63
pkgs/applications/video/obs-studio/plugins/obs-websocket.nix
Normal file
63
pkgs/applications/video/obs-studio/plugins/obs-websocket.nix
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, qtbase
|
||||
, qtsvg
|
||||
, obs-studio
|
||||
, asio_1_10
|
||||
, websocketpp
|
||||
, nlohmann_json
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-websocket";
|
||||
|
||||
# We have updated to the alpha version when OBS Studio 27.2 was
|
||||
# released, because this is the only version of obs-websocket that
|
||||
# builds against the new OBS Studio.
|
||||
version = "5.0.0-alpha3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Palakis";
|
||||
repo = "obs-websocket";
|
||||
rev = version;
|
||||
sha256 = "Lr6SBj5rRTAWmn9Tnlu4Sl7SAkOCRCTP6sFWSp4xB+I=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# This patch can be dropped when obs-websocket is updated to the
|
||||
# next version.
|
||||
(fetchpatch {
|
||||
url = "https://github.com/obsproject/obs-websocket/commit/13c7b83c34eb67b2ee80af05071d81f10d0d2997.patch";
|
||||
sha256 = "TNap/T8+058vhfWzRRr4vmlblFk9tHMUNyG6Ob5PwiM=";
|
||||
name = "obs-addref-werror-fix.patch";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [
|
||||
qtbase
|
||||
qtsvg
|
||||
obs-studio
|
||||
asio_1_10
|
||||
websocketpp
|
||||
nlohmann_json
|
||||
];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Remote-control OBS Studio through WebSockets";
|
||||
homepage = "https://github.com/Palakis/obs-websocket";
|
||||
maintainers = with maintainers; [ erdnaxe ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
};
|
||||
}
|
||||
26
pkgs/applications/video/obs-studio/plugins/wlrobs.nix
Normal file
26
pkgs/applications/video/obs-studio/plugins/wlrobs.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{ lib, stdenv, fetchhg
|
||||
, meson, pkg-config, ninja
|
||||
, wayland, obs-studio, libX11
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "wlrobs";
|
||||
version = "unstable-2021-05-13";
|
||||
|
||||
src = fetchhg {
|
||||
url = "https://hg.sr.ht/~scoopta/wlrobs";
|
||||
rev = "4184a4a8ea7dc054c993efa16007f3a75b2c6f51";
|
||||
sha256 = "146xirzd3nw1sd216y406v1riky9k08b6a0j4kwxrif5zyqa3adc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson pkg-config ninja ];
|
||||
buildInputs = [ wayland obs-studio libX11 ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An obs-studio plugin that allows you to screen capture on wlroots based wayland compositors";
|
||||
homepage = "https://hg.sr.ht/~scoopta/wlrobs";
|
||||
maintainers = with maintainers; [ grahamc V ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
21
pkgs/applications/video/obs-studio/wrapper.nix
Normal file
21
pkgs/applications/video/obs-studio/wrapper.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ obs-studio, symlinkJoin, makeWrapper }:
|
||||
|
||||
{ plugins ? [] }:
|
||||
|
||||
symlinkJoin {
|
||||
name = "wrapped-${obs-studio.name}";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
paths = [ obs-studio ] ++ plugins;
|
||||
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/obs \
|
||||
--set OBS_PLUGINS_PATH "$out/lib/obs-plugins" \
|
||||
--set OBS_PLUGINS_DATA_PATH "$out/share/obs/obs-plugins"
|
||||
'';
|
||||
|
||||
inherit (obs-studio) meta;
|
||||
passthru = obs-studio.passthru // {
|
||||
passthru.unwrapped = obs-studio;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue