Dmenu frontend for Keepass databases
Project description
Fully featured Dmenu frontend for managing Keepass databases.
Inspired in part by Passhole, but I wanted something more dmenu and less command line focused.
I’m very aware of pass and passmenu, but I’ve found that the Keepass options for other platforms are much easier to use, especially for the non-technically oriented. Thus…synchronized passwords and everyone is happy!
Features
Auto-type username and/or password on selection. No clipboard copy/paste involved.
Select any single field and have it typed into the active window. Notes fields can be viewed line-by-line from within dmenu and the selected line will be typed when selected.
Edit entry title, username, URL and password (manually typed or auto-generate)
Edit notes using terminal or gui editor (set in config.ini, or uses $EDITOR)
Add and Delete entries
Rename, move, delete and add groups
Prompts for and saves initial database and keyfile locations if config file isn’t setup before first run.
Set multiple databases and keyfiles in the config file.
Keepmenu runs in the background after initial startup and will retain the entered passphrase for pw_cache_period_min minutes.
Optional Pinentry support for secure passphrase entry.
License
MIT
Requirements
Python 2.7+ or 3.2+
Pykeepass and PyUserInput. Install via pip or your distribution’s package manager, if available.
Dmenu. Basic support is included for Rofi, but most Rofi configuration/theming should be done via Xresources.
(optional) Pinentry. Make sure to set which flavor of pinentry command to use in the config file.
Installation
Installation
pip install –user keepmenu. Add ~/.local/bin to $PATH
In a virtualenv with pip. Link to the executable in <path/to/virtualenv/bin/keepmenu>
mkvirtualenv keepmenu pip install keepmenu
From git. Just clone, install requirements and run
Available in Archlinux AUR.
If you start keepmenu for the first time without a config file, it will prompt you for database and keyfile locations and save them in a default config file.
Copy config.ini.example to ~/.config/keepmenu/config.ini, or use it as a reference for additional options.
Add your database(s) and keyfile(s)
Adjust pw_cache_period_hrs if desired. Default is 6 hours.
Set the dmenu_command to rofi if you are using that instead
If using Rofi, you can try some of the command line options in config.ini or set them using the dmenu_command setting, but I haven’t tested most of them so I’d suggest configuring via .Xresources where possible.
If using dmenu for passphrase entry (pinentry not set), dmenu options in the [dmenu_passphrase] section of config.ini will override those in [dmenu] so you can, for example, set the normal foreground and background colors to be the same to obscure the passphrase.
Usage
Run script or bind to keystroke combination
Enter database and keyfile if not entered into config.ini already.
Start typing to match entries.
Hit Enter immediately after dmenu opens (”View/Type individual entries”) to switch modes to view and/or type the individual fields for the entry.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for keepmenu-0.5.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0038e35c531aba95ed5273dc1733f855a282e3134ecafa162d15444eef3b311 |
|
MD5 | dd3771a0b6a5841f546e66f644fbd206 |
|
BLAKE2b-256 | 46b5ed8b5919cdb64c931287ebb1874da62bc07150faeed823a2b6beaa80d39c |