Skip to main content

Rofi frontend for Bitwarden

Project description

rbw-rofi

A rofi frontend for Bitwarden

Based on the alternative Bitwarden CLI rbw and inspired by rofi-pass, rbw-rofi is a simplistic password typer/copier using rofi and wofi.

Screenshot of rofi-rbw Screenshot of a rofi-rbw entry menu

Features

  • Autotype password or username (Enter/Alt+3 and Alt+2, respectively)
  • Autotype username and password (with a tab character in between) with Alt+1 (and copy TOTP to clipboard)
  • Configure autotyping either as a keybinding or by having a _autotype field in your credential
  • Copy username, password or TOTP to the clipboard (Alt+u, Alt+p and Alt+t, respectively)
  • Show an autotype menu with all fields

Usage

First, you need to configure rbw. See its documentation for that. Then, you can start rofi-rbw. It is not available as a rofi mode.

Configuration

You can configure rofi-rbw either with cli arguments or with a config file called $XDG_CONFIG_HOME/rofi-rbw.rc. In the file, use the long option names without double dashes.

Options

long option short option possible values description
--action -a type (default), copy, print Choose what rofi-rbw should do.
--target -t username, password, notes, totp (or any custom field) Choose which components of the selected entry are interesting. Can be passed multiple times to type/copy/print several components. Default is username and password.
--prompt -r any string Define the text of the prompt.
--keybindings Define custom keybindings in the format <shortcut>:<action>:<target>, for example Alt+x:copy:username. Multiple keybindings can be concatenated with ,; multiple targets for one shortcut can be concatenated with :. Note that wofi doesn't support keybindings.
--menu-keybindings Define custom keybindings for the target menu in the format <shortcut>:<action>, similar to --keybindings. Note that wofi doesn't support keybindings.
--no-cache Disable the automatic frecency cache. It contains sha1-hashes of the selected entries and how often they were used.
--clear-after integer number >= 0 (default is 0) Limit the duration in seconds passwords stay in your clipboard (unless overwritten). When set to 0, passwords will be kept indefinitely.
--typing-key-delay delay in milliseconds Set a delay between key presses when typing. 0 by default, but that may result in problems.
--no-help Don't show the help message about the available shortcuts.
--no-folder Don't show the entry's folder in the list.
--selector-args Define arguments that will be passed through to rofi or wofi.
Please note that you need to specify it as --selector-args="<args>" or --selector-args " <args>" because of a bug in argparse
--selector rofi, wofi Show the selection dialog with this application. Chosen automatically by default.
--clipboarder xsel, xclip, wl-copy Access the clipboard with this application. Chosen automatically by default.
--typer xdotool, wtype, ydotool, dotool Type the characters using this application. Chosen automatically by default.

Autotyping

By default, Alt+1 will type username and password, separated with a tab character. However, you can change this behavior by defining your own keybinding (if your selector supports this). For example, Alt+1:type:username:enter:delay:password:enter will type the username, enter, wait for a second and then type the password and enter again.

This sequence can also be defined as a field _autotype on each credential.

Installation

From distribution repositories

Packaging status

From PyPI

rofi-rbw is on PyPI. You can install it with pip install --user rofi-rbw (or sudo pip install rofi-rbw).

Manually

Download the wheel file from releases and install it with sudo pip install $filename (or you can use pip install --user $filename to only install it for the local user). Note that it needs configargparse to work.

Dependencies

You also need:

  • Python 3.7 or higher
  • rofi or wofi
  • Something to programmatically type characters into other applications. Depending on your display server, it's xdotool, wtype, ydotool or dotool.
  • Something to copy text to the clipboard. Again, depending on the display server, you want xclip, xsel or wl-copy.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rofi_rbw-1.4.2.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

rofi_rbw-1.4.2-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file rofi_rbw-1.4.2.tar.gz.

File metadata

  • Download URL: rofi_rbw-1.4.2.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.8 Linux/6.8.8-2-MANJARO

File hashes

Hashes for rofi_rbw-1.4.2.tar.gz
Algorithm Hash digest
SHA256 7cb3c7b4a8290b1f4c4e39d7e348e26876df2259448df86692f0a648dea21aa6
MD5 3ade41cc5d9ea041a3e0ba819b18d8bc
BLAKE2b-256 9aa6d92cc3213baba7710646484fd0b7b9b32585f928b12cea7659702a50d840

See more details on using hashes here.

File details

Details for the file rofi_rbw-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: rofi_rbw-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 25.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.8 Linux/6.8.8-2-MANJARO

File hashes

Hashes for rofi_rbw-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 23364486ec9805df90ebc279d2a3dd33510d6c73755b66b98aeb93ab509ef1b7
MD5 65ad4c57e347255c2cccbb1021ff1f67
BLAKE2b-256 614005ccd290ab08dd709dc5ed4783e03a2122a6bc55c5bea12160206a16aa8d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page