surtur
b8a4e7ecf0
* add sanity checks * speed-up build times by taking the honeybadger approach * fix some shellcheck warnings (mostly quotes) * legibility++
59 lines
1.5 KiB
Bash
Executable File
59 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Screen Sharing with OBS Studio on Fedora and Sway
|
|
# ref: https://github.com/hw0lff/screen-share-sway
|
|
|
|
grep -q "alias obs" ~/.zshrc || echo 'alias obs="QT_QPA_PLATFORM=xcb obs"' >> ~/.zshrc
|
|
|
|
V4L2_VERSION="0.12.5"
|
|
U="$HOME/utils"
|
|
MAKEFLAGS="$MAKEFLAGS -j$(nproc)" # take the honeybadger approach
|
|
printf '*- MAKEFLAGS: %s\n*- v4l2 version: %s\n' "$MAKEFLAGS" "$V4L2_VERSION"
|
|
|
|
# grab and build latest v4l2 module
|
|
"$U"/dotfiles/bin/v4l2pls "$V4L2_VERSION"
|
|
|
|
# ref: https://github.com/obsproject/obs-studio/wiki/Install-Instructions#red-hatfedora-based-build-directions
|
|
if [ ! -d "$U/obs-studio" ]; then
|
|
cd "$U" || exit
|
|
git clone --recursive https://github.com/obsproject/obs-studio.git
|
|
fi
|
|
cd "$U"/obs-studio || exit
|
|
git pull
|
|
git submodule update --recursive
|
|
mkdir -pv build && cd build
|
|
cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
|
|
make
|
|
sudo make install
|
|
|
|
|
|
if [ ! -d "$U/obs-v4l2sink" ]; then
|
|
cd "$U" || exit
|
|
git clone https://github.com/CatxFish/obs-v4l2sink.git
|
|
fi
|
|
cd "$U"/obs-v4l2sink || exit
|
|
git pull
|
|
|
|
mkdir -pv build && cd build
|
|
cmake -DLIBOBS_INCLUDE_DIR="$HOME/utils/obs-studio/libobs" -DCMAKE_INSTALL_PREFIX="$HOME/.local" ..
|
|
make
|
|
make install
|
|
|
|
|
|
if [ ! -d "$U/wlrobs" ]; then
|
|
cd "$U" || exit
|
|
hg clone https://hg.sr.ht/~scoopta/wlrobs
|
|
fi
|
|
cd "$U"/wlrobs || exit
|
|
hg pull
|
|
hg update
|
|
if [ ! -d build ]; then
|
|
mkdir -pv build
|
|
meson build
|
|
fi
|
|
meson --reconfigure build
|
|
ninja -C build
|
|
TGT="$HOME/.config/obs-studio/plugins/wlrobs/bin/64bit"
|
|
mkdir -pv "$TGT"
|
|
cp -v build/libwlrobs.so "$TGT"
|