9f2de2a0b1
Docs:
- Baseline was stated as 0.3.1 across the canonical set while the branch,
Cat 0/1 crates and every Cat 2 fork are 0.3.2. AGENTS.md also cited a
sources/redbear-0.3.1/ archive that does not exist; the only archive
present is sources/redbear-0.1.0/. Versioning examples now match the
forks as they actually stand (redoxfs/syscall 0.9.1, libredox 0.1.19).
- Repaired 18 instances of 'immutable archived' across 8 documents, where
a global find/replace had turned sync/synced/archived into that phrase
and produced ungrammatical text ('never auto-immutable archived',
'### Source immutable archived').
- Settled the apply-patches.sh contradiction empirically. Both sides were
wrong: the GROSS WARNING blocks (x5) described it as routine
patch-linking, and SCRIPT-BEHAVIOR-MATRIX.md said build-redbear.sh
'never invokes' it. It is invoked at build-redbear.sh:487, but only to
auto-repair a failed verify-overlay-integrity.sh check.
- Dropped the dangling reference to a local/AGENTS.md section
'NO OVERLAY-STYLE PATCHES — SCOPED POLICY' that does not exist.
Build system:
- mk/prefix.mk hardcoded 13.2.0 in the limits.h removal, which silently
no-ops after a toolchain upgrade and leaves the conflicting header.
Version-globbed.
- Parameterized GCC_RECIPE so the from-source toolchain path is not
pinned to gcc13.
- The three cstdlib strtold seds were not idempotent -- the shipped GCC
13 toolchain carried that comment block 17 times from repeated
'make prefix' runs. Each is now guarded.
2.8 KiB
2.8 KiB
redbear-accessibility — Operator Runbook
Daemon: redbear-accessibility
Init service: /usr/lib/init.d/60_accessibility.service
Status check: cat /scheme/accessibility/status
Restart: init-svc restart accessibility
Logs
- Destination:
stderr(tagged[accessibility]) - No env-var log level control; all messages are
INFOorERRORlevel. To increase verbosity, modifysrc/main.rs:log_msgcalls.
Scheme
- Scheme name:
accessibility - Root:
/scheme/accessibility/(directory, mode 0555)
Scheme Paths
| Path | Type | Mode | Description |
|---|---|---|---|
config |
file | 0644 | Read/write accessibility config (key=value lines) |
status |
file | 0644 | Read-only runtime status summary |
sticky-keys |
file | 0644 | Read active sticky modifiers; write key <code> <pressed> [now_ms] to feed input |
Config Properties (read/write via config)
| Key | Type | Default | Description |
|---|---|---|---|
sticky_keys |
bool | false | Enable sticky key modifier latching |
slow_keys |
bool | false | Enforce minimum key press duration |
slow_key_delay_ms |
u64 | 300 | Minimum press duration for slow keys |
bounce_keys |
bool | false | Debounce rapid double-presses |
bounce_key_delay_ms |
u64 | 300 | Minimum interval between presses |
repeat_keys |
bool | true | Enable key repeat |
repeat_delay_ms |
u64 | 500 | Delay before repeat starts |
Sticky Key Modifier Scan Codes
| Code | Modifier |
|---|---|
| 0x1D, 0x61, 0x64 | Ctrl |
| 0x2A, 0x36 | Shift |
| 0x38 | Alt |
| 0x5B, 0x5C | Meta (Super) |
Signals / SIGTERM Behavior
- No SIGTERM handler. Scheme socket close triggers clean exit. Registered via
register_sync_scheme.
Common Issues
failed to register scheme:accessibility— Another daemon already registered the scheme name, or the scheme socket could not be created. Check for duplicate instances.- Sticky keys not working — Verify
sticky_keys=truein config (cat /scheme/accessibility/config). The daemon must receive key events viawritetosticky-keys(format:key <scancode> <pressed_bool> [now_ms]). Passive — not auto-fed by the input stack yet. - Bounce/slow key filtering too aggressive — Adjust
slow_key_delay_msandbounce_key_delay_msvia config write. Increase values for users with tremors, decrease for fast typists. - Config changes not persisting — Config is in-memory only. No persistence to disk. Re-apply config via init service
[[files]]entries or a startup script that writes to/scheme/accessibility/config. - Root listing returns empty — The root directory listing is hardcoded (
config\nstatus\nsticky-keys\n). Ifgetdentsreturns unexpected results, check that the caller uses correct Redox scheme I/O conventions.