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 diff --git a/.github/workflows/repo-device-requested.yml b/.github/workflows/repo-device-requested.yml new file mode 100644 index 00000000..042d7833 --- /dev/null +++ b/.github/workflows/repo-device-requested.yml @@ -0,0 +1,28 @@ +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. + + 📝 If you encounter any problems while using WireShark, we would be more than happy to help. Simply post screenshots and data on your progress. 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 diff --git a/README.md b/README.md index acb978f2..31676dff 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. @@ -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,\