From e146e822997f6b333307ab86636e644e12f95935 Mon Sep 17 00:00:00 2001 From: Denis Arnst Date: Mon, 1 May 2023 14:11:11 +0200 Subject: [PATCH 1/5] CI: Add Windows artifact --- .github/workflows/build-windows.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/build-windows.yml b/.github/workflows/build-windows.yml index 941ad0f0..12dc153a 100644 --- a/.github/workflows/build-windows.yml +++ b/.github/workflows/build-windows.yml @@ -24,3 +24,8 @@ jobs: run: | cd build make test + - name: Upload artifact + uses: actions/upload-artifact@v3 + with: + name: headsetcontrol.exe + path: build/headsetcontrol.exe From 4f8ecc97ef97cac1404c8500b7425d6274ad43c1 Mon Sep 17 00:00:00 2001 From: Denis Arnst Date: Mon, 1 May 2023 14:16:15 +0200 Subject: [PATCH 2/5] CI: Add Git bots One for staling, one for new device requests --- .github/workflows/repo-device-requested.yml | 27 +++++++++++++++++++++ .github/workflows/repo-stale.yml | 19 +++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 .github/workflows/repo-device-requested.yml create mode 100644 .github/workflows/repo-stale.yml diff --git a/.github/workflows/repo-device-requested.yml b/.github/workflows/repo-device-requested.yml new file mode 100644 index 00000000..1c55bd2d --- /dev/null +++ b/.github/workflows/repo-device-requested.yml @@ -0,0 +1,27 @@ +name: Add comment +on: + issues: + types: + - labeled +jobs: + add-comment: + if: github.event.label.name == 'device-request' + runs-on: ubuntu-latest + permissions: + issues: write + steps: + - name: Add comment + uses: peter-evans/create-or-update-comment@v3 + with: + issue-number: ${{ github.event.issue.number }} + body: | + Hello 👋 + + Thank you for reaching out and expressing interest in having support for a new headset. + We appreciate your willingness to contribute to the project! + + In order to create a implementation for a specific headset, we need to be able to reverse-engineer and test the implementation on that particular device. + Explicitly speaking, only people who actually own the headset, can implement that request. + + If you're interested in adding support for a specific headset, + we recommend taking a look at our [wiki](https://github.com/Sapd/HeadsetControl/wiki/Development) to get started. diff --git a/.github/workflows/repo-stale.yml b/.github/workflows/repo-stale.yml new file mode 100644 index 00000000..fe2703f8 --- /dev/null +++ b/.github/workflows/repo-stale.yml @@ -0,0 +1,19 @@ +name: 'Close stale issues and PRs' +on: + schedule: + - cron: '30 1 * * *' + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v8 + with: + stale-issue-message: 'This issue is stale because it has been open 300 days with no activity. Remove stale label or comment or this will be closed in 60 days.' + stale-pr-message: 'This PR is stale because it has been open 300 days with no activity. Remove stale label or comment or this will be closed in 60 days.' + close-issue-message: 'This issue was closed because it has been stalled with no activity.' + close-pr-message: 'This PR was closed because it has been stalled with no activity.' + days-before-issue-stale: 300 + days-before-pr-stale: 300 + days-before-issue-close: 60 + days-before-pr-close: 60 From 8bcb1f0153b7777b57d96068cadcb200a8a19630 Mon Sep 17 00:00:00 2001 From: Denis Arnst Date: Mon, 1 May 2023 14:16:30 +0200 Subject: [PATCH 3/5] README: Be more explicit about Corsair --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index acb978f2..0fe0fc5d 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ talking. This differs from a simple loopback via PulseAudio as you won't have an - Battery, Inactive time, Sidetone, Voice Prompts (only tested on Linux) - HyperX Cloud Flight Wireless - Battery only (only tested on Linux) -- Corsair **Void** (Every void-version*, regardless whether Elite, Pro, HS70 Wireless) +- Corsair **Void** (Most void-versions*) - Sidetone, Battery (for Wireless), LED on/off, Notification Sound - Logitech G430 - No support in current version (Last working on macOS in commit 41be99379f) @@ -50,7 +50,7 @@ talking. This differs from a simple loopback via PulseAudio as you won't have an For non-supported headsets on Linux: There is a chance that you can set the sidetone via AlsaMixer -* *If your Corsair headset is not recognized, see [Adding a corsair device](https://github.com/Sapd/HeadsetControl/wiki/Adding-a-Corsair-device). HS80 and HS70 wired is not supported, but you can change its sidetone in Alsamixer.* +* *If your Corsair headset is not recognized, see [Adding a corsair device](https://github.com/Sapd/HeadsetControl/wiki/Adding-a-Corsair-device).* HS80 and HS70 wired, RGB Elite, and Virtuso is not supported, but you can change its sidetone in Alsamixer. For more features or other headsets, the protocol of the respective headset must be analyzed further. This can be done by capturing the USB traffic between the device and the original Windows software and analyzing it with WireShark or USBlyzer. For that, you can also use a virtual machine with USB passthrough. The [wiki](https://github.com/Sapd/HeadsetControl/wiki/Development) provides a tutorial. From 676bd804cad5a30337b02ed2545f355839249084 Mon Sep 17 00:00:00 2001 From: Denis Arnst Date: Mon, 1 May 2023 14:22:58 +0200 Subject: [PATCH 4/5] README: Add notice about releases --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 0fe0fc5d..31676dff 100644 --- a/README.md +++ b/README.md @@ -195,6 +195,12 @@ The following additional software can be used to enable control via a GUI Look at the [wiki](https://github.com/Sapd/HeadsetControl/wiki/Development) if you want to contribute and implement another device or improve the software. +## Release Cycle + +HeadsetControl is designed to be a rolling-release software, with minor versions (0.x.0) providing new features in the software itself, and patch versions (0.0.x) fixing issues or adding support for new headsets. Major versions are reserved for bigger rewrites. + +If you want to build and provide packages for it, we recommend building and providing the current git `HEAD` in most cases. This ensures that users have access to the latest features and fixes. + ## Notice HeadsetControl is distributed in the hope that it will be useful,\ From 13ee2b90abf1f09577230645d5f6843a4d761e16 Mon Sep 17 00:00:00 2001 From: Denis Arnst Date: Mon, 1 May 2023 14:29:38 +0200 Subject: [PATCH 5/5] Update repo-device-requested.yml --- .github/workflows/repo-device-requested.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/repo-device-requested.yml b/.github/workflows/repo-device-requested.yml index 1c55bd2d..042d7833 100644 --- a/.github/workflows/repo-device-requested.yml +++ b/.github/workflows/repo-device-requested.yml @@ -23,5 +23,6 @@ jobs: In order to create a implementation for a specific headset, we need to be able to reverse-engineer and test the implementation on that particular device. Explicitly speaking, only people who actually own the headset, can implement that request. - If you're interested in adding support for a specific headset, - we recommend taking a look at our [wiki](https://github.com/Sapd/HeadsetControl/wiki/Development) to get started. + 👉 If you're interested in adding support for a specific headset, we recommend taking a look at our [wiki](https://github.com/Sapd/HeadsetControl/wiki/Development) to get started. + + 📝 If you encounter any problems while using WireShark, we would be more than happy to help. Simply post screenshots and data on your progress.