v0.2.54 - Full n_signer transport support in setup wizard: added nsigner_serial, nsigner_fds, and nsigner_qrexec (Qubes cross-qube) modes. Updated nostr_core_lib to v0.6.10 (qrexec transport). Extended signer_config_t with serial_device, fds_read_fd/fds_write_fd, target_qube, service_name fields. Added --signer-serial, --signer-fds, --signer-qrexec, --signer-service CLI flags. Wizard transport picker now offers all 5 remote transports with auto-discovery for unix/serial. Existing-agent flow supports signer-based identity (no nsec required) with NIP-44 decrypt/encrypt routed through signer verbs. Systemd install supports serial/qrexec; fds rejected with clear message. Connectivity-check errors now pause for Enter before re-rendering. Deleted nostr_core_lib.old. Added docs/SIGNER.md.

This commit is contained in:
Didactyl User
2026-07-28 15:51:55 -04:00
parent 0423fd1485
commit 37a6f4ea75
10 changed files with 1133 additions and 120 deletions
+19
View File
@@ -14,6 +14,25 @@
"pubkey": "npub1REPLACE_WITH_ADMIN_PUBKEY"
},
// ─── Signer Provider (optional) ────────────────────────────────────
// Omit this block (or set mode="local") to use the nsec above in-process.
// In any nsigner_* mode the nsec is optional/ignored; the agent pubkey is
// learned from the signer via nostr_signer_get_public_key(). See docs/SIGNER.md.
//
// "signer": {
// "mode": "nsigner_unix", // local | nsigner_unix | nsigner_tcp | nsigner_serial | nsigner_fds | nsigner_qrexec
// "socket_name": "", // nsigner_unix: abstract socket name (without @); "" = auto-discover
// "role": "main", // n_signer role selector
// "timeout_ms": 15000, // per-call timeout
// "auth_privkey_hex": "", // nsigner_tcp only: kind-27235 auth envelope privkey
// "tcp_host": "127.0.0.1", // nsigner_tcp host
// "tcp_port": 11111, // nsigner_tcp port
// "serial_device": "/dev/ttyACM0", // nsigner_serial device path
// "target_qube": "nostr_signer", // nsigner_qrexec: target Qubes qube name
// "service_name": "qubes.NsignerRpc" // nsigner_qrexec: qrexec service name (default qubes.NsignerRpc)
// // nsigner_fds: fds_read_fd/fds_write_fd are CLI-only (--signer-fds), NOT persisted here
// },
// ─── Encrypted Startup Config Events ───────────────────────────────
// These are published as NIP-44 encrypted kind 30078 self-events on first run.
"encrypted_events": [