update variables etc
This commit is contained in:
parent
adc2074288
commit
fb073d26c3
1 changed files with 45 additions and 34 deletions
79
README.md
79
README.md
|
|
@ -1,13 +1,17 @@
|
|||
# bwzy - bitwarden ... fuzzy
|
||||
|
||||
bwzy is a fuzzy finder for Bitwarden using the official bitwarden cli.
|
||||
bwzy is a fuzzy finder and auto-filler for Bitwarden using the official bitwarden cli (read-only at present).
|
||||
|
||||
The `bw` cli is great, but not very user-friendly.
|
||||
|
||||
`bwzy` tries to make this quicker by caching the information and presenting it via the magnificient [fzf](https://junegunn.github.io/fzf/).
|
||||
|
||||
`bwzy` also adds an archive mode which lets you hide entries based on a string.
|
||||
|
||||
|
||||
# current features
|
||||
- READ-ONLY ui
|
||||
- READ-ONLY terminal UI
|
||||
- filter based on name (i.e. "hide archives")
|
||||
- search based on name and folder
|
||||
- copy user/pass/totp
|
||||
- cache the items in shared memory (`/dev/shm/`) to make it fast
|
||||
|
|
@ -35,31 +39,48 @@ Additinally, you will need clipboard and keyboard automation such as `wtype` and
|
|||
All configuration is done via environment variables, with defaults shown
|
||||
|
||||
```bash
|
||||
BWZY_CACHE=`/dev/shm/bwzy-cache` # where the passwords are cached
|
||||
BWZY_KEEP_CACHE='true' # set to false and cache will be purged
|
||||
BWZY_COPY_CMD='wl-copy' # the command to copy something to the clipboard
|
||||
BWZY_TYPE_CMD='wtype' # the command used to type / send keyboard events
|
||||
BWZY_HIDE_CMD='' # the command to hide bwzy
|
||||
BWZY_REFOCUS_CMD='' # the command to refocuse the previous window
|
||||
BWZY_COPY_AND_HIDE='true' # set to 'false' to not hide bwzy on copy
|
||||
BWZY_NOTIFY_CMD='notify-send -i bitwarden' # send a notification
|
||||
# functional settings
|
||||
BWZY_CACHE=`/dev/shm/bwzy-cache` # where the passwords are cached
|
||||
BWZY_KEEP_CACHE='true' # set to false and cache will be purged
|
||||
BWZY_COPY_CMD='wl-copy' # the command to copy something to the clipboard
|
||||
BWZY_TYPE_CMD='wtype' # the command used to type / send keyboard events
|
||||
BWZY_HIDE_CMD='' # the command to hide bwzy.desktop
|
||||
BWZY_REFOCUS_CMD='' # the command to refocuse the previous window
|
||||
BWZY_COPY_AND_HIDE='true' # set to 'false' to not hide bwzy on copy - does not affect auto-fill
|
||||
BWZY_NOTIFY_CMD='notify-send -i bitwarden' # send a notification (optional, but nice to know if a TOTP has been copied)
|
||||
BWZY_FILTER="-zz~ " # exclude items with this string in name of folder
|
||||
|
||||
# cosmetic overrides which adjust the looks
|
||||
BWZY_USER_SYMBOL='u+'
|
||||
BWZY_PASS_SYMBOL='p+'
|
||||
BWZY_TOTP_SYMBOL='t+'
|
||||
BWZY_LINK_SYMBOL='l+'
|
||||
BWZY_AUTO_SYMBOL='a+'
|
||||
BWZY_FOLDER_SYMBOL='/'
|
||||
BWZY_POINTER_SYMBOL='> '
|
||||
BWZY_PROMPT_SYMBOL='? '
|
||||
BWZY_USER_SYMBOL='u+' # new prompt on user copy
|
||||
BWZY_PASS_SYMBOL='p+' # new prompt on password copy
|
||||
BWZY_TOTP_SYMBOL='t+' # new prompt on TOTP copy
|
||||
BWZY_LINK_SYMBOL='l+' # new prompt on link copy
|
||||
BWZY_AUTO_SYMBOL='a+' # new prompt on auto-fill
|
||||
BWZY_FOLDER_SYMBOL='/' # new symbol used for a folder
|
||||
BWZY_POINTER_SYMBOL='> ' # the line marker used by FZF
|
||||
BWZY_PROMPT_SYMBOL='? ' # the prompt symbol used by FZF
|
||||
```
|
||||
|
||||
`bwzy` is being tested as my daily driver under [Hyprland](https://hypr.land/) and [Wayland](https://wayland.freedesktop.org/) only, but may be adaptable by the intrepid adventurer. The configuration items to look at are:
|
||||
|
||||
- `BWZY_COPY_CMD`
|
||||
- `BWZY_TYPE_CMD`
|
||||
- `BWZY_HIDE_CMD`
|
||||
- `BWZY_REFOCUS_CMD`
|
||||
- `BWZY_COPY_AND_HIDE`
|
||||
- `BWZY_NOTIFY_CMD`
|
||||
|
||||
Note: under [hyprland](https://hypr.land/) the following works:
|
||||
```bash
|
||||
BWZY_HIDE_CMD=hyprctl dispatch movetoworkspacesilent special:tools,title:bwzy
|
||||
BWZY_REFOCUS_CMD=hyprctl dispatch focuscurrentorlast
|
||||
```
|
||||
which places the bwzy window launched vi the [bwzy.desktop](./bwzy.desktop) file into a special workspace when not needed.
|
||||
|
||||
This hides the bwzy window, a terminal window with the title set to `bwzy`, to a special workplace. A shortcut defined in my window manager brings that window to the foreground.
|
||||
|
||||
The [bwzy.desktop](./bwzy.desktop) file shows the way I launch it.
|
||||
|
||||
If you have a font and terminal with support for unicode, you can use fancy symbols. Here's mine:
|
||||
|
||||
```bash
|
||||
BWZY_USER_SYMBOL=' '
|
||||
|
|
@ -72,23 +93,13 @@ BWZY_POINTER_SYMBOL=' '
|
|||
BWZY_PROMPT_SYMBOL=' '
|
||||
```
|
||||
|
||||
## arch install
|
||||
```bash
|
||||
pacman -S fzf bitwarden-cli jq haskell-yaml oath-toolkit gum
|
||||
```
|
||||
## install dependency
|
||||
|
||||
|
||||
Arch Linux:
|
||||
```bash
|
||||
sudo pacman -S --needed wtype ydotool xdotool xvkbd wl-clipboard xclip xsel bat jq sed awk fzf
|
||||
```
|
||||
## tips and tricks
|
||||
# tips and tricks
|
||||
|
||||
By default the cache is removed on reboot since it lives in `/dev/shm/`. if you have a secure encrypted file system you can override the cache location so that it persists during reboots. Be safe and know your risks.
|
||||
|
||||
# feature ideas
|
||||
- ~~auto-fill~~ (done)
|
||||
- ~~"archive" feature to filter thingsi~~ (done)
|
||||
- ability to edit an entry
|
||||
- ability to add a new entry
|
||||
- ~~"archive" feature to filter things~~ (done)
|
||||
- edit an entry
|
||||
- add a new entry
|
||||
- folder based navigation (as in select from list of folders)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue