Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e84dbf2c15 | ||
|
|
990ff8e980 | ||
|
|
1ca8e67e52 | ||
|
|
23cb583bf7 | ||
|
|
d5cc735b85 | ||
|
|
1981311136 | ||
|
|
bbb5d4a35b | ||
|
|
58ef40fb02 | ||
|
|
b8f35df155 | ||
|
|
c3e712851c | ||
|
|
2eaa1e0634 | ||
|
|
6ee21bcd7a | ||
|
|
10ae68ad4b |
@@ -11,7 +11,7 @@ matrix:
|
||||
fast_finish: true
|
||||
include:
|
||||
- os: osx
|
||||
osx_image: xcode8.3
|
||||
osx_image: xcode9.3beta
|
||||
- os: linux
|
||||
env: CC=clang CXX=clang++ npm_config_clang=1
|
||||
compiler: clang
|
||||
|
||||
13
CHANGELOG.md
13
CHANGELOG.md
@@ -6,7 +6,16 @@ The format is loosely based on [Keep a Changelog](http://keepachangelog.com/en/1
|
||||
|
||||
Every Agent version includes the most recent firmware version. See the [firmware changelog](https://github.com/UltimateHackingKeyboard/firmware/blob/master/CHANGELOG.md).
|
||||
|
||||
## [1.1.1] - 2017-02-13
|
||||
## [1.1.2] - 2018-03-09
|
||||
|
||||
Firmware: 8.1.**4** [[release](https://github.com/UltimateHackingKeyboard/firmware/releases/tag/v8.1.4)] | Device Protocol: 4.2.0 | User Config: 4.0.0 | Hardware Config: 1.0.0
|
||||
|
||||
- Fix the configuration serializer so that the correct key actions get serialized, and the save button always appears when needed.
|
||||
- Add instructions to the firmware page to aid users.
|
||||
- Fix code signing on OSX.
|
||||
- Sign Agent on Windows.
|
||||
|
||||
## [1.1.1] - 2018-02-13
|
||||
|
||||
Firmware: 8.1.**2** [[release](https://github.com/UltimateHackingKeyboard/firmware/releases/tag/v8.1.2)] | Device Protocol: 4.2.0 | User Config: 4.0.0 | Hardware Config: 1.0.0
|
||||
|
||||
@@ -20,7 +29,7 @@ Firmware: 8.1.**2** [[release](https://github.com/UltimateHackingKeyboard/firmwa
|
||||
- Assign "switch to test keymap" action on all keymaps in the default configuration.
|
||||
- Add keymap descriptions in the default configuration.
|
||||
|
||||
## [1.1.0] - 2017-01-15
|
||||
## [1.1.0] - 2018-01-15
|
||||
|
||||
Firmware: 8.**1**.0 [[release](https://github.com/UltimateHackingKeyboard/firmware/releases/tag/v8.1.0)] | Device Protocol: 4.2.0 | User Config: 4.0.0 | Hardware Config: 1.0.0
|
||||
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
os: unstable
|
||||
|
||||
clone_folder: c:\projects\uhk-agent
|
||||
|
||||
environment:
|
||||
GH_TOKEN:
|
||||
secure: 3IebpEKmC39codi1wT6dXx8mql4/mCL1JzZ7lir7GQ5MWRnCxlED2OXbiKHHigDV
|
||||
CSC_LINK: c:\projects\uhk-agent\scripts\certs\windows-cert.p12
|
||||
matrix:
|
||||
- nodejs_version: "8"
|
||||
|
||||
|
||||
1995
package-lock.json
generated
1995
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
10
package.json
10
package.json
@@ -3,8 +3,8 @@
|
||||
"private": true,
|
||||
"author": "Ultimate Gadget Laboratories",
|
||||
"main": "electron/dist/electron-main.js",
|
||||
"version": "1.1.1",
|
||||
"firmwareVersion": "8.1.2",
|
||||
"version": "1.1.2",
|
||||
"firmwareVersion": "8.1.4",
|
||||
"deviceProtocolVersion": "4.2.0",
|
||||
"userConfigVersion": "4.0.0",
|
||||
"hardwareConfigVersion": "1.0.0",
|
||||
@@ -37,17 +37,17 @@
|
||||
"decompress-tarbz2": "^4.1.1",
|
||||
"devtron": "1.4.0",
|
||||
"electron": "1.7.11",
|
||||
"electron-builder": "19.45.5",
|
||||
"electron-builder": "20.4.0",
|
||||
"electron-debug": "1.4.0",
|
||||
"electron-devtools-installer": "2.2.0",
|
||||
"electron-log": "2.2.9",
|
||||
"electron-rebuild": "1.6.0",
|
||||
"electron-rebuild": "1.7.3",
|
||||
"electron-settings": "3.1.2",
|
||||
"exports-loader": "0.6.3",
|
||||
"file-loader": "0.10.0",
|
||||
"fs-extra": "4.0.2",
|
||||
"jsonfile": "4.0.0",
|
||||
"lerna": "2.0.0",
|
||||
"lerna": "2.9.0",
|
||||
"mkdirp": "0.5.1",
|
||||
"npm-run-all": "4.0.2",
|
||||
"pre-commit": "1.2.2",
|
||||
|
||||
@@ -54,15 +54,12 @@ export class Module {
|
||||
|
||||
const noneAction = new NoneAction();
|
||||
|
||||
const keyActions: KeyAction[] = this.keyActions.map(keyAction => {
|
||||
buffer.writeArray(this.keyActions, (uhkBuffer: UhkBuffer, keyAction: KeyAction) => {
|
||||
if (keyAction) {
|
||||
return keyAction;
|
||||
}
|
||||
return noneAction;
|
||||
});
|
||||
|
||||
buffer.writeArray(keyActions, (uhkBuffer: UhkBuffer, keyAction: KeyAction) => {
|
||||
keyAction.toBinary(uhkBuffer, userConfiguration);
|
||||
} else {
|
||||
noneAction.toBinary(uhkBuffer);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,14 @@
|
||||
<i class="fa fa-sliders"></i>
|
||||
<span>Firmware</span>
|
||||
</h1>
|
||||
|
||||
<p><i>
|
||||
Please note that the firmware update process may sometimes fail. If if fails then
|
||||
simply retry until it succeeds. If the left half becomes unresponsive after a failed
|
||||
update then retry and follow the instructions displayed during the update to fix it.
|
||||
We'll make the firmware update process more robust.
|
||||
</i></p>
|
||||
|
||||
<p>
|
||||
Flash firmware {{ (getAgentVersionInfo$ | async).firmwareVersion }} (bundled with Agent)
|
||||
<button class="btn btn-primary"
|
||||
|
||||
@@ -13,7 +13,8 @@ function getUint16(buffer, offset) {
|
||||
let prevGeneric, prevBasic, prevMedia, prevSystem, prevMouse;
|
||||
function getDebugInfo() {
|
||||
|
||||
const payload = new Buffer([uhk.usbCommands.getDebugInfo]);
|
||||
const payload = new Buffer([uhk.usbCommands.getDebugBuffer]);
|
||||
console.log(payload)
|
||||
console.log('Sending ', uhk.bufferToString(payload));
|
||||
device.write(uhk.getTransferData(payload));
|
||||
const rxBuffer = Buffer.from(device.readSync());
|
||||
|
||||
2
scripts/certs/.gitignore
vendored
Normal file
2
scripts/certs/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
windows-cert.p12
|
||||
mac-cert.p12
|
||||
BIN
scripts/certs/mac-cert.p12.enc
Normal file
BIN
scripts/certs/mac-cert.p12.enc
Normal file
Binary file not shown.
BIN
scripts/certs/windows-cert.p12.enc
Normal file
BIN
scripts/certs/windows-cert.p12.enc
Normal file
Binary file not shown.
@@ -42,13 +42,13 @@ if (!isReleaseCommit) {
|
||||
process.exit(0)
|
||||
}
|
||||
|
||||
if (process.platform === 'darwin' && !RUNNING_IN_DEV_MODE) {
|
||||
exec('brew install yarn --without-node');
|
||||
}
|
||||
// if (process.platform === 'darwin' && !RUNNING_IN_DEV_MODE) {
|
||||
// exec('brew install yarn --without-node');
|
||||
// }
|
||||
|
||||
if (!RUNNING_IN_DEV_MODE) {
|
||||
exec("yarn add electron-builder");
|
||||
}
|
||||
// if (!RUNNING_IN_DEV_MODE) {
|
||||
// exec("yarn add electron-builder");
|
||||
// }
|
||||
|
||||
const path = require('path');
|
||||
const builder = require("electron-builder");
|
||||
@@ -82,9 +82,13 @@ if (process.platform === 'darwin') {
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
if (process.platform === 'darwin') {
|
||||
// TODO: Remove comment when macOS certificates boughted and exported
|
||||
//require('./setup-macos-keychain').registerKeyChain();
|
||||
if (process.platform === 'darwin' && process.env.CI) {
|
||||
const encryptedFile = path.join(__dirname, './certs/mac-cert.p12.enc');
|
||||
const decryptedFile = path.join(__dirname, './certs/mac-cert.p12');
|
||||
exec(`openssl aes-256-cbc -K $CERT_KEY -iv $CERT_IV -in ${encryptedFile} -out ${decryptedFile} -d`);
|
||||
} else if (process.platform === 'win32') {
|
||||
// decrypt windows certificate
|
||||
exec('openssl aes-256-cbc -K %CERT_KEY% -iv %CERT_IV% -in scripts/certs/windows-cert.p12.enc -out scripts/certs/windows-cert.p12 -d')
|
||||
}
|
||||
|
||||
if (TEST_BUILD || gitTag) {
|
||||
@@ -114,10 +118,13 @@ if (TEST_BUILD || gitTag) {
|
||||
productName: 'UHK Agent',
|
||||
mac: {
|
||||
category: 'public.app-category.utilities',
|
||||
extraResources
|
||||
extraResources,
|
||||
identity: 'CMXCBCFHDG',
|
||||
cscLink: path.join(__dirname, 'certs/mac-cert.p12')
|
||||
},
|
||||
win: {
|
||||
extraResources
|
||||
extraResources,
|
||||
certificateFile: path.join(__dirname, 'certs/windows-cert.p12')
|
||||
},
|
||||
linux: {
|
||||
extraResources
|
||||
@@ -136,8 +143,7 @@ if (TEST_BUILD || gitTag) {
|
||||
console.error(`${error}`);
|
||||
process.exit(1);
|
||||
})
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
console.log('No git tag');
|
||||
// TODO: Need it?
|
||||
process.exit(1);
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
'use strict'
|
||||
|
||||
const cp = require('child_process')
|
||||
const path = require('path')
|
||||
|
||||
function registerKeyChain() {
|
||||
const encryptedFile = path.join(__dirname, '../certs/developer-id-cert.p12.enc')
|
||||
const decryptedFile = path.join(__dirname, '../certs/developer-id-cert.p12')
|
||||
cp.execSync(`openssl aes-256-cbc -K $encrypted_04061b49eb95_key -iv $encrypted_04061b49eb95_iv -in ${encryptedFile} -out ${decryptedFile} -d`)
|
||||
|
||||
const keyChain = 'mac-build.keychain'
|
||||
cp.execSync(`security create-keychain -p travis ${keyChain}`)
|
||||
cp.execSync(`security default-keychain -s ${keyChain}`)
|
||||
cp.execSync(`security unlock-keychain -p travis ${keyChain}`)
|
||||
cp.execSync(`security set-keychain-settings -t 3600 -u ${keyChain}`)
|
||||
|
||||
cp.execSync(`security import ${decryptedFile} -k ${keyChain} -P $KEY_PASSWORD -T /usr/bin/codesign`)
|
||||
}
|
||||
|
||||
module.exports.registerKeyChain = registerKeyChain
|
||||
Reference in New Issue
Block a user