Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Battery level support #735

Open
wants to merge 104 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
4ee95d5
Fix cross-compilation and enable universal app support.
overcurrent Sep 12, 2021
43f07a5
Add build script to streamline notarization process.
overcurrent Sep 13, 2021
ec7b849
Update README file to reflect new release.sh build script.
overcurrent Sep 13, 2021
191d84c
Merge branch 'master' of https://github.com/overcurrent/razer-macos i…
overcurrent Sep 18, 2021
01c50fe
Add custom iohook repo that provides x64 and arm64 prebuild for elect…
overcurrent Sep 18, 2021
2dfe258
Add iohook as submodule properly to this branch.
overcurrent Sep 18, 2021
0f98de2
Fine-tuning README
overcurrent Sep 18, 2021
8ab9c1c
Merge branch 'cross-compilation' of https://github.com/overcurrent/ra…
overcurrent Sep 18, 2021
506e29f
Fix iohook compilation under universal bundle.
overcurrent Sep 19, 2021
4228988
Clarification to README.md regarding ad-hoc signing and universal pac…
overcurrent Sep 19, 2021
43dabc9
Merge pull request #456 from overcurrent/universal-app-support
1kc Oct 1, 2021
35ee1ad
Huntsman V2 Analog Support
WrathofthePast Oct 6, 2021
a6fbca3
Updated README.md
WrathofthePast Oct 15, 2021
ff12d29
Update README.md
rudrankriyam Oct 28, 2021
6ddc72b
Update huntsman_v2_analog.json
WrathofthePast Nov 7, 2021
2fdb7d2
Support for the New DeathAdder Essential
WrathofthePast Nov 8, 2021
44ff3e0
Merge pull request #458 from WrathofthePast/Huntsman-V2-Analog-Support
1kc Nov 9, 2021
f58e3fc
Merge pull request #484 from WrathofthePast/master
1kc Nov 9, 2021
872dfcb
Huntsman v2 support (#3)
WrathofthePast Nov 9, 2021
2d8ccbd
Update huntsman_v2.json
WrathofthePast Nov 10, 2021
937678e
Update librazermacos
WrathofthePast Nov 11, 2021
e8e8c2f
Merge pull request #486 from WrathofthePast/master
1kc Nov 12, 2021
de4d6d5
Merge branch 'master' into patch-1
1kc Nov 12, 2021
3af07d1
Merge pull request #475 from rudrankriyam/patch-1
1kc Nov 12, 2021
ccc27ae
v0.4.6 built for monterey
1kc Nov 12, 2021
f807fe9
Merge branch 'master' of github.com:1kc/razer-macos
1kc Nov 12, 2021
778776b
Bump electron from 11.2.2 to 11.5.0
dependabot[bot] Nov 12, 2021
34bad75
Added missing features for Razer Deathadder Chroma
AngryKiller Nov 20, 2021
5eebae5
Implement Thunderbolt 4 Dock Chroma support
Doridian Nov 21, 2021
3b2bc00
Merge pull request #496 from Doridian/master
1kc Dec 2, 2021
2db28f6
Merge pull request #495 from AngryKiller/master
1kc Dec 2, 2021
1101689
Merge pull request #462 from 1kc/dependabot/npm_and_yarn/electron-11.5.0
1kc Dec 2, 2021
1ca697d
create branch out of current master, make it version 0.4.7 and ready …
overcurrent Dec 11, 2021
a0440c2
Merge pull request #506 from overcurrent/0.4.7_for_code_signing
1kc Dec 13, 2021
264385f
Updated DeathAdder Essential (2021)
WrathofthePast Dec 15, 2021
4389364
Update abyssus.json
WrathofthePast Dec 15, 2021
c97e6f8
Update mamba_wireless_wired.json
WrathofthePast Dec 15, 2021
5b4ade1
Update mamba_wireless.json
WrathofthePast Dec 15, 2021
6efa6e0
Update mamba_wireless_wired.json
WrathofthePast Dec 15, 2021
2316765
Updated DeathAdder Essential (2021)
WrathofthePast Dec 15, 2021
3ceb2cf
Update README.md
WrathofthePast Dec 16, 2021
bdae7fa
Two more frontend Link Fixes
WrathofthePast Dec 16, 2021
43c01e9
Merge branch 'Fix-Abyssus-Link' of https://github.com/WrathofthePast/…
overcurrent Dec 16, 2021
57ab311
Merge branch 'Mamba-Wireless-Parity-Improvement' of https://github.co…
overcurrent Dec 16, 2021
81b0131
update razer-macos version number to 0.4.8
overcurrent Dec 16, 2021
005b056
Merge pull request #515 from overcurrent/0.4.8_for_code_signing
1kc Dec 17, 2021
6a8e9a6
Merge branch '1kc:master' into Cleanup
WrathofthePast Dec 17, 2021
347c3d1
Cynosa Chroma Pro Support
WrathofthePast Dec 17, 2021
fc650d6
Update README.md
WrathofthePast Dec 17, 2021
b1cfc23
Add 'featuresMissing' to Frontend (mice only)
WrathofthePast Dec 17, 2021
dcc8b44
More Link Fixes
WrathofthePast Dec 17, 2021
78d97c9
Basilisk Essential support
Dec 22, 2021
8bf5db5
Merge pull request #525 from butenkodev/master
1kc Jan 22, 2022
09322ae
Merge pull request #517 from WrathofthePast/Cynosa-Chroma-Pro-Support
1kc Jan 22, 2022
2067e66
Merge pull request #519 from WrathofthePast/Add-'featuresMissing'-to-…
1kc Jan 22, 2022
0d466d7
Merge pull request #520 from WrathofthePast/More-Link-Fixes
1kc Jan 22, 2022
6de49fb
Merge branch 'master' into Cleanup
1kc Jan 22, 2022
5f8ff0b
Merge pull request #518 from WrathofthePast/Cleanup
1kc Jan 22, 2022
3eea9b3
Update deathadder_chroma.json
WrathofthePast Jan 22, 2022
e6621ed
Add support for Huntsman v2 TKL
PrivateiFox Feb 5, 2022
6152fec
Update librazermacos to add huntsman v2 tkl support from fork
PrivateiFox Feb 5, 2022
d129ae6
change README.md to clarify the location of the Refresh Device List o…
Feb 8, 2022
689dfae
Merge pull request #568 from bottydim/clean_readme
1kc Feb 12, 2022
1ab63e8
Update librazermacos to add huntsman v2 tkl support from master
PrivateiFox Feb 18, 2022
4e1c10c
Update src/devices/huntsman_v2_tkl.json
WrathofthePast Feb 18, 2022
7a84da3
Update README.md
WrathofthePast Feb 18, 2022
4bbcf09
Update .gitmodules
WrathofthePast Feb 20, 2022
edbc822
Center wheel and ripple effects by matching Huntsman TE cols
PrivateiFox Feb 20, 2022
b353cf2
Merge branch '1kc:master' into WrathofthePast-patch-1
WrathofthePast Feb 22, 2022
d1d7d5b
feat: add UI support for Razer Basilisk V3
fgreinacher Mar 11, 2022
29ed467
Add Support for Huntsman Mini (JP), main module
Mar 13, 2022
4c7b077
Add Support for Huntsman Mini (JP), submodule
Mar 13, 2022
0be7698
Merge pull request #552 from WrathofthePast/Add-'featuresMissing'-to-…
1kc Mar 13, 2022
1884742
Merge pull request #588 from nodahayato/master
1kc Mar 13, 2022
08ff374
Merge pull request #577 from WrathofthePast/WrathofthePast-patch-1
1kc Mar 13, 2022
ac04835
fixed librazermacos submodule
1kc Mar 13, 2022
22f2baa
updated librazermacos
1kc Mar 13, 2022
27d3ae0
Huntsman v2 TKL by PrivateiFox
1kc Mar 13, 2022
57dd09a
Orochi V2 Support by WrathofthePast
1kc Mar 13, 2022
3bca699
Merge pull request #587 from fgreinacher/feat/basilisk-3
1kc Mar 13, 2022
03d08c7
Update broken link and match text to link content
RosemaryOrchard Mar 16, 2022
d056c58
Fix Complier for macOS 12.3+
WrathofthePast Mar 21, 2022
6b1499a
Update mamba_te_wired.json
WrathofthePast Mar 27, 2022
5a99134
Fix Huntsman V2 Analog Matrix Dimensions
WrathofthePast Mar 27, 2022
f6cc372
Fix Basilisk V3 Support
WrathofthePast Mar 29, 2022
e94c3ff
Additional Basilisk V3 Support Fix
WrathofthePast Mar 29, 2022
e52bb6c
Add support for BlackWidow v3 mini hyperspeed.
dragonpod Apr 13, 2022
fe7f2f2
Update packages version for M1 machines
dragonpod May 13, 2022
fc9cefe
Revert "Update packages version for M1 machines"
dragonpod May 13, 2022
df610b4
Update dependency version for M1 machines
dragonpod May 13, 2022
838eedc
Update package.json
WrathofthePast Aug 31, 2022
f06887a
Merge pull request #605 from WrathofthePast/Add-missing-max-DPI-property
1kc Sep 21, 2022
caae522
Merge pull request #606 from WrathofthePast/Bug-Fixes
1kc Sep 21, 2022
46542fc
Merge pull request #591 from RosemaryOrchard/patch-1
1kc Sep 21, 2022
2b6a8c8
Merge pull request #598 from WrathofthePast/Fix-Complier-for-macOS-12.3+
1kc Sep 21, 2022
a574561
Merge branch 'master' of github.com:dragonpod/razer-macos into dragon…
1kc Sep 21, 2022
e97a348
Merge branch 'dragonpod-master'
1kc Sep 21, 2022
7c00d23
Release 0.4.10
1kc Sep 22, 2022
7ca87a4
Battery level support
JCKodel Dec 7, 2022
a5c63c7
Version bump
JCKodel Dec 7, 2022
e20e6c1
Release 0.5.0
JCKodel Dec 7, 2022
3a716af
Removed sensitive info
JCKodel Dec 7, 2022
1db199c
Removed sensitive info
JCKodel Dec 7, 2022
2efb797
Security fix for release.sh
JCKodel Dec 7, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -110,4 +110,11 @@ dist
build/

# IntelliJ
.idea
.idea

# Yarn Lock file
yarn.lock

# vscode files
.vscode/
.vscode/settings.json
5 changes: 4 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "librazermacos"]
path = librazermacos
url = https://github.com/1kc/librazermacos.git
url = [email protected]:1kc/librazermacos.git
[submodule "iohook"]
path = iohook
url = https://github.com/overcurrent/iohook
170 changes: 151 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
- **Supporting Razer devices** Keyboards, mice, mouse mats, eGPUs and blade laptops
- **Custom color picking** Choose your own colors for static, reactive and starlight effects
- **Persistent color settings** Color effects are saved to onboard memory
- **Works on the latest macOS** Including Intel and Apple Silicon. There are no plans from Razer to further support macOS ([source](https://support.razer.com/articles/1543762911))
- **Works on the latest macOS** Including Intel and Apple Silicon. There are no current plans from Razer to support macOS ([source](https://mysupport.razer.com/app/answers/detail/a_id/1381/kw/macOS))

## Download

Expand All @@ -33,53 +33,171 @@ Please see FAQ section below if color changes are not working, otherwise open a
- 💻 Blade laptop
- 🔊 Speakers
- 🍺 Mug
- ⭐️ And More

For a complete list of supported devices, please see [openrazer](https://openrazer.github.io).

Confirmed working for:

Keyboards:

- Razer Anansi
- Razer BlackWidow 2019
- Razer BlackWidow Chroma
- Razer BlackWidow Chroma Tournament Edition
- Razer BlackWidow Chroma V2
- Razer BlackWidow Elite
- Razer BlackWidow Chroma v2
- Razer Ornata Chroma
- Razer BlackWidow Essential
- Razer BlackWidow Lite
- Razer BlackWidow Overwatch
- Razer BlackWidow Stealth
- Razer BlackWidow Stealth Edition
- Razer BlackWidow Ultimate 2012
- Razer BlackWidow Ultimate 2013
- Razer BlackWidow Ultimate 2016
- Razer BlackWidow V3
- Razer BlackWidow V3 Mini Hyperspeed
- Razer BlackWidow V3 Pro (wired)
- Razer BlackWidow V3 TK
- Razer BlackWidow X Chroma
- Razer BlackWidow X Chroma Tournament Edition
- Razer BlackWidow X Chroma Ultimate
- Razer Cynosa Chroma
- Razer Cynosa Lite
- Razer Cynosa V2
- Razer Deathstalker Chroma
- Razer Deathstalker Expert
- Razer Huntsman
- Razer Huntsman Elite
- Razer Huntsman TE
- Razer Cynosa V2
- Razer Ornata V2
- Razer Huntsman Mini
- Razer Huntsman Mini (JP)
- Razer Huntsman Tournament Edition
- Razer Huntsman V2
- Razer Huntsman V2 TKL
- Razer Huntsman V2 Analog
- Razer Nostromo
- Razer Orbweaver
- Razer Orbweaver Chroma
- Razer Ornata
- Razer Ornata Chroma
- Razer Ornata Chroma V2
- Razer Tartarus
- Razer Tartarus Chroma
- Razer Tartarus V2

Mice:

- Razer Deathadder Elite
- Razer DeathAdder V2
- Death Adder V2 Pro (wired and wireless)
- Razer Razer Lancehead Wireless
- Razer Viper Ultimate Wireless
- Razer Abyssus
- Razer Abyssus 1800
- Razer Abyssus 2000
- Razer Abyssus Elite DVA Edition
- Razer Abyssus Essential
- Razer Abyssus V2 (under older mouse effects)
- Razer Basilisk
- Razer Basilisk Essential
- Razer Basilisk Ultimate
- Razer Basilisk V2
- Razer Abyssus V2 (under older mouse effects)
- Razer Razer DeathAdder 2013 (under older mouse effects)
- Razer Basilisk V3
- Razer DeathAdder 3 5G
- Razer DeathAdder 1800
- Razer DeathAdder 2013 (under older mouse effects)
- Razer DeathAdder 3500
- Razer DeathAdder Chroma
- Razer DeathAdder Elite
- Razer DeathAdder Essential
- Razer DeathAdder Essential White Edition
- Razer DeathAdder Essential (2021)
- Razer DeathAdder V2
- Razer DeathAdder V2 Mini
- Razer DeathAdder V2 Pro (wired and wireless)
- Razer Diamondback Chroma
- Razer Imperator
- Razer Lancehead Tournament Edition
- Razer Lancehead Wired
- Razer Lancehead Wireless (and wired)
- Razer Mamba 2012 (wired and wireless)
- Razer Mamba Elite
- Razer Mamba Tournament Edition
- Razer Mamba Wired
- Razer Mamba Wireless (and wired)
- Razer Naga 2012
- Razer Naga 2014
- Razer Naga Chroma
- Razer Naga Hex
- Razer Naga Hex Red
- Razer Naga Hex V2
- Razer Naga Left Handed 2020
- Razer Naga Pro (wired and wireless)
- Razer Naga Trinity
- Razer Orochi 2011
- Razer Orochi 2013
- Razer Orochi Chroma
- Razer Ouroboros
- Razer Taipan
- Razer Viper
- Razer Viper 8KHz
- Razer Viper Mini
- Razer Viper Ultimate (wired and wireless)

Mouse mats:

- Razer Goliathus Extended
- Razer Firefly
- Razer Firefly Hyperflux
- Razer Firefly V2
- Razer Goliathus Chroma
- Razer Goliathus Chroma Extended

Laptops:
e-GPUs:

- Razer Blade Advanced 2018
- Razer Core X Chroma

Headphones:
Headphones and stand:

- Razer Base Station V2 Chroma
- Razer Kraken
- Razer Kraken 7.1
- Razer Kraken 7.1 (Alternate)
- Razer Kraken Kitty Edition
- Razer Kraken Ultimate
- Razer Kraken V2

Laptops:

- Razer Blade 2018
- Razer Blade 2019 Advanced
- Razer Blade 2018 Base
- Razer Blade 2019 Base
- Razer Blade 2018 Mercury
- Razer Blade Late-2016
- Razer Blade Mid-2019 Mercury
- Razer Blade Pro 2017
- Razer Blade Pro 2017 Full HD
- Razer Blade Pro Late-2016
- Razer Blade Stealth
- Razer Blade Stealth 2019
- Razer Blade Stealth Late-2016
- Razer Blade Stealth Mid-2017
- Razer Blade Stealth Late-2017
- Razer Blade Stealth Late-2019
- Razer Blade Studio Edition 2019
- Razer Blade QHD

Speakers:

- Razer Nommo Chroma
- Razer Nommo Pro

Mugs:

- Razer Chroma Mug
- Razer Chroma Base
- Razer Chroma HDK

Accessories:

- Razer Base Station V2
- Razer Mouse Bungee V3 Chroma
- Razer Mouse Charging Dock
- Razer Thunderbolt 4 Dock Chroma

Please feel free to open pull requests for new devices you have tested.

Expand All @@ -91,7 +209,7 @@ A: It is possible that a wrong on-board keyboard profile has been selected. Chan

Q: Menu says "No device found".

A: Use the "Refresh Device List" option.
A: Use the "Refresh Device List" option, which can be found when pressing the Razer OS icon on the top menu bar.

Q: How do I customize and rebind keys?

Expand All @@ -107,6 +225,16 @@ Ongoing new device support will be provided on a volunteer contribution basis, a

Ensure xcode command line tools are installed,

If you have a paid Apple Developer account, edit `release.sh` with your details.

Afterwards, to automatically build, sign, and/or notarize (if applicable,) run in Terminal: `./release.sh`

Ad-hoc signing will be used if account information is left empty.



Or build manually:

Install node package dependencies:

yarn
Expand All @@ -123,6 +251,10 @@ For building a distribution ready app and dmg:

yarn dist

Sign the universal package before moving to /Applications folder with ad-hoc signing:

codesign -s - --deep --force ./dist/mac-universal/Razer\ macOS.app

## Implementation

Project includes both hardware drivers and user interface.
Expand Down
10 changes: 8 additions & 2 deletions binding.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,19 @@
'-framework CoreFoundation'
],
'xcode_settings': {
'VALID_ARCHS': 'arm64e x86_64',
'VALID_ARCHS': 'arm64 x86_64',
'ONLY_ACTIVE_ARCH': 'NO',
'OTHER_CODE_SIGN_FLAGS': 'timestamp --options=runtime',
'CLANG_CXX_LIBRARY': 'libc++',
'MACOSX_DEPLOYMENT_TARGET': '11.0',
'MACOSX_DEPLOYMENT_TARGET': '12.0.1',
'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
'OTHER_CFLAGS': [
'-arch x86_64',
'-arch arm64'
],
'OTHER_LDFLAGS': [
'-arch x86_64',
'-arch arm64',
'-framework IOKit',
'-framework CoreFoundation'
],
Expand Down
1 change: 1 addition & 0 deletions iohook
Submodule iohook added at 3b9ea1
29 changes: 12 additions & 17 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "razer-macos",
"version": "0.4.5",
"version": "0.5.0",
"description": "Open source color effects manager for Razer peripherals on macOS",
"license": "GPL-2.0-only",
"main": "src/main/index.js",
Expand All @@ -16,7 +16,7 @@
"dependencies": {
"dot-prop": "^5.3.0",
"electron-json-storage": "^4.2.0",
"iohook": "^0.9.3",
"iohook": "file:./iohook",
"node-addon-api": "^1.0.0",
"node-forge": "^0.10.0",
"react": "^16.13.1",
Expand All @@ -25,15 +25,17 @@
"react-select": "^3.2.0",
"react-slider": "^1.1.2",
"react-tabs": "^3.1.2",
"source-map-support": "^0.5.12",
"source-map-support": "^0.5.19",
"tinycolor2": "^1.4.2"
},
"devDependencies": {
"@babel/preset-react": "^7.9.4",
"@babel/preset-react": "^7.14.5",
"babel-loader": "^8.1.0",
"electron": "^11.2.2",
"electron-builder": "^22.11.11",
"electron": "^11.5.0",
"electron-builder": "^23.3.3",
"electron-builder-notarize": "^1.5.0",
"electron-webpack": "^2.8.2",
"@electron/universal": "^1.2.1",
"mini-css-extract-plugin": "^0.9.0",
"native-ext-loader": "^2.3.0",
"node-gyp": "^8.2.0",
Expand All @@ -55,19 +57,14 @@
},
"gypfile": true,
"build": {
"appId": "com.electron.razer-macos",
"appId": "br.art.code.razer-macos",
"productName": "Razer macOS",
"nodeGypRebuild": true,
"asar": true,
"files": [
"package.json",
"build",
"node_modules"
],
"directories": {
"output": "dist",
"buildResources": "resources"
},
"afterSign": "electron-builder-notarize",
"mac": {
"category": "public.app-category.developer-tools",
"icon": "icon.icns",
Expand All @@ -77,8 +74,7 @@
{
"target": "dmg",
"arch": [
"arm64",
"x64"
"universal"
]
}
]
Expand All @@ -92,8 +88,7 @@
"darwin"
],
"arches": [
"arm64",
"x64"
"x64", "arm64"
]
}
}
28 changes: 28 additions & 0 deletions release.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
#!/bin/bash

if [[ -z $APPLE_ID]]
then
export APPLE_ID=""
export APPLE_ID_PASSWORD=""
export APPLE_ID_SET="TRUE"
fi

yarn clean
rm -rf ./node_modules ./dist

yarn

yarn dist

if [[ -z $APPLE_ID ]]
then
codesign -s - --deep --force ./dist/mac-universal/Razer\ macOS.app
fi

if [[ -z $APPLE_ID_SET]]
then;
else
unset APPLE_ID
unset APPLE_ID_PASSWORD
unset APPLE_ID_SET
fi
4 changes: 2 additions & 2 deletions src/devices/abyssus.json

Large diffs are not rendered by default.

Loading