/nuga-app

⌨️ NuPhy® keyboard configurator

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

Nuga Quality assurance

Application for controlling NuPhy® keyboards.

Features

  • Lights control.
  • Key mapping control (Halo75 and Halo65 for now).
  • Macros control.

Supported devices: Halo75, Halo65, Halo96.

Installation

macOS

  1. Download the zip archive labeled mac from the latest release.
  2. Unzip the archive, copy Nuga.app to Applications.
  3. Launch Nuga.app.
  4. The application requests permission to Input Monitoring. This is required to work with the USB HID device. Grant permission.
  5. Restart the app

Development

For local development, you need to set up environments. For this purpose you will need:

Libraries

macOS

brew install hidapi

Starting

To run a local application, the target dev is used:

make dev

If you want to run another OS interface on macOS, you should run the dev-universal target:

make dev-universal

Build

Cross-compiling the application is not possible at this time. Therefore, full build is only possible on macOS. A native build for macOS can be built on macs with Intel® and Apple Silicon™ processors , Linux version is built on either macOS (via Docker) or the amd64 version of Linux.

For native builds, there are targets in the Makefile:

  • build/darwin – To build macOS app (arm64, amd64)
  • build/linux – To build Linux app binary (arm64, amd64)

The build command is a common alias for these commands and performs a build on the OS that is currently in use.

make build

The result of the build will be archives with the application in the dist or app/build/bin folder.

Release

To publish a new release, set version in Makefile and run:

make publish

Automatic build, signing and notarization will be started. Once the build is complete, the files will be attached to the created GitHub Release.

The release description is compiled automatically from the CHANGELOG.md file.

Linux cross-compilation

The Linux version can be built on macOS using Docker. To build an image with the toolkit, run the command:

make linux-builder/setup

To build a Linux AppImage using the resulting image, run the command:

make linux-builder/release

Hooks

It is highly recommended to install git hooks in the project repository. They make it easier to follow code Style. To install them, run the command:

make setup-qa
make hook

Trademarks

NuPhy® is a registered trademark of NuPhy Studio. Nuga is an unofficial product and is not affiliated with NuPhy Studio.