diff --git a/.github/ISSUE_TEMPLATE/problem.yml b/.github/ISSUE_TEMPLATE/problem.yml index 1033a676..3e37c2e2 100644 --- a/.github/ISSUE_TEMPLATE/problem.yml +++ b/.github/ISSUE_TEMPLATE/problem.yml @@ -18,12 +18,14 @@ body: - "Linux" - "macOS" - "Windows" + - "FlexRadio 8xxx/Aurora" + - "FlexRadio 6xxx" - "Other (not supported)" - type: input id: platform-version attributes: label: Platform Version - description: What version of your operating system are you using? + description: What version of your operating system are you using? (For FlexRadio, use the SmartSDR version.) validations: required: true - type: input diff --git a/.github/workflows/cmake-macos.yml b/.github/workflows/cmake-macos.yml index 8cb6a685..d9401942 100644 --- a/.github/workflows/cmake-macos.yml +++ b/.github/workflows/cmake-macos.yml @@ -85,15 +85,14 @@ jobs: run: BUILD_TYPE=RelWithDebInfo UT_ENABLE=1 UNIV_BUILD=0 BUILD_DEPS=0 ${{matrix.sanitizer}} ./build_osx.sh - name: Workaround macOS permission issues + timeout-minutes: 1 run: | - sqlite3 $HOME/Library/Application\ Support/com.apple.TCC/TCC.db "BEGIN TRANSACTION; INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/opt/off/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); COMMIT;" + ${{github.workspace}}/ci/macos-set-mic-permissions.sh - name: Make sure resource hogs aren't running shell: bash run: | - sudo launchctl unload /System/Library/LaunchDaemons/com.apple.cloudd.plist - sudo mdutil -a -i off - sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist + ${{github.workspace}}/ci/macos-kill-resource-hogs.sh - name: Execute unit tests shell: bash @@ -176,15 +175,14 @@ jobs: run: ./build_macos_sound_drivers.sh - name: Workaround macOS permission issues + timeout-minutes: 1 run: | - sqlite3 $HOME/Library/Application\ Support/com.apple.TCC/TCC.db "BEGIN TRANSACTION; INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/opt/off/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); COMMIT;" + ${{github.workspace}}/ci/macos-set-mic-permissions.sh - name: Make sure resource hogs aren't running shell: bash run: | - sudo launchctl unload /System/Library/LaunchDaemons/com.apple.cloudd.plist - sudo mdutil -a -i off - sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist + ${{github.workspace}}/ci/macos-kill-resource-hogs.sh #- name: Build instrumented freedv-gui # shell: bash @@ -274,15 +272,14 @@ jobs: run: ./build_macos_sound_drivers.sh - name: Workaround macOS permission issues + timeout-minutes: 1 run: | - sqlite3 $HOME/Library/Application\ Support/com.apple.TCC/TCC.db "BEGIN TRANSACTION; INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/opt/off/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); COMMIT;" + ${{github.workspace}}/ci/macos-set-mic-permissions.sh - name: Make sure resource hogs aren't running shell: bash run: | - sudo launchctl unload /System/Library/LaunchDaemons/com.apple.cloudd.plist - sudo mdutil -a -i off - sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist + ${{github.workspace}}/ci/macos-kill-resource-hogs.sh - name: Sanity check RADE shell: bash diff --git a/ci/macos-kill-resource-hogs.sh b/ci/macos-kill-resource-hogs.sh new file mode 100755 index 00000000..f4d53b7f --- /dev/null +++ b/ci/macos-kill-resource-hogs.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +sudo launchctl unload /System/Library/LaunchDaemons/com.apple.cloudd.plist +sudo mdutil -a -i off +sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist diff --git a/ci/macos-set-mic-permissions.sh b/ci/macos-set-mic-permissions.sh new file mode 100755 index 00000000..8f85e9e7 --- /dev/null +++ b/ci/macos-set-mic-permissions.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +until sqlite3 $HOME/Library/Application\ Support/com.apple.TCC/TCC.db "BEGIN TRANSACTION; INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); INSERT OR IGNORE INTO access VALUES ('kTCCServiceMicrophone','/opt/off/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1687786159,NULL,NULL,'UNUSED',1687786159); COMMIT;"; do + echo "Failed, trying again" + sleep 1 +done