pax_global_header00006660000000000000000000000064145043370360014517gustar00rootroot0000000000000052 comment=f733b752f113c8bf370d60f9072d981f24b08ab3 blur-filter-obs-plugin-1.0.1/000077500000000000000000000000001450433703600160225ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.clang-format000066400000000000000000000063471450433703600204070ustar00rootroot00000000000000# please use clang-format version 8 or later Standard: Cpp11 AccessModifierOffset: -8 AlignAfterOpenBracket: Align AlignConsecutiveAssignments: false AlignConsecutiveDeclarations: false AlignEscapedNewlines: Left AlignOperands: true AlignTrailingComments: true #AllowAllArgumentsOnNextLine: false # requires clang-format 9 #AllowAllConstructorInitializersOnNextLine: false # requires clang-format 9 AllowAllParametersOfDeclarationOnNextLine: false AllowShortBlocksOnASingleLine: false AllowShortCaseLabelsOnASingleLine: false AllowShortFunctionsOnASingleLine: Inline AllowShortIfStatementsOnASingleLine: false #AllowShortLambdasOnASingleLine: Inline # requires clang-format 9 AllowShortLoopsOnASingleLine: false AlwaysBreakAfterDefinitionReturnType: None AlwaysBreakAfterReturnType: None AlwaysBreakBeforeMultilineStrings: false AlwaysBreakTemplateDeclarations: false BinPackArguments: true BinPackParameters: true BraceWrapping: AfterClass: false AfterControlStatement: false AfterEnum: false AfterFunction: true AfterNamespace: false AfterObjCDeclaration: false AfterStruct: false AfterUnion: false AfterExternBlock: false BeforeCatch: false BeforeElse: false IndentBraces: false SplitEmptyFunction: true SplitEmptyRecord: true SplitEmptyNamespace: true BreakBeforeBinaryOperators: None BreakBeforeBraces: Custom BreakBeforeTernaryOperators: true BreakConstructorInitializers: BeforeColon BreakStringLiterals: false # apparently unpredictable ColumnLimit: 80 CompactNamespaces: false ConstructorInitializerAllOnOneLineOrOnePerLine: true ConstructorInitializerIndentWidth: 8 ContinuationIndentWidth: 8 Cpp11BracedListStyle: true DerivePointerAlignment: false DisableFormat: false FixNamespaceComments: false ForEachMacros: - 'json_object_foreach' - 'json_object_foreach_safe' - 'json_array_foreach' - 'HASH_ITER' IncludeBlocks: Preserve IndentCaseLabels: false IndentPPDirectives: None IndentWidth: 8 IndentWrappedFunctionNames: false KeepEmptyLinesAtTheStartOfBlocks: true MaxEmptyLinesToKeep: 1 NamespaceIndentation: None #ObjCBinPackProtocolList: Auto # requires clang-format 7 ObjCBlockIndentWidth: 8 ObjCSpaceAfterProperty: true ObjCSpaceBeforeProtocolList: true PenaltyBreakAssignment: 10 PenaltyBreakBeforeFirstCallParameter: 30 PenaltyBreakComment: 10 PenaltyBreakFirstLessLess: 0 PenaltyBreakString: 10 PenaltyExcessCharacter: 100 PenaltyReturnTypeOnItsOwnLine: 60 PointerAlignment: Right ReflowComments: false SortIncludes: false SortUsingDeclarations: false SpaceAfterCStyleCast: false #SpaceAfterLogicalNot: false # requires clang-format 9 SpaceAfterTemplateKeyword: false SpaceBeforeAssignmentOperators: true #SpaceBeforeCtorInitializerColon: true # requires clang-format 7 #SpaceBeforeInheritanceColon: true # requires clang-format 7 SpaceBeforeParens: ControlStatements #SpaceBeforeRangeBasedForLoopColon: true # requires clang-format 7 SpaceInEmptyParentheses: false SpacesBeforeTrailingComments: 1 SpacesInAngles: false SpacesInCStyleCastParentheses: false SpacesInContainerLiterals: false SpacesInParentheses: false SpacesInSquareBrackets: false #StatementMacros: # requires clang-format 8 # - 'Q_OBJECT' TabWidth: 8 #TypenameMacros: # requires clang-format 9 # - 'DARRAY' UseTab: ForContinuationAndIndentation --- Language: ObjCblur-filter-obs-plugin-1.0.1/.cmake-format.json000066400000000000000000000014611450433703600213430ustar00rootroot00000000000000{ "format": { "line_width": 120, "tab_size": 2, "enable_sort": true, "autosort": true }, "additional_commands": { "find_qt": { "flags": [], "kwargs": { "COMPONENTS": "+", "COMPONENTS_WIN": "+", "COMPONENTS_MACOS": "+", "COMPONENTS_LINUX": "+" } }, "set_target_properties_obs": { "pargs": 1, "flags": [], "kwargs": { "PROPERTIES": { "kwargs": { "PREFIX": 1, "OUTPUT_NAME": 1, "FOLDER": 1, "VERSION": 1, "SOVERSION": 1, "AUTOMOC": 1, "AUTOUIC": 1, "AUTORCC": 1, "AUTOUIC_SEARCH_PATHS": 1, "BUILD_RPATH": 1, "INSTALL_RPATH": 1 } } } } } }blur-filter-obs-plugin-1.0.1/.github/000077500000000000000000000000001450433703600173625ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/000077500000000000000000000000001450433703600210225ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/build-plugin/000077500000000000000000000000001450433703600234155ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/build-plugin/action.yaml000066400000000000000000000062661450433703600255700ustar00rootroot00000000000000name: 'Set up and build plugin' description: 'Builds the plugin for specified architecture and build config' inputs: target: description: 'Target architecture for dependencies' required: true config: description: 'Build configuration' required: false default: 'RelWithDebInfo' codesign: description: 'Enable codesigning (macOS only)' required: false default: 'false' codesignIdent: description: 'Developer ID for application codesigning (macOS only)' required: false default: '-' workingDirectory: description: 'Working directory for packaging' required: false default: ${{ github.workspace }} runs: using: composite steps: - name: Run macOS Build if: runner.os == 'macOS' shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ inputs.workingDirectory }} env: CODESIGN_IDENT: ${{ inputs.codesignIdent }} CODESIGN_TEAM: ${{ inputs.codesignTeam }} run: | : Run macOS Build local -a build_args=(--config ${{ inputs.config }}) if (( ${+RUNNER_DEBUG} )) build_args+=(--debug) if [[ '${{ inputs.codesign }}' == 'true' ]] build_args+=(--codesign) .github/scripts/build-macos ${build_args} - name: Install Dependencies 🛍️ if: runner.os == 'Linux' shell: bash run: | : Install Dependencies 🛍️ echo ::group::Install Dependencies eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH brew install --quiet zsh echo ::endgroup:: - name: Run Ubuntu Build if: runner.os == 'Linux' shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ inputs.workingDirectory }} run: | : Run Ubuntu Build local -a build_args=( --target linux-${{ inputs.target }} --config ${{ inputs.config }} ) if (( ${+RUNNER_DEBUG} )) build_args+=(--debug) .github/scripts/build-linux ${build_args} - name: Run Windows Build if: runner.os == 'Windows' shell: pwsh run: | # Run Windows Build if ( $Env:RUNNER_DEBUG -ne $null ) { Set-PSDebug -Trace 1 } $BuildArgs = @{ Target = '${{ inputs.target }}' Configuration = '${{ inputs.config }}' } .github/scripts/Build-Windows.ps1 @BuildArgs - name: Create Summary 📊 if: contains(fromJSON('["Linux", "macOS"]'),runner.os) shell: zsh --no-rcs --errexit --pipefail {0} env: CCACHE_CONFIGPATH: ${{ inputs.workingDirectory }}/.ccache.conf run: | : Create Summary 📊 local -a ccache_data if (( ${+RUNNER_DEBUG} )) { setopt XTRACE ccache_data=("${(fA)$(ccache -s -vv)}") } else { ccache_data=("${(fA)$(ccache -s)}") } print '### ${{ runner.os }} Ccache Stats (${{ inputs.target }})' >> $GITHUB_STEP_SUMMARY print '```' >> $GITHUB_STEP_SUMMARY for line (${ccache_data}) { print ${line} >> $GITHUB_STEP_SUMMARY } print '```' >> $GITHUB_STEP_SUMMARY blur-filter-obs-plugin-1.0.1/.github/actions/package-plugin/000077500000000000000000000000001450433703600237115ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/package-plugin/action.yaml000066400000000000000000000072411450433703600260560ustar00rootroot00000000000000name: 'Package plugin' description: 'Packages the plugin for specified architecture and build config.' inputs: target: description: 'Build target for dependencies' required: true config: description: 'Build configuration' required: false default: 'RelWithDebInfo' codesign: description: 'Enable codesigning (macOS only)' required: false default: 'false' notarize: description: 'Enable notarization (macOS only)' required: false default: 'false' codesignIdent: description: 'Developer ID for application codesigning (macOS only)' required: false default: '-' installerIdent: description: 'Developer ID for installer package codesigning (macOS only)' required: false default: '' codesignTeam: description: 'Developer team for codesigning (macOS only)' required: false default: '' codesignUser: description: 'Apple ID username for notarization (macOS only)' required: false default: '' codesignPass: description: 'Apple ID password for notarization (macOS only)' required: false default: '' package: description: 'Create Windows or macOS installation package' required: false default: 'false' workingDirectory: description: 'Working directory for packaging' required: false default: ${{ github.workspace }} runs: using: composite steps: - name: Run macOS Packaging if: runner.os == 'macOS' shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ inputs.workingDirectory }} env: CODESIGN_IDENT: ${{ inputs.codesignIdent }} CODESIGN_IDENT_INSTALLER: ${{ inputs.installerIdent }} CODESIGN_TEAM: ${{ inputs.codesignTeam }} CODESIGN_IDENT_USER: ${{ inputs.codesignUser }} CODESIGN_IDENT_PASS: ${{ inputs.codesignPass }} run: | : Run macOS Packaging local -a package_args=(--config ${{ inputs.config }}) if (( ${+RUNNER_DEBUG} )) package_args+=(--debug) if [[ '${{ inputs.codesign }}' == 'true' ]] package_args+=(--codesign) if [[ '${{ inputs.notarize }}' == 'true' ]] package_args+=(--notarize) if [[ '${{ inputs.package }}' == 'true' ]] package_args+=(--package) .github/scripts/package-macos ${package_args} - name: Install Dependencies 🛍️ if: runner.os == 'Linux' shell: bash run: | : Install Dependencies 🛍️ echo ::group::Install Dependencies eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH brew install --quiet zsh echo ::endgroup:: - name: Run Ubuntu Packaging if: runner.os == 'Linux' shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ inputs.workingDirectory }} run: | : Run Ubuntu Packaging package_args=( --target linux-${{ inputs.target }} --config ${{ inputs.config }} ) if (( ${+RUNNER_DEBUG} )) build_args+=(--debug) if [[ '${{ inputs.package }}' == 'true' ]] package_args+=(--package) .github/scripts/package-linux ${package_args} - name: Run Windows Packaging if: runner.os == 'Windows' shell: pwsh run: | # Run Windows Packaging if ( $Env:RUNNER_DEBUG -ne $null ) { Set-PSDebug -Trace 1 } $PackageArgs = @{ Target = '${{ inputs.target }}' Configuration = '${{ inputs.config }}' } if ( '${{ inputs.package }}' -eq 'true' ) { $PackageArgs += @{BuildInstaller = $true} } .github/scripts/Package-Windows.ps1 @PackageArgs blur-filter-obs-plugin-1.0.1/.github/actions/run-clang-format/000077500000000000000000000000001450433703600241765ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/run-clang-format/action.yaml000066400000000000000000000043051450433703600263410ustar00rootroot00000000000000name: Run clang-format description: Runs clang-format and checks for any changes introduced by it inputs: failCondition: description: Controls whether failed checks also fail the workflow run required: false default: 'never' workingDirectory: description: Working directory for checks required: false default: ${{ github.workspace }} runs: using: composite steps: - name: Check Runner Operating System 🏃‍♂️ if: runner.os == 'Windows' shell: bash run: | : Check Runner Operating System 🏃‍♂️ echo "::notice::run-clang-format action requires a macOS-based or Linux-based runner." exit 2 - name: Install Dependencies 🛍️ if: runner.os == 'Linux' shell: bash run: | : Install Dependencies 🛍️ echo ::group::Install Dependencies eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH echo "/home/linuxbrew/.linuxbrew/opt/clang-format@13/bin" >> $GITHUB_PATH brew install --quiet zsh echo ::endgroup:: - name: Run clang-format 🐉 id: result shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ inputs.workingDirectory }} env: GITHUB_EVENT_FORCED: ${{ github.event.forced }} GITHUB_REF_BEFORE: ${{ github.event.before }} run: | : Run clang-format 🐉 if (( ${+RUNNER_DEBUG} )) setopt XTRACE local -a changes=($(git diff --name-only HEAD~1 HEAD)) case ${GITHUB_EVENT_NAME} { pull_request) changes=($(git diff --name-only origin/${GITHUB_BASE_REF} HEAD)) ;; push) if [[ ${GITHUB_EVENT_FORCED} != true ]] changes=($(git diff --name-only ${GITHUB_REF_BEFORE} HEAD)) ;; *) ;; } if (( ${changes[(I)(*.c|*.h|*.cpp|*.hpp|*.m|*.mm)]} )) { echo ::group::Install clang-format-13 brew install --quiet obsproject/tools/clang-format@13 echo ::endgroup:: echo ::group::Run clang-format-13 ./build-aux/run-clang-format --fail-${{ inputs.failCondition }} --check echo ::endgroup:: } blur-filter-obs-plugin-1.0.1/.github/actions/run-cmake-format/000077500000000000000000000000001450433703600241725ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/run-cmake-format/action.yaml000066400000000000000000000041021450433703600263300ustar00rootroot00000000000000name: Run cmake-format description: Runs cmake-format and checks for any changes introduced by it inputs: failCondition: description: Controls whether failed checks also fail the workflow run required: false default: 'never' workingDirectory: description: Working directory for checks required: false default: ${{ github.workspace }} runs: using: composite steps: - name: Check Runner Operating System 🏃‍♂️ if: runner.os == 'Windows' shell: bash run: | : Check Runner Operating System 🏃‍♂️ echo "::notice::run-cmake-format action requires a macOS-based or Linux-based runner." exit 2 - name: Install Dependencies 🛍️ if: runner.os == 'Linux' shell: bash run: | : Install Dependencies 🛍️ echo ::group::Install Dependencies eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" echo "/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin" >> $GITHUB_PATH brew install --quiet zsh echo ::endgroup:: - name: Run cmake-format 🎛️ id: result shell: zsh --no-rcs --errexit --pipefail {0} working-directory: ${{ github.workspace }} env: GITHUB_EVENT_FORCED: ${{ github.event.forced }} GITHUB_REF_BEFORE: ${{ github.event.before }} run: | : Run cmake-format 🎛️ if (( ${+RUNNER_DEBUG} )) setopt XTRACE local -a changes=($(git diff --name-only HEAD~1 HEAD)) case ${GITHUB_EVENT_NAME} { pull_request) changes=($(git diff --name-only origin/${GITHUB_BASE_REF} HEAD)) ;; push) if [[ ${GITHUB_EVENT_FORCED} != true ]] changes=($(git diff --name-only ${GITHUB_REF_BEFORE} HEAD)) ;; *) ;; } if (( ${changes[(I)*.cmake|*CMakeLists.txt]} )) { echo ::group::Install cmakelang pip3 install cmakelang echo ::endgroup:: echo ::group::Run cmake-format ./build-aux/run-cmake-format --fail-${{ inputs.failCondition }} --check echo ::endgroup:: } blur-filter-obs-plugin-1.0.1/.github/actions/setup-macos-codesigning/000077500000000000000000000000001450433703600255515ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/actions/setup-macos-codesigning/action.yaml000066400000000000000000000146031450433703600277160ustar00rootroot00000000000000name: Set up macOS codesigning description: Sets up code signing certificates, provisioning profiles, and notarization information inputs: codesignIdentity: description: Codesigning identity required: true installerIdentity: description: Codesigning identity for package installer required: false codesignCertificate: description: PKCS12 certificate in base64 format required: true certificatePassword: description: Password required to install PKCS12 certificate required: true keychainPassword: description: Password to use for temporary keychain required: false notarizationUser: description: Apple ID to use for notarization required: false notarizationPassword: description: Application password for notarization provisioningProfile: description: Provisioning profile in base64 format required: false outputs: haveCodesignIdent: description: True if necessary codesigning credentials were found value: ${{ steps.codesign.outputs.haveCodesignIdent }} haveProvisioningProfile: description: True if necessary provisioning profile credentials were found value: ${{ steps.provisioning.outputs.haveProvisioningProfile }} haveNotarizationUser: description: True if necessary notarization credentials were found value: ${{ steps.notarization.outputs.haveNotarizationUser }} codesignIdent: description: Codesigning identity value: ${{ steps.codesign.outputs.codesignIdent }} installerIdent: description: Codesigning identity for package installer value: ${{ steps.codesign.outputs.installerIdent }} codesignTeam: description: Codesigning team value: ${{ steps.codesign.outputs.codesignTeam }} runs: using: composite steps: - name: Check Runner Operating System 🏃‍♂️ if: runner.os != 'macOS' shell: bash run: | : Check Runner Operating System 🏃‍♂️ echo "setup-macos-codesigning action requires a macOS-based runner." exit 2 - name: macOS Codesigning ✍️ shell: zsh --no-rcs --errexit --pipefail {0} id: codesign env: MACOS_SIGNING_IDENTITY: ${{ inputs.codesignIdentity }} MACOS_SIGNING_IDENTITY_INSTALLER: ${{ inputs.installerIdentity}} MACOS_SIGNING_CERT: ${{ inputs.codesignCertificate }} MAOCS_SIGNING_CERT_PASSWORD: ${{ inputs.certificatePassword }} MACOS_KEYCHAIN_PASSWORD: ${{ inputs.keychainPassword }} run: | : macOS Codesigning ✍️ if (( ${+RUNNER_DEBUG} )) setopt XTRACE if [[ ${MACOS_SIGNING_IDENTITY} && ${MACOS_SIGNING_IDENTITY_INSTALLER} && ${MACOS_SIGNING_CERT} ]] { print 'haveCodesignIdent=true' >> $GITHUB_OUTPUT local -r certificate_path="${RUNNER_TEMP}/build_certificate.p12" local -r keychain_path="${RUNNER_TEMP}/app-signing.keychain-db" print -n "${MACOS_SIGNING_CERT}" | base64 --decode --output="${certificate_path}" : "${MACOS_KEYCHAIN_PASSWORD:="$(print ${RANDOM} | sha1sum | head -c 32)"}" print '::group::Keychain setup' security create-keychain -p "${MACOS_KEYCHAIN_PASSWORD}" ${keychain_path} security set-keychain-settings -lut 21600 ${keychain_path} security unlock-keychain -p "${MACOS_KEYCHAIN_PASSWORD}" ${keychain_path} security import "${certificate_path}" -P "${MAOCS_SIGNING_CERT_PASSWORD}" -A \ -t cert -f pkcs12 -k ${keychain_path} \ -T /usr/bin/codesign -T /usr/bin/security -T /usr/bin/xcrun security set-key-partition-list -S 'apple-tool:,apple:' -k "${MACOS_KEYCHAIN_PASSWORD}" \ ${keychain_path} &> /dev/null security list-keychain -d user -s ${keychain_path} 'login-keychain' print '::endgroup::' local -r team_id="${${MACOS_SIGNING_IDENTITY##* }//(\(|\))/}" print "codesignIdent=${MACOS_SIGNING_IDENTITY}" >> $GITHUB_OUTPUT print "installerIdent=${MACOS_SIGNING_IDENTITY_INSTALLER}" >> $GITHUB_OUTPUT print "MACOS_KEYCHAIN_PASSWORD=${MACOS_KEYCHAIN_PASSWORD}" >> $GITHUB_ENV print "codesignTeam=${team_id}" >> $GITHUB_OUTPUT } else { print 'haveCodesignIdent=false' >> $GITHUB_OUTPUT } - name: Provisioning Profile 👤 shell: zsh --no-rcs --errexit --pipefail {0} id: provisioning if: ${{ fromJSON(steps.codesign.outputs.haveCodesignIdent) }} env: MACOS_SIGNING_PROVISIONING_PROFILE: ${{ inputs.provisioningProfile }} run: | : Provisioning Profile 👤 if (( ${+RUNNER_DEBUG} )) setopt XTRACE if [[ ${MACOS_SIGNING_PROVISIONING_PROFILE} ]] { print 'haveProvisioningProfile=true' >> $GITHUB_OUTPUT local -r profile_path="${RUNNER_TEMP}/build_profile.provisionprofile" print -n "${MACOS_SIGNING_PROVISIONING_PROFILE}" \ | base64 --decode --output ${profile_path} print '::group::Provisioning Profile Setup' mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles security cms -D -i ${profile_path} -o ${RUNNER_TEMP}/build_profile.plist local -r uuid="$(plutil -extract UUID raw ${RUNNER_TEMP}/build_profile.plist)" local -r team_id="$(plutil -extract TeamIdentifier.0 raw -expect string ${RUNNER_TEMP}/build_profile.plist)" if [[ ${team_id} != '${{ steps.codesign.codesignTeam }}' ]] { print '::notice::Code Signing team in provisioning profile does not match certificate.' } cp ${profile_path} ~/Library/MobileDevice/Provisioning\ Profiles/${uuid}.provisionprofile print "provisioningProfileUUID=${uuid}" >> $GITHUB_OUTPUT print '::endgroup::' } else { print 'haveProvisioningProfile=false' >> $GITHUB_OUTPUT } - name: Notarization 🧑‍💼 shell: zsh --no-rcs --errexit --pipefail {0} id: notarization if: ${{ fromJSON(steps.codesign.outputs.haveCodesignIdent) }} env: MACOS_NOTARIZATION_USERNAME: ${{ inputs.notarizationUser }} MACOS_NOTARIZATION_PASSWORD: ${{ inputs.notarizationPassword }} run: | : Notarization 🧑‍💼 if (( ${+RUNNER_DEBUG} )) setopt XTRACE if [[ ${MACOS_NOTARIZATION_USERNAME} && ${MACOS_NOTARIZATION_PASSWORD} ]] { print 'haveNotarizationUser=true' >> $GITHUB_OUTPUT } else { print 'haveNotarizationUser=false' >> $GITHUB_OUTPUT } blur-filter-obs-plugin-1.0.1/.github/scripts/000077500000000000000000000000001450433703600210515ustar00rootroot00000000000000blur-filter-obs-plugin-1.0.1/.github/scripts/.Aptfile000066400000000000000000000001651450433703600224400ustar00rootroot00000000000000package 'cmake' package 'ccache' package 'git' package 'jq' package 'ninja-build', bin: 'ninja' package 'pkg-config' blur-filter-obs-plugin-1.0.1/.github/scripts/.Brewfile000066400000000000000000000001231450433703600226050ustar00rootroot00000000000000brew "ccache" brew "coreutils" brew "cmake" brew "git" brew "jq" brew "xcbeautify" blur-filter-obs-plugin-1.0.1/.github/scripts/.Wingetfile000066400000000000000000000001501450433703600231430ustar00rootroot00000000000000package 'cmake', path: 'Cmake\bin', bin: 'cmake' package 'innosetup', path: 'Inno Setup 6', bin: 'iscc' blur-filter-obs-plugin-1.0.1/.github/scripts/.build.zsh000077500000000000000000000210231450433703600227550ustar00rootroot00000000000000#!/usr/bin/env zsh builtin emulate -L zsh setopt EXTENDED_GLOB setopt PUSHD_SILENT setopt ERR_EXIT setopt ERR_RETURN setopt NO_UNSET setopt PIPE_FAIL setopt NO_AUTO_PUSHD setopt NO_PUSHD_IGNORE_DUPS setopt FUNCTION_ARGZERO ## Enable for script debugging # setopt WARN_CREATE_GLOBAL # setopt WARN_NESTED_VAR # setopt XTRACE autoload -Uz is-at-least && if ! is-at-least 5.2; then print -u2 -PR "${CI:+::error::}%F{1}${funcstack[1]##*/}:%f Running on Zsh version %B${ZSH_VERSION}%b, but Zsh %B5.2%b is the minimum supported version. Upgrade Zsh to fix this issue." exit 1 fi TRAPEXIT() { local return_value=$? if (( ${+CI} )) unset NSUnbufferedIO return ${return_value} } TRAPZERR() { if (( ${_loglevel:-3} > 2 )) { print -u2 -PR "${CI:+::error::}%F{1} ✖︎ script execution error%f" print -PR -e " Callstack: ${(j:\n :)funcfiletrace} " } exit 2 } build() { if (( ! ${+SCRIPT_HOME} )) typeset -g SCRIPT_HOME=${ZSH_ARGZERO:A:h} local host_os=${${(s:-:)ZSH_ARGZERO:t:r}[2]} local project_root=${SCRIPT_HOME:A:h:h} local buildspec_file=${project_root}/buildspec.json fpath=("${SCRIPT_HOME}/utils.zsh" ${fpath}) autoload -Uz log_group log_info log_error log_output set_loglevel check_${host_os} setup_ccache if [[ ! -r ${buildspec_file} ]] { log_error \ 'No buildspec.json found. Please create a build specification for your project.' return 2 } typeset -g -a skips=() local -i verbosity=1 local -r _version='2.0.0' local -r -a _valid_targets=( macos-universal linux-x86_64 linux-aarch64 ) local target local config='RelWithDebInfo' local -r -a _valid_configs=(Debug RelWithDebInfo Release MinSizeRel) local -i codesign=0 if [[ ${host_os} == linux ]] { local -r -a _valid_generators=(Ninja 'Unix Makefiles') local generator='Ninja' local -r _usage_host=" %F{yellow} Additional options for Linux builds%f ----------------------------------------------------------------------------- %B--generator%b Specify build system to generate Available generators: - Ninja - Unix Makefiles" } elif [[ ${host_os} == macos ]] { local -r _usage_host=" %F{yellow} Additional options for macOS builds%f ----------------------------------------------------------------------------- %B-s | --codesign%b Enable codesigning (macOS only)" } local -i print_config=0 local -r _usage=" Usage: %B${functrace[1]%:*}%b