{"id":13558691,"url":"https://github.com/roddhjav/pass-update","last_synced_at":"2025-12-26T23:18:45.252Z","repository":{"id":44729510,"uuid":"80303828","full_name":"roddhjav/pass-update","owner":"roddhjav","description":"A pass extension that provides an easy flow for updating passwords.","archived":false,"fork":false,"pushed_at":"2024-03-01T12:19:26.000Z","size":298,"stargazers_count":302,"open_issues_count":5,"forks_count":24,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-02T13:52:33.500Z","etag":null,"topics":["pass","pass-extension","password","password-manager","password-store"],"latest_commit_sha":null,"homepage":"https://www.passwordstore.org","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/roddhjav.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"github":"roddhjav"}},"created_at":"2017-01-28T18:58:50.000Z","updated_at":"2025-03-30T17:12:52.000Z","dependencies_parsed_at":"2024-04-08T20:30:38.123Z","dependency_job_id":null,"html_url":"https://github.com/roddhjav/pass-update","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roddhjav%2Fpass-update","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roddhjav%2Fpass-update/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roddhjav%2Fpass-update/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roddhjav%2Fpass-update/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roddhjav","download_url":"https://codeload.github.com/roddhjav/pass-update/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247009685,"owners_count":20868590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pass","pass-extension","password","password-manager","password-store"],"created_at":"2024-08-01T12:05:06.212Z","updated_at":"2025-12-26T23:18:45.245Z","avatar_url":"https://github.com/roddhjav.png","language":"Shell","funding_links":["https://github.com/sponsors/roddhjav"],"categories":["Shell","Extensions","others"],"sub_categories":["All other extensions"],"readme":"[\u003cimg src=\"https://gitlab.com/uploads/-/system/project/avatar/2394420/logo.png\" align=\"right\" height=\"110\"/\u003e][github-link]\n\n# pass update\n\n[![][gitlab]][gitlab-link] [![][coverage]][coverage-link] [![][quality]][quality-link] [![][release]][release-link]\n\n**A [pass] extension that provides an easy flow for updating passwords.**\n\n\n## Description\n\n`pass update` extends the pass utility with an update command providing\nan easy flow for updating passwords. It supports path, directory and wildcard\nupdate. Moreover, you can select how to update your passwords by automatically\ngenerating new passwords or manually setting your own.\n\n`pass update` assumes that the first line of the password file is the password\nand so only ever updates the first line unless the `--multiline` option is\nspecified.\n\nBy default, `pass update` prints the old password and waits for the user before\ngenerating a new one. This behaviour can be changed using the provided options.\n\n## Usage\n\n```\npass update 2.2.1 - A pass extension that provides an easy flow for updating passwords.\n\nUsage:\n    pass update [-h] [-n] [-l \u003cs\u003e] [-c | -p] [-p | -m]\n                [-e \u003cr\u003e] [-i \u003cr\u003e] [-E] [-f] pass-names...\n         Provide an interactive solution to update a set of passwords.\n         pass-names can refer either to password store path(s) or to\n         directory.\n\n         It prints the old password and waits for the user before generating\n         a new one. This behaviour can be changed using the provided options.\n\n         Only the first line of a password file is updated unless the\n         --multiline option is specified.\n\n     Options:\n         -c, --clip        Write the password to the clipboard.\n         -n, --no-symbols  Do not use any non-alphanumeric characters.\n         -l, --length \u003cs\u003e  Provide a password length.\n         -a, --auto-length Match the previous password's length.\n         -p, --provide     Let the user specify a password by hand.\n         -m, --multiline   Update a multiline password.\n         -i, --include \u003cr\u003e Only update the passwords that match a regex.\n         -e, --exclude \u003cr\u003e Do not update the passwords that macth a regex.\n         -E, --edit        Edit the password using the default editor.\n         -f, --force       Force update.\n         -V, --version     Show version information.\n         -h, --help        Print this help message and exit.\n\nMore information may be found in the pass-update(1) man page.\n```\n\nSee `man pass-update` for more information.\n\n## Examples\n\n**Update `Social/twitter.com`**\n```\npass update Social/twitter.com\nChanging password for Social/twitter.com\n[}p\u002662\"#\"x'aF/_ix}6X3a)zq\nAre you ready to generate a new password? [y/N] y\nThe generated password for Social/twitter.com is:\n~*\u003eafZsB+G\\,c#+g$-,{OqJ{w\n```\n\n**Update all the Emails**\n```\npass update Email\nChanging password for Email/donenfeld.com\nb9b\"k(u#m7|ST-400B5gM%[Kq\nAre you ready to generate a new password? [y/N] y\nThe generated password for Email/donenfeld.com is:\nm6~!b5U`OhloT~R,4-OCa:h$Q\nChanging password for Email/zx2c4.com\nHWl7u\\Aqdk]AY$y!='@\u003e]8\"@`\nAre you ready to generate a new password? [y/N] y\nThe generated password for Email/zx2c4.com is:\n@uLYW_X9a\",?wDQN=hp/^Z!$J\n```\n\n**Set password length**\n```\npass update -l 50 France/bank\nChanging password for France/bank\n9b'I;]b)\u003e06xug!3.ME1*E+M3\nlogin: zx2c4\nAre you ready to generate a new password? [y/N] y\nThe generated password for France/bank is:\n|3=\u0026{ko:#I|A,P4*=[|hk^/V4jIcRN.uBBd-~RB0_L\u003csS[%k%-\n```\n\n**Provide a password by hand**\n```\npass update -p Business/site.com\nChanging password for Business/site.com\nZk=u]HqjUAKPZ$gM_,LuZV8J2\nlogin: zx2c4\nAre you ready to provide a new password? [y/N] y\nEnter the new password for Business/site.com:\nRetype the new password for Business/site.com:\n```\n\n**Do not update PIN code**\n```\npass update --exclude '^[0-9]+$' /\n```\n\n**Update only PIN code**\n```\npass update --include '^[0-9]+$' /\n```\n\n## Installation [\u003cimg src=\"https://repology.org/badge/vertical-allrepos/pass-update.svg\" align=\"right\"\u003e][repology-link]\n\n**Requirements**\n* `pass 1.7.0` or greater.\n* `bash 4.0` or greater. \n\n**ArchLinux**\n\n`pass-update` is available in the [Arch User Repository][aur].\n```sh\nyay -S pass-update  # or your preferred AUR install method\n```\n\n**Debian/Ubuntu**\n\n`pass-update` is available [my own debian repository][repo] with the package name\n`pass-extension-update`. Both the repository and the package are signed with\nmy GPG key: [`06A26D531D56C42D66805049C5469996F0DF68EC`][keys].\n```sh\nwget -qO - https://pkg.pujol.io/debian/gpgkey | gpg --dearmor | sudo tee /usr/share/keyrings/pujol.io.gpg \u003e/dev/null\necho 'deb [arch=amd64 signed-by=/usr/share/keyrings/pujol.io.gpg] https://pkg.pujol.io/debian/repo all main' | sudo tee /etc/apt/sources.list.d/pkg.pujol.io.list\nsudo apt-get update\nsudo apt-get install pass-extension-update\n```\n\n**NixOS**\n```sh\nnix-env -iA nixos.passExtensions.pass-update\n```\n\n**OSX**\n\n`pass-update` is available with Homebrew using a [third-party][brew-tap] repository\n```sh\nbrew tap simplydanny/pass-extensions\nbrew install pass-update\n```\n\n**From git**\n```sh\ngit clone https://github.com/roddhjav/pass-update/\ncd pass-update\nsudo make install  # For OSX: make install PREFIX=$(brew --prefix)\n```\n\n**Stable version**\n```sh\nwget https://github.com/roddhjav/pass-update/releases/download/v2.2.1/pass-update-2.2.1.tar.gz\ntar xzf pass-update-2.2.1.tar.gz\ncd pass-update-2.2.1\nsudo make install  # For OSX: make install PREFIX=$(brew --prefix)\n```\n\n[Releases][releases] and commits are signed using [`06A26D531D56C42D66805049C5469996F0DF68EC`][keys].\nYou should check the key's fingerprint and verify the signature:\n```sh\nwget https://github.com/roddhjav/pass-update/releases/download/v2.2.1/pass-update-2.2.1.tar.gz.asc\ngpg --recv-keys 06A26D531D56C42D66805049C5469996F0DF68EC\ngpg --verify pass-update-2.2.1.tar.gz.sig\n```\n\n## Contribution\n\nFeedback, contributors, pull requests are all very welcome.\n\n[github-link]: https://github.com/roddhjav/pass-update\n[gitlab]: https://gitlab.com/roddhjav/pass-update/badges/master/pipeline.svg?style=flat-square\n[gitlab-link]: https://gitlab.com/roddhjav/pass-update/pipelines\n[coverage]: https://img.shields.io/coveralls/roddhjav/pass-update/master.svg?style=flat-square\n[coverage-link]: https://coveralls.io/github/roddhjav/pass-update\n[quality]: https://img.shields.io/codacy/grade/1eccb02d0b9a4c3d834c01b8f67b6cb4/master.svg?style=flat-square\n[quality-link]: https://www.codacy.com/app/roddhjav/pass-update\n[release]: https://img.shields.io/github/release/roddhjav/pass-update.svg?maxAge=600\u0026style=flat-square\n[release-link]: https://github.com/roddhjav/pass-update/releases/latest\n[repology-link]: https://repology.org/project/pass-update/versions\n\n[pass]: https://www.passwordstore.org/\n[keys]: https://pujol.io/keys\n[repo]: https://pkg.pujol.io\n[aur]: https://aur.archlinux.org/packages/pass-update\n[releases]: https://github.com/roddhjav/pass-update/releases\n[keybase]: https://keybase.io/roddhjav\n[brew-tap]: https://github.com/SimplyDanny/homebrew-pass-extensions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froddhjav%2Fpass-update","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froddhjav%2Fpass-update","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froddhjav%2Fpass-update/lists"}