Skip to content

Releases

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 12 Nov 04:05
9bc855f

[0.3.0] - 2026-11-12

🚀 Features

  • Read, create, delete and switch the profiles stored on the mouse
  • (gui) Add a themeable hypershift accent
  • (gui) Manage, name and switch onboard profiles from the sidebar
  • (gui) Keep profiles as presets on mice without stored profiles
  • (gui) Logo above the title, settings tab and version in the status bar
  • Trace every command sent to the mouse, in words where it's known
  • (gui) Debug log panel, journal output and a raw bytes setting
  • (gui) Themeable log panel, log wrap and font size settings, light logo

🐛 Bug Fixes

  • Retry the profile read before treating a mouse as having no stored profiles

📚 Documentation

  • Document onboard profiles
  • Document profile presets
  • Document the debug log
  • Document the log theme properties and settings

🚜 Refactor

  • One helper per job across profiles, presets, trace and settings

🧪 Testing

  • Cover profiles, presets and the hypershift color

⚙️ Miscellaneous Tasks

  • Tidy code comments
  • Drop comments that only restate the code
  • Release v0.3.0

v0.2.9

Choose a tag to compare

@github-actions github-actions released this 12 Nov 02:30
518524d

[0.2.9] - 2026-11-12

🐛 Bug Fixes

  • Update profile wrap labels
  • Sidebar queue on top

📚 Documentation

  • Update docs

⚙️ Miscellaneous Tasks

  • Release v0.2.9

v0.2.8

Choose a tag to compare

@github-actions github-actions released this 12 Nov 01:57
3e69ddc

[0.2.8] - 2026-11-12

🚀 Features

  • Show and set the polling rate through the OpenRazer daemon
  • Show the battery and set the sleep timeout of wireless mice
  • Save and load named lighting presets
  • Read OpenRazer fake devices in debug builds when OPENSYNAPSE_OPENRAZER_TEST is set

🐛 Bug Fixes

  • Let dpi:0x.. parse so exported profiles with unnamed DPI ops import again
  • (gui) Compare actions by their bytes so selecting a media key doesn't queue a write

📚 Documentation

  • Explain testing lighting and power without a mouse
  • Proofread the protocol docs, add a packet diagram and say documenting protocols is a goal
  • Move theming to docs/THEMING.md and cut what the UI already shows

🧪 Testing

  • Cover action parsing, device limits, profiles, input, protocol issues and GUI queueing

⚙️ Miscellaneous Tasks

  • Add scripts/release.sh and use it in device-release [skip ci]
  • Add scripts/fake-devices.sh to run OpenRazer fake devices on a private bus
  • Release v0.2.8

💼 Other

  • Make the CLI the default cargo run target

v0.2.7

Choose a tag to compare

@github-actions github-actions released this 11 Nov 23:53
90ad385

[0.2.7] - 2026-11-11

📚 Documentation

  • Protocols README with worked examples and bring every doc in line with the code

⚙️ Miscellaneous Tasks

  • Label PRs titled New Device: as new-device and use that prefix for protocol send issues
  • Always label the add-device PR new-device, also when it already existed
  • Start add-device from issues titled New Device: and label them add-device
  • Release v0.2.7

v0.2.6

Choose a tag to compare

@github-actions github-actions released this 11 Nov 23:45
596bb02

[0.2.6] - 2026-11-11

🚀 Features

  • (gui) GitHub, bug report and website links in the status bar
  • (gui) NEW THEME button that copies the default theme into the themes folder
  • Read device files at runtime instead of compiling them in
  • Port the add-device issue parser to a Rust binary that validates the device file
  • Port the read-only HID probe to an opensynapse probe subcommand
  • (gui) Open a new theme in the default editor right after creating it
  • (cli) Probe finds the mouse on its own when no hidraw node is given

🐛 Bug Fixes

  • (gui) Keep the editor tab when picking another button

📚 Documentation

  • Reword library comments that joined clauses with a colon
  • Add AGENTS.md with the layout, safety rules and conventions

🚜 Refactor

  • Share file, JSON, model path and hidraw lookup helpers
  • Fold digit key names and modifier key expansion
  • (gui) Parse theme fallback from opensynapse.css and add lock helpers
  • (gui) Share button, panel, modal and pick helpers and merge the import dialog into confirm
  • (gui) Reword comments that joined clauses with colons
  • Merge the pick helpers and the button queue path and drop pass-through wrappers
  • (gui) Split main.rs into state, gui/, lib/ and shared/ modules
  • (gui) Split theme.rs into palette, parsers and desktop detection
  • Move the protocol doc generator into generators/

⚙️ Miscellaneous Tasks

  • Write release notes with git-cliff from the conventional commits
  • Release v0.2.6

💼 Other

  • Make device-from-issue an example so cargo install doesn't ship it

v0.2.5

Choose a tag to compare

@github-actions github-actions released this 11 Nov 22:03
4509c1a

What's Changed

  • fix: probe only the Razer control interface in init and re-resolve hidraw nodes by @khaosdoctor in #4

New Contributors

Full Changelog: v0.2.4...v0.2.5

v0.2.4

Choose a tag to compare

@khaosdoctor khaosdoctor released this 10 Nov 03:29
v0.2.4
713e3df

What's new

  • Adding your mouse is simpler to follow. The README explains that a device file in ~/.config/opensynapse/devices/ is all you need to use a mouse that isn't built in, so you don't have to wait for a release.
  • Sending your mouse gets it into a release by itself. An issue opened with opensynapse protocol send turns into a pull request once it's reviewed, and merging it ships a new release with your mouse in it.
  • Generated protocol files have a table of contents, and so do the README, CONTRIBUTING.md and PROTOCOL.md.

v0.2.3

Choose a tag to compare

@khaosdoctor khaosdoctor released this 10 Nov 03:11
v0.2.3
d772d3f

What's new

  • Profile switching: the GUI has a PROFILE tab, so any button can go to the next or previous profile, with or without wrapping around, or jump straight to P1 to P5. The PROF button now opens there instead of RAW.
  • More DPI actions: DPI up and down with wrap, and jumping straight to a DPI stage.
  • Wheel tilt: TILT LEFT and TILT RIGHT (horizontal scroll) on the MOUSE tab, mouse:wheelleft and mouse:wheelright in the CLI.
  • Numpad keys: num0 to num9, numenter, numplus, numminus, numasterisk, numslash, numdot and numlock, with a NUMPAD group in the key picker.
  • Modifiers on their own: a button can be just Shift, Ctrl, Alt or Meta, left or right.

Fixes

  • PrintScreen is called printscreen now instead of sysrq. Profile files that still say sysrq load fine.

Docs

  • The README has a "First use" section with the first steps in the GUI and the CLI.

Note

Jumping to a profile or a DPI stage, wheel tilt and modifier-only keys come from the protocol notes of another Razer mouse and haven't been tested on the Naga yet. If you try them, tell me in an issue.

v0.2.2

Choose a tag to compare

@github-actions github-actions released this 10 Nov 02:39
v0.2.2
1cfc7f2

Full Changelog: v0.2.1...v0.2.2

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 10 Nov 02:33
v0.2.1
ae37fc3

Full Changelog: v0.2.0...v0.2.1