You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Release Bot b11fcecbd9
ci/woodpecker/push/publish Pipeline failed Details
ci/woodpecker/push/sync Pipeline was successful Details
chore: Release genpass version 0.5.27
4 weeks ago
.github Update FUNDING.yml 3 years ago
.woodpecker Update '.woodpecker/publish.yml' 4 weeks ago
scripts extract script to set up ci env 4 weeks ago
src migrate to crane 1 month ago
tests Add commandline tests 2 years ago
.envrc Update dependencies 1 year ago
.gitignore ignore nix build results 4 weeks ago
.gitlab-ci.yml port to newer rust 3 years ago
CHANGELOG.md chore: Release genpass version 0.5.27 4 weeks ago
Cargo.lock chore: Release genpass version 0.5.27 4 weeks ago
Cargo.toml chore: Release genpass version 0.5.27 4 weeks ago
LICENSE Initial commit 5 years ago
README.md remove sourcehut build badge 4 weeks ago
build.rs port to newer rust 3 years ago
flake.lock migrate to crane 1 month ago
flake.nix use develop to run cargo as shell does not have the dev env 1 month ago
release.toml don't use cargo release to push as it's broken 12 months ago
rust-toolchain Move to moz overlay 3 years ago

README.md

genpass status-badge dependency status Donate

A simple yet robust commandline random password generator.

Multiplatform (Linux, Mac, Windows). Fast.

You can use it generate keys or passwords in scripts or use it as your primary desktop password generator.

Has extensive generative test suite, including tests against a Rust port of Dropbox's password strength tester zxcvbn

Typical usage

genpass                  # use defaults, they're good
genpass 2048             # generate long password, can be used as a key
genpass --passphrase 128 # generate longer passphrase
genpass -dlu             # no special characters

Generating a password directly into your system clipboard

On a Mac:

genpass | pbcopy

On Linux:

genpass | xclip -selection clipboard

Getting genpass

If you're using Nix flakes

  • you can try genpass without installing it nix run git+https://git.cyplo.dev/cyplo/genpass.git
  • flake url is https://git.cyplo.dev/cyplo/genpass.git

On any system with Rust installed

$ cargo install genpass

Commandline options

$ genpass --help

USAGE:
genpass [FLAGS] [length]

FLAGS:
-h, --help                 Prints help information
-l, --include-lowercase    Generate the password using lowercase letters
-n, --include-numeric      Generate the password using numeric characters
-s, --include-special      Generate the password using special (non-alphanumeric) characters
-u, --include-uppercase    Generate the password using uppercase letters
--passphrase           Create a passphrase of (at least) the given length instead of a password.
--version

ARGS:
<length>    The length of the password to generate [default: 32]

A note on passphrases

  • Passphrases are generated using EFF's "long" password list.
  • Passphrases are at least --length characters long, not necessarily exactly that long.

A road to 1.0

TODOs to get genpass to 1.0

Contributing

All contributions welcome !

Sources

git clone https://git.cyplo.dev/cyplo/genpass.git

quickstart

  • you can use Nix to recreate the development environment reproducibly
  • nix develop in this repo will give you a shell with all the dependencies needed