Intro
What is Bitwarden?
From Wikipedia, https://en.wikipedia.org/wiki/Bitwarden; "Bitwarden is an open-source password management service that stores sensitive information such as website credentials in an encrypted vault. The Bitwarden platform offers a variety of client applications including a web interface, desktop applications, browser extensions, mobile apps, and a CLI."
Other solutions includes, but is not limited to LastPass, KeePass and 1Password.
My problem
Since I didn't have any luck getting the AppImage as provided by Bitwarden provided at https://bitwarden.com/#download to work, I looked for other working solutions.
The supplied rpm didn't work for me for whatever reason. It's not auto-updated anyway, so further searching was needed.
Found a Docker-solution, but I feel it's to cumbersome to use.
Snap however always seems to work. I use both CentOS and Ubuntu, so it's kinda' familiar in any case.
Guide
For this to work you need both snap and snapd, adding two repos and then finally install and configure.
- If you haven't already, install the epel repo.
# yum install epel-release
- Install the needed copr repo plugin.
# yum install yum-plugin-copr
- Now enable the copr repo and press y and enter to acknowledge.
# yum copr enable ngompa/snapcore-el7
Loaded plugins: copr, fastestmirror
You are about to enable a Copr repository. Please note that this
repository is not part of the main Fedora distribution, and quality
may vary.
The Fedora Project does not exercise any power over the contents of
this repository beyond the rules outlined in the Copr FAQ at
<https://fedorahosted.org/copr/wiki/UserDocs#WhatIcanbuildinCopr>, and
packages are not held to any quality or securty level.
Please do not file bug reports about these packages in Fedora
Bugzilla. In case of problems, contact the owner of this repository.
Do you want to continue? [y/N]: y
copr done - Install the snap daemon, snapd.
# yum install snapd
- Check its status.
# systemctl status snapd.socket
snapd.socket - Socket activation for snappy daemon
Loaded: loaded (/usr/lib/systemd/system/snapd.socket; enabled; vendor preset: disabled)
Active: inactive (dead) since Wed 2019-01-16 14:58:25 CET; 2s ago
Listen: /run/snapd.socket (Stream)
/run/snapd-snap.socket (Stream) - So it's not running. In that case, let's enable and start the daemon.
# systemctl enable snapd.socket
Created symlink from /etc/systemd/system/sockets.target.wants/snapd.socket to /usr/lib/systemd/system/snapd.socket.
# systemctl start snapd.socket
# systemctl status snapd.socket
snapd.socket - Socket activation for snappy daemon
Loaded: loaded (/usr/lib/systemd/system/snapd.socket; enabled; vendor preset: disabled)
Active: active (listening) since Wed 2019-01-16 15:02:59 CET; 11s ago
Listen: /run/snapd.socket (Stream)
/run/snapd-snap.socket (Stream) - Now for some tweaking. Create symlinks so the snaps can be found.
# ln -s /var/lib/snapd/snap /snap
- We're now ready to roll with Bitwarden.
- Look for the Bitwarden snap.
I don't know the snap called bw, but the uppermost version 1.12 has the same version number as the currently available snap at https://snapcraft.io/bitwarden, so that's the one I chose.
# snap find bitwarden
Name Version Publisher Notes Summary
bitwarden 1.12.0 bitwarden✓ - A secure and free password manager for all of your devices.
bw 1.7.0 bitwarden✓ - A secure and free password manager for all of your devices. - Install the snap.
# snap install bitwarden
2019-01-16T14:10:12+01:00 INFO Waiting for restart...
bitwarden 1.12.0 from 8bit Solutions LLC (bitwarden✓) installed - Some house-keeping for the future; add a line to /etc/profile. Then save and exit.
# nano /etc/profile
export PATH="$PATH:/snap/bin" - Source the file to get the new updated path.
# source /etc/profile
- Test the new Bitwarden snap.
$ bitwarden
- You're done. Enjoy Bitwarden!
Looking around
You might want to try the below for starters in general if you're new to snap.
Getting help:
$ snap --help
Search for a particular snap:
$ snap search bitwarden
List installed snaps:
$ snap list
Manually update snaps:
$ snap refresh bitwarden
Remove snaps:
$ snap remove bitwarden
Getting more info about a snap:
$snap info bitwarden
The currently installed snap version was unstable, so revert back to the previous version:
# snap revert bitwarden
Sources
https://snapcraft.io/bitwarden
https://copr.fedorainfracloud.org/coprs/
https://docs.pagure.org/copr.copr/
https://computingforgeeks.com/install-snapd-snap-applications-centos-7/
https://forum.snapcraft.io/t/revert-of-classic-snap/1937
https://en.wikipedia.org/wiki/List_of_password_managers