an OBS plugin to display the status of an ongoing cd recording as a dock

Frédéric Chanal de669bbff2 CI: Fix the Ubuntu version that prevents renaming 4 maanden geleden
.github de669bbff2 CI: Fix the Ubuntu version that prevents renaming 3 maanden geleden
build-aux 5f01841da4 build-aux: Replace cmake-format with gersemi 5 maanden geleden
cmake 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 maanden geleden
data b75e67843c add data locale template 5 jaren geleden
src 337dfd4d37 clang-format: Increase column size limit to 120 5 maanden geleden
.clang-format 337dfd4d37 clang-format: Increase column size limit to 120 5 maanden geleden
.gersemirc 5f01841da4 build-aux: Replace cmake-format with gersemi 5 maanden geleden
.gitignore 5f01841da4 build-aux: Replace cmake-format with gersemi 5 maanden geleden
CMakeLists.txt 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 maanden geleden
CMakePresets.json 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 maanden geleden
LICENSE aeb812bc4c Initial commit 7 jaren geleden
README.md a3e963e1fd Update README file 5 maanden geleden
buildspec.json 5da535ca68 cmake: Update CMake files to current state found on obs-studio 5 maanden geleden

README.md

OBS Plugin Template

Introduction

The plugin template is meant to be used as a starting point for OBS Studio plugin development. It includes:

  • Boilerplate plugin source code
  • A CMake project file
  • GitHub Actions workflows and repository actions

Supported Build Environments

Platform Tool
Windows Visal Studio 17 2022
macOS XCode 16.0
Windows, macOS CMake 3.30.5
Ubuntu 24.04 CMake 3.28.3
Ubuntu 24.04 ninja-build
Ubuntu 24.04 pkg-config
Ubuntu 24.04 build-essential

Quick Start

An absolute bare-bones Quick Start Guide is available in the wiki.

Documentation

All documentation can be found in the Plugin Template Wiki.

Suggested reading to get up and running:

GitHub Actions & CI

Default GitHub Actions workflows are available for the following repository actions:

  • push: Run for commits or tags pushed to master or main branches.
  • pr-pull: Run when a Pull Request has been pushed or synchronized.
  • dispatch: Run when triggered by the workflow dispatch in GitHub's user interface.
  • build-project: Builds the actual project and is triggered by other workflows.
  • check-format: Checks CMake and plugin source code formatting and is triggered by other workflows.

The workflows make use of GitHub repository actions (contained in .github/actions) and build scripts (contained in .github/scripts) which are not needed for local development, but might need to be adjusted if additional/different steps are required to build the plugin.

Retrieving build artifacts

Successful builds on GitHub Actions will produce build artifacts that can be downloaded for testing. These artifacts are commonly simple archives and will not contain package installers or installation programs.

Building a Release

To create a release, an appropriately named tag needs to be pushed to the main/master branch using semantic versioning (e.g., 12.3.4, 23.4.5-beta2). A draft release will be created on the associated repository with generated installer packages or installation programs attached as release artifacts.

Signing and Notarizing on macOS

Basic concepts of codesigning and notarization on macOS are explained in the correspodning Wiki article which has a specific section for the GitHub Actions setup.