Nathan Dwarshuis d66f9ffaa8 | ||
---|---|---|
app | ||
lib | ||
scripts | ||
.gitignore | ||
.stylish-haskell.yaml | ||
LICENSE | ||
README.md | ||
install_deps | ||
package.yaml | ||
stack.yaml | ||
stack.yaml.lock |
README.md
rofi-extras
These are some personal programs that use the rofi interface.
Rofi-Bitwarden
Bitwarden is an open-source password management server and this program functions as a client. Unlike many other similar clients, this only presents a simple lookup interface for usernames and passwords in the vault; editing and creating entries is not in the intendend scope.
Usage
This operates in a client/daemon fashion (locally, not with respect to the bitwarden server). The daemon holds the session key and the client presents the interface for username/password lookup.
Make sure bw-cli
is properly configured to contact your bitwarden server using
bw config server url.of.your.server
.
Start the daemon in xinitrc
or similar. This will start the deamon with a
60 second timeout for the session key (after which you would need to enter a new
password):
rofi-bw -d 60
Then launch the client to browse through the vault.
rofi-bw -c
Any options after -c
will be passed to rofi.
Dependencies
- bitwarden-cli
- dbus
- libnotify: desktop notifications
Rofi-Devices
This is a manual mounting helper for removable drives, MTP devices, and fstab entries. It will transparently handle mountpoint creation/destruction.
Usage
Launch the device manager:
rofi-dev
Any options after --
will be passed to rofi.
Select a device to mount/unmount it. Asterisks indicate that the device is
mounted and that selecting it will unmount it. Removable devices will be mounted
at the default for usdisksctl
(usually /run/media/USER
) and everything else
will be mounted in /media/USER
unless the -d
option is specified (see
rofi-dev -h
). In the latter case the directory should be owned by the user.
Fstab entries should specify the users
mount option (not user
) to enable
non-root users to mount and unmount. The mountpoint should either be in
/media/USER
(or whatever is specified by -d
) or already exist.
Credentials
For fstab entries, rofi-dev
will attempt to obtain a password if no options
are supplied in the mount options (eg keyfiles for sshfs or credential files for
cifs).
To specifify that /media/USER/foo
should use secret-tool
to find its
password, specify the -s
option. This would lookup a password for the entry
whose username
is bar
and hostname
is example.com
:
rofi-dev -s '/media/USER/foo:username=bar,hostname=example.com'
To simply prompt for a password, use the -p
option:
rofi-dev -p '/media/USER/foo'
Dependencies
- udisks2: removable drive mounting
- sshfs: mounting network devices in fstab over ssh
- cifs-utils: mounting network devices in fstab using CIFS/Samba
- jmtpfs: mounting MTP devices
- libnotify: desktop notifications
- libsecret: password lookup with
secret-tool