Commit Graph
352 Commits
Author SHA1 Message Date
Suyog Tandel 28963093c9 refactor: flatpak build script 2026-07-21 00:33:12 +05:30
Suyog Tandel a9e95ca2cb ci[release]: refactor appimage build script to include appimage auto update info 2026-07-21 00:23:16 +05:30
Suyog TandelandGitHub ac0a29895f Merge pull request #107 from librekeys/ci/improved-appimage-builds
ci/cd: new improved appimage builds for picoforge release workflow
2026-07-20 21:26:39 +05:30
Suyog Tandel b11b5baa9f ci/cd: new improved appimage builds for picoforge release workflow 2026-07-20 21:04:02 +05:30
Suyog Tandel d3c41a8f6d chore: clean unused workflows 2026-07-20 19:19:49 +05:30
Suyog Tandel 74eff4a1aa docs: update installation guide for openSUSE Tumbleweed 2026-07-20 01:29:16 +05:30
Suyog TandelandGitHub 906c8fa6bf Merge pull request #105 from librekeys/spec-sync/0.7.1-1
chore: sync spec to 0.7.1-1
2026-07-20 00:32:50 +05:30
Suyog Tandel 9e81973ee0 Automatic commit of package [picoforge] release [0.7.1-1].
Created by command:

/usr/bin/tito tag --offline --accept-auto-changelog --keep-version
picoforge-0.7.1-1
2026-07-19 18:56:45 +00:00
Suyog Tandel 0f8a09094a chore: sync spec to 0.7.1-1 [skip ci] 2026-07-19 18:56:44 +00:00
Suyog Tandel 58b3a480f7 feat: update flathub metainfo and increment app ver to 0.7.1 v0.7.1 2026-07-19 23:56:47 +05:30
Suyog TandelandGitHub d8c012d536 Merge pull request #104 from librekeys/spec-sync/0.7.0-2
chore: sync spec to 0.7.0-2
2026-07-19 23:30:10 +05:30
Suyog Tandel a683307991 Automatic commit of package [picoforge] release [0.7.0-2].
Created by command:

/usr/bin/tito tag --offline --accept-auto-changelog --keep-version
picoforge-0.7.0-2
2026-07-19 17:51:24 +00:00
Suyog Tandel 22feb92bdd chore: sync spec to 0.7.0-2 [skip ci] 2026-07-19 17:51:24 +00:00
Suyog Tandel afb316e41b feat: add wiki button in about screen and update application description v0.7.0 2026-07-19 22:36:24 +05:30
Suyog Tandel dfc11b5770 merge:PR 103 that adds RS-Key firmware support and fixes bugs 2026-07-19 22:14:10 +05:30
Maxim Muravev 6cc2a64645 fmt: Run cargo fmt 2026-07-19 18:52:39 +03:00
Maxim Muravev a8ab4b7c09 feat(ui): auto-detect device hot-plug and refresh live
A ~1s background watcher on DeviceRepo samples a cheap FIDO HID presence
fingerprint (vid:pid:serial, by enumeration only — it never opens the
device, so it can't contend with an in-flight read or write) and triggers
a refresh whenever the key is plugged, unplugged or swapped. Every screen
then reflects the current device without the manual Refresh button. The
watcher skips a tick while a refresh/write is in flight and stops cleanly
when the repo is dropped.
2026-07-19 18:35:58 +03:00
Maxim Muravev 1f7a6b0d92 fix: correctly read and write RS-Key device configuration
Several Configuration-screen fields were blank, wrong, or silently
overwrote a working device on save when talking to RS-Key firmware:

- CONFIG_READ over CTAPHID 0x41 answers with a CBOR `{1: blob}` map, but
  the client fed the raw CBOR bytes downstream. The PHY read only worked
  by accident for records under 24 bytes and broke once a product name
  pushed it over; the LED read never worked. Decode the map and return
  the inner record.
- Parse the LED status block at the correct stride ((len-1)/4) in one
  shared helper, fixing the CCID path that read a 17-byte block as a
  legacy 9-byte one (colour shown as the effect id).
- Read hardware LED (GPIO/brightness/driver) and touch-timeout as
  optionals: an absent phy tag now means "firmware default" (blank
  field) and is not written back, so a virgin phy is no longer clobbered
  with GPIO=0 / driver=Pico / brightness=0 on the next Apply. A value is
  written only when the user sets one.
- Hide the "Supported Curves" card for RS-Key: its firmware ignores the
  phy ENABLED_CURVES tag (curve support is compile-time), so the toggles
  were a no-op that also wrote a meaningless tag on save.
- Preserve each status' LED effect/speed on a colour write (read-modify-
  write), reject over-long product names, read the enabled USB apps over
  the 0xC2 vendor command, and fall back to the USB product string when
  the phy record carries no product override.
2026-07-19 18:35:57 +03:00
Maxim Muravev e5b2219679 fix(hal): open the FIDO HID non-exclusively on macOS
macOS holds FIDO-usage-page (0xF1D0) HID devices exclusively, so hidapi's
default open fails with 0xE00002C5 ("exclusive access and device already
open") and the entire FIDO transport is unreachable. GetInfo, the VID/PID
seed and hardware-config-over-FIDO then silently fall back to rescue-only,
leaving the Configuration screen blank on an otherwise healthy key.

Enable hidapi's `macos-shared-device` feature so opens go through
hid_darwin_set_open_exclusive(0). No-op on Linux/Windows; hidapi 2.6
explicitly allows several concurrent HidApi contexts.
2026-07-19 18:33:39 +03:00
Suyog Tandel fd0752b152 chore: make UI more responsive and more wide 2026-07-19 16:44:43 +05:30
Suyog TandelandGitHub ef51114758 Merge pull request #101 from librekeys/build/update-nix-package
build(package.nix): update
2026-07-12 16:16:12 +05:30
github-actions[bot] 6faa63f00b picoforge: 0.5.0+1 -> 0.6.0
Diff: https://github.com/librekeys/picoforge/compare/v0.5.0+1...v0.6.0

Changelog: https://github.com/librekeys/picoforge/releases/tag/v0.6.0
2026-07-12 03:20:34 +00:00
Suyog Tandel 0e9ca1a8c3 chore: automate spec sync via PRs and update release workflow 2026-07-10 19:47:15 +05:30
Suyog Tandel f72c5fc45d fix(ci): security audit issues 2026-07-09 23:18:45 +05:30
Suyog Tandel e8f379a248 fix(ci): add write perms to code CI workflow for security audit step 2026-07-09 22:51:24 +05:30