How naoimportaweb/meucofrinho works
Cofre is an encrypted password and secrets catalog for an isolated Qubes qube. The principal workflow is: the user unlocks the vault in the Qt panel, selects an item, then types its value into a focused window in another qube through a virtual keyboard and Qubes input proxy; copying to the clipboard is an alternative for passwords. The catalog also covers environments, cryptocurrency wallets, payment details, and free-form notes, and includes a password generator. The excerpts show the model/crypto and keyboard bridge; the README documents the cross-qube route. Some UI wiring and proxy internals were not sampled.
Main entry points: app.py Qt panel · teclado.py Keyboard bridge · gerador.py Password generator · modelo.py Catalog model
Components 18
Panel and catalog
- Qt panel
cofre/app.py - Passwords
cofre/app.py - Environments
cofre/app.py - Crypto wallets
cofre/app.py - Payment details
cofre/app.py - Free-form notes
cofre/app.py - Password generator
cofre/gerador.py
Encrypted vault
- Catalog model
cofre/modelo.py - Encryption
cofre/cripto.py - Encrypted vault file
Virtual keyboard
- Keyboard bridge
cofre/teclado.py - FIFO queue
- Virtual keyboard
vkbd.py
Qubes input route
- Qubes input proxy
- dom0 receiver
- Focused window
Other components
- User
- System clipboard
Connections 13
- User → Qt panel: unlocks and selects
- Qt panel → Catalog model: reads and edits
- Catalog model → Encryption: encrypts and decrypts
- Encryption → Encrypted vault file: reads and writes
- Qt panel → Password generator: requests password
- Password generator → Keyboard bridge: checks typable characters
- Qt panel → Keyboard bridge: starts keyboard and sends text
- Qt panel → System clipboard: copies password
- Keyboard bridge → FIFO queue: writes text
- FIFO queue → Virtual keyboard: delivers text
- Virtual keyboard → Qubes input proxy: emits input events
- Qubes input proxy → dom0 receiver: forwards via qrexec
- dom0 receiver → Focused window: injects keystrokes