gopass

command module
v1.9.3-rc.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2020 License: MIT Imports: 30 Imported by: 0

README

gopass Gopher by Vincent Leinweber, remixed from the Renée French original Gopher

gopass

Build Status Go Report Card MIT License Github All Releases codecov CII Best Practices

Introduction

gopass is a password manager for the command line written in Go. It supports all major operating systems (Linux, MacOS, BSD) as well as Windows.

For detailed usage and installation instructions please check out our documentation.

Design Principles

Gopass is a versatile command line based password manager that is being developed with the following principles in mind:

  • Easy: For technical users (i.e. those who are used to the command line) it should be easy to get started with gopass.
  • Secure: Security is hard. We aim to make it as easy as possible while still providing a good level of protection against common adversaries. Caution: If your personal threat level is very high, we might not offer a good tool for you.
  • Extensible: While Gopass includes a fair amount of useful features, we can't cover every use-case. To support more special use cases we want to provide a clean and simple API to integration gopass into your own binaries.

Demo

asciicast

Features

Please see docs/features.md for an extensive list of all features along with several usage examples.

Feature State Description
Secure secret storage stable Securely storing encrypted secrets
Recipient management beta Easily manage multiple users of each store
Multiple stores stable Mount multiple stores in your root store, like file systems
password quality assistance beta Checks existing or new passwords for common flaws
password leak checker integration Perform offline checks against known leaked passwords
PAGER support stable Automatically invoke a pager on long output
JSON API integration Allow gopass to be used as a native extension for browser plugins
Automatic fuzzy search stable Automatically search for matching store entries if a literal entry was not found
gopass sync stable Easy to use syncing of remote repos and GPG keys
Desktop Notifications stable Display desktop notifications and completing long running operations
REPL beta Integrated Read-Eval-Print-Loop shell with autocompletion.
Extensions Extend gopass with custom commands using our API

Installation

Please see docs/setup.md.

If you have Go 1.14 (or greater) installed:

go get github.com/gopasspw/gopass

WARNING: Please prefer releases, unless you want to contribute to the development of gopass. The master branch might not be very well tested and can contain breaking changes without further notice.

Upgrade

To upgrade with Go installed, run:

go get -u github.com/gopasspw/gopass

Otherwise, use the setup docs mentioned in the installation section to reinstall the latest version.

Development

This project uses GitHub Flow. In other words, create feature branches from master, open an PR against master, and rebase onto master if necessary.

We aim for compatibility with the latest stable Go Release only.

While this project is maintained by volunteers in their free time we aim to triage issues weekly and release a new version at least every quarter.

Credit & License

gopass is licensed under the terms of the MIT license. You can find the complete text in LICENSE.

Please refer to the Git commit log for a complete list of contributors.

Community

gopass is developed in the open. Here are some of the channels we use to communicate and contribute:

  • Usage mailing list: gopass-users, for discussions around gopass usage and community support
  • Issue tracker: Use the GitHub issue tracker to file bugs and feature requests. If you need support, please send your questions to gopass-users or ask on IRC rather than filing a GitHub issue.

Integrations

  • gopassbridge: Browser plugin for Firefox, Chrome and other Chromium based browsers
  • kubectl gopass: Kubernetes / kubectl plugin to support reading and writing secrets directly from/to gopass.
  • gopass alfred: Alfred workflow to use gopass from the Alfred Mac launcher
  • gopass-git-credentials: Integrate gopass as an git-credential helper
  • gopass-hibp: haveibeenpwned.com leak checker
  • gopass-jsonapi: native messaging for browser plugins, e.g. gopassbridge

Mobile apps

Contributing

We welcome any contributions. Please see the CONTRIBUTING.md file for instructions on how to submit changes. If your are planning on making more elaborate or controversial changes, please discuss them on the gopass-developers mailing list or on IRC before sending a pull request.

Further Documentation

External Documentation

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
internal
audit
Package audit contains the password-strength auditing implementation
Package audit contains the password-strength auditing implementation
backend/crypto/gpg/cli
Package cli implements a GPG CLI crypto backend.
Package cli implements a GPG CLI crypto backend.
backend/crypto/plain
Package plain implements a plaintext backend TODO(2.x) DEPRECATED and slated for removal in the 2.0.0 release.
Package plain implements a plaintext backend TODO(2.x) DEPRECATED and slated for removal in the 2.0.0 release.
backend/crypto/xc
Package xc implements a modern crypto backend for gopass.
Package xc implements a modern crypto backend for gopass.
backend/rcs/git/cli
Package cli implements a git cli based RCS backend.
Package cli implements a git cli based RCS backend.
backend/rcs/noop
Package noop implements a ineffective RCS backend for use with external synchronization solutions.
Package noop implements a ineffective RCS backend for use with external synchronization solutions.
backend/storage/fs
Package fs implement a password-store compatible on disk storage layout with unencrypted paths.
Package fs implement a password-store compatible on disk storage layout with unencrypted paths.
backend/storage/kv/inmem
Package inmem implements an in memory storage backend for tests.
Package inmem implements an in memory storage backend for tests.
backend/storage/kv/ondisk
Package ondisk implements an encrypted on-disk storage backend with integrated revision control as well as automatic synchronization (soon).
Package ondisk implements an encrypted on-disk storage backend with integrated revision control as well as automatic synchronization (soon).
cui
debug
Package debug provides logging of debug information.
Package debug provides logging of debug information.
otp
out
queue
Package queue implements an experimental background queue for cleanup jobs.
Package queue implements an experimental background queue for cleanup jobs.
tpl
tree
Package tree implements a tree for displaying hierarchical password store entries.
Package tree implements a tree for displaying hierarchical password store entries.
pkg
appdir
Package appdir implements a customized lookup pattern for application paths like config, cache and data dirs.
Package appdir implements a customized lookup pattern for application paths like config, cache and data dirs.
gopass
Package gopass contains the public gopass API.
Package gopass contains the public gopass API.
hibp/api
Package api implements an HIBP API client.
Package api implements an HIBP API client.
hibp/dump
Package dump implements an haveibeenpwned.com dump scanner.
Package dump implements an haveibeenpwned.com dump scanner.
pinentry
Package pinentry implements a cross platform pinentry client.
Package pinentry implements a cross platform pinentry client.
pwgen
Package pwgen implements multiple popular password generate algorithms.
Package pwgen implements multiple popular password generate algorithms.
pwgen/pwrules
Code generated by go generate gen.go.
Code generated by go generate gen.go.
qrcon
Package qrcon implements a QR Code ANSI printer for displaying QR codes on the console.
Package qrcon implements a QR Code ANSI printer for displaying QR codes on the console.
tempfile
Package tempfile is a wrapper around ioutil.TempDir, providing an OO pattern as well as secure placement on a temporary ramdisk.
Package tempfile is a wrapper around ioutil.TempDir, providing an OO pattern as well as secure placement on a temporary ramdisk.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL