XMonad.Prompt.Pass

xmonad-contrib-0.12: Third party extensions for xmonad

Copyright | (c) 2014 Igor Babuschkin, Antoine R. Dumont
License | BSD3-style (see LICENSE)
Maintainer | Antoine R. Dumont <eniotna.t@gmail.com>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell98

XMonad.Prompt.Pass

Contents

- Usages

Description

This module provides 3 XMonad.Prompt to ease passwords manipulation (generate, read, remove):

- one to lookup passwords in the password-storage.
- one to generate a password for a given password label that the user inputs.
- one to delete a stored password for a given password label that the user inputs.

All those prompts benefit from the completion system provided by the module XMonad.Prompt.

The password store is setuped through an environment variable PASSWORD_STORE_DIR. If this is set, use the content of the variable. Otherwise, the password store is located on user's home `$HOME/.password-store`.

Source:

- The password storage implementation is the password-store cli.
- Inspired from http://babushk.in/posts/combining-xmonad-and-pass.html

Synopsis

- passPrompt :: XPConfig -> X ()
- passGeneratePrompt :: XPConfig -> X ()
- passRemovePrompt :: XPConfig -> X ()

# Usages

You can use this module with the following in your `~/.xmonad/xmonad.hs`:

    import XMonad.Prompt.Pass

Then add a keybinding for `passPrompt`, `passGeneratePrompt` or `passRemovePrompt`:

      , ((modMask x , xK_p)                              , passPrompt xpconfig)
      , ((modMask x .|. controlMask, xK_p)               , passGeneratePrompt xpconfig)
      , ((modMask x .|. controlMask  .|. shiftMask, xK_p), passRemovePrompt xpconfig)

For detailed instructions on:

- editing your key bindings, see XMonad.Doc.Extending.
- how to setup the password storage, see http://git.zx2c4.com/password-store/about/

passPrompt :: XPConfig -> X ()

A prompt to retrieve a password from a given entry.

passGeneratePrompt :: XPConfig -> X ()

A prompt to generate a password for a given entry. This can be used to override an already stored entry. (Beware that no confirmation is asked)

passRemovePrompt :: XPConfig -> X ()

A prompt to remove a password for a given entry. (Beware that no confirmation is asked)