Nav apraksta

Michael Buesch ed3c9bd974 mv/cp: Add category completion for 2nd param 1 gadu atpakaļ
doc ae4436bb0e Add doc/.gitignore 5 gadi atpakaļ
libpwman ed3c9bd974 mv/cp: Add category completion for 2nd param 1 gadu atpakaļ
maintenance 436ae12c52 win: Install pyaes 1 gadu atpakaļ
tests e639cdfe50 ui: Add support for multiple dbs 1 gadu atpakaļ
.gitattributes 0b0d8a1b4f Disable git db diffing 4 gadi atpakaļ
.gitignore 1dd49890c7 .gitignore: Add build dirs 1 gadu atpakaļ
COPYING 6559be016d Add a copy of the GPL v2 13 gadi atpakaļ
MANIFEST.in d60a4584b5 manifest: Add venv script 1 gadu atpakaļ
README.rst c76a80962f readme: Fix venv docs 1 gadu atpakaļ
examplescript.py 2f3e3cfc44 Add more documentation 5 gadi atpakaļ
gitconfig.sh c2794c03f3 Add script to configure git repo 5 gadi atpakaļ
install_to_venv.sh 6ed0f01842 Add venv install helper 1 gadu atpakaļ
pwman 146634f55f Update copyright 1 gadu atpakaļ
pwman.cmd 2420999105 Add windows support scripts 5 gadi atpakaļ
requirements.txt 2a7d06d551 Add Cryptodome support 1 gadu atpakaļ
setup.py ac9cc51b56 setup: Remove unused os selections 1 gadu atpakaļ

README.rst

pwman - Commandline password manager
====================================

`Homepage `_

`Git repository `_

`Github repository `_

pwman is a commandline based password manager. It encrypts the password database file using strong AES-256 encryption.

pwman has support for the following things:

* Store arbitrary attributes and text data along with the passwords and login credentials.
* Generate two factor authentication tokens (`TOTP `_).
* Database search with Regular Expressions or SQL LIKE syntax.
* Database compare (diff). In pwman prompt, at pwman command line and as `git diff` extension.
* Shell-style Tab-completion for all commands.
* Custom Python scripts for arbitrary database processing.
* Export of the complete database as SQL text dump, CSV dump and human readable plain text dump.

Install pwman
=============

pwman does not have to be installed. The `pwman` script can be run directly from the source tree.
It is not recommended to install pwman into the operating system.

Installing pwman into a virtualenv
----------------------------------

If you want to install pwman into a Python virtualenv, run the following commands to create a new venv and install pwman from `PyPi `_:

.. code:: sh

virtualenv --system-site-packages ./pwman-venv
. ./pwman-venv/bin/activate
pip3 install -U pycryptodomex
pip3 install -U pwman-python

Run pwman
=========

Just run the `pwman` executable to start pwman.

Type `pwman -h` for help about the command line options.

pwman prompt
============

If started without options, pwman enters the command prompt:

.. code::

pwman$

Type the command `help` and press enter to see help about all possible commands.

Command help
============

To get help about a specific command, enter the command into the prompt and append a question mark without spaces in between:

.. code::

pwman$ find?

Using a custom script to process the database content
=====================================================

A custom Python script can be passed to `pwman` as command line option. Such a script can do anything to the content of the database.

Please see the example script `examplescript.py` for more information.

API documentation
=================

The API documentation can be found in the `API documentation directory `_.

Crypto backend
==============

Pwman uses either `Cryptodome `_ or `pyaes `_ for AES encryption.
Therefore, either one of these Python modules has to be installed.
Pwman first tries to use Cryptodome and then falls back to pyaes, if Cryptodome is not installed.

License / Copyright
===================

Copyright (c) 2011-2023 Michael Büsch

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.