🦀 frbw — a minimal rust-powered tool that brings the power of Bitwarden to your Wayland desktop using rbw and fuzzel.
-
Fuzzel RBW currently supports a custom
prompt: shows just before the placeholder, default>placeholder: self explanatory, defaultselect an entrylines: number of vertical lines for fuzzel to display, default6notifications: whether to send notifications vianotify-send, defaulttruecopy_user_exit_code: exit code for copying a username to clipboardcopy_password_exit_code: exit code for copying a password to clipboardtype_user_exit_code: exit code for typing the username individuallytype_password_exit_code: exit code for typing the password individually
-
The config file is expected to be at
$HOME/.config/fuzzel-rbw/config.jsonand will be automatically generated if it does not exist
{
"placeholder": "select an entry",
"prompt": "> ",
"lines": 6,
"notifications": true,
"copy_user_exit_code": 10,
"copy_password_exit_code": 11,
"type_user_exit_code": 12,
"type_password_exit_code": 13
}
- You also need to set custom keybinds in your fuzzel configuration file
$HOME/.config/fuzzel/fuzzel.inito return different exit status codes
{
[key-bindings]
custom-1=Control+Shift+u # sends code 10
custom-2=Control+Shift+p
custom-3=Control+Mod1+u
custom-4=Control+Mod1+p
}
-
You can use anything from
custom-1tocustom-19and they return exit status codes10 - 28respectively. -
If nothing happens when you press a keybind, you might be trying to remap a default keybind. Run fuzzel on terminal to see where the conflict is
-
To understand more about how custom keybinds work in fuzzel, please read the wiki !
- RBW allows you to specify the pinentry binary to use. Fuzzel RBW comes with
pinentry-fuzzel. To use it add the block below to~/.config/rbw/config.json
{ "pinentry": "pinentry-fuzzel" }
Note
Currently pinentry-fuzzel only supports GETPIN
Warning
Before using pinentry-fuzzel, please take your time to understand why pinentry exists in the first place and the risks involved. Pinentry-fuzzel only aims to make things more convenient and does not provide the security that comes with traditional pinentry clients
paru -S fuzzel-rbw
alternatively if you use yay
yay -S fuzzel-rbw
-
You need rust - install rust
-
Clone this repo
git clone https://github.com/sammhansen/fuzzel-rbw.git -
Build
cargo build --release --locked -
Copy the binary to
/usr/bin/sudo cp target/release/frbw /usr/bin/ -
Copy the
pinentry-fuzzelbinary to/usr/bin/sudo cp target/release/pinentry-fuzzel /usr/bin/ -
Copy the logo to
/usr/share/pixmapssudo cp .assets/bitwarden.png /usr/share/pixmaps/bitwarden.png
