Skip to main content

A Python GUI, CLI, and wrapper for Tomb

Project description

mausoleum.png

travis coveralls dependency codacy pypiversion pypistatus pythonversion pypiformat license

Mausoleum consists of a command line application and GUI application wrapped around Tomb (the Crypto Undertaker). Both applications were created with the intention of making it easier for users to interact with Tomb.

screenshot.png

Installation

As Mausoleum is purely a wrapper for Tomb, it requires Tomb to be installed locally. For Tomb installation details, please see: https://www.dyne.org/software/tomb/. The Mausoleum GUI application requires PyQt5 to be installed locally. For PyQt5 installation instructions, please visit: https://www.riverbankcomputing.com/software/pyqt/download5.

With your environment set, the following command may be used to install Mausoleum:

$  pip install mausoleum

If you would rather install from source, run:

$  git clone https://github.com/mandeep/Mausoleum.git
$  cd Mausoleum
$  python setup.py install

GUI Application

To run the GUI application, simply run the following command in a terminal:

$  mausoleum-gui

The command will open a new window that includes tabs that group Tomb functions into separate tabs. The ‘Create’ tab receives information needed to create a new tomb, the ‘Open’ tab allows the user to fill in information regarding the opening of an existing tomb, the ‘Close’ tab lets the user close opened tombs, the ‘Resize’ tab gives the user the ability to resize an existing tomb, the ‘List’ tab displays all active tombs, and the ‘Config’ tab allows the user to make configuration changes to the GUI.

Command Line Application

With Mausoleum installed, the command line application can be invoked with the following commands and arguments:

usage: mausoleum [options] command [arguments]

commands:
    construct               Dig, forge, and lock a new tomb
    enter                   Open an existing tomb
    alter                   Resize an existing tomb

positional arguments:
    name                    Name of the new or existing tomb
    size                    The size in megabytes for the new tomb
    key                     Name of the new or existing tomb key file

optional arguments:
    --open                  Option that opens a tomb after creation or resizing

If a key is not supplied as a command line argument, the application will search for a key with the name of the tomb with .key as the suffix.

Example of creating a new tomb and opening it thereafter:

$  mausoleum construct --open secret.tomb 100
Password:
Repeat for confirmation:

Example of opening an existing tomb:

$  mausoleum enter secret.tomb
Password:

Wrapper

Mausoleum may be imported as a module as seen in the following example:

import mausoleum.wrapper


def batch_create_tombs(names, size, password):
    """Take a list of names and batch create tombs."""

    for name in names:
        key = '{}.key' .format(name)
        mausoleum.wrapper.dig_tomb(name, size)
        mausoleum.wrapper.forge_tomb(key, password)
        mausoleum.wrapper.lock_tomb(name, key, password)

Contributions

All contributions are welcome! Feel free to submit a pull request for trivial changes. For other changes, please open an issue on the repository’s issue tracker.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mausoleum-0.5.0.tar.gz (10.3 kB view details)

Uploaded Source

Built Distributions

mausoleum-0.5.0-py3.4.egg (24.6 kB view details)

Uploaded Source

mausoleum-0.5.0-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file mausoleum-0.5.0.tar.gz.

File metadata

  • Download URL: mausoleum-0.5.0.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mausoleum-0.5.0.tar.gz
Algorithm Hash digest
SHA256 a651770d390efda8c7973f2ddb0ae3f3b21cdbc631b641950a0c1c9ecff0622e
MD5 64e3a09c676eb34c8df2ad8f61ce46e5
BLAKE2b-256 7c74cb4af8647a9e28a27cef5bbea72c7ae865ca8608761dc1e7623753a5be34

See more details on using hashes here.

File details

Details for the file mausoleum-0.5.0-py3.4.egg.

File metadata

File hashes

Hashes for mausoleum-0.5.0-py3.4.egg
Algorithm Hash digest
SHA256 e9637416fda98faff56a43b638c816a91cf907e291e0a6854c984d523f0458c5
MD5 a990e2a4f96541e8ec45009a6a4c1f9e
BLAKE2b-256 e70515e63b31c06ab6f544cae8a12504a34b058ef06f8b1404839d6931752f62

See more details on using hashes here.

File details

Details for the file mausoleum-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mausoleum-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3fbbecd2b039acc68de17009047d87f606216a0ae698e5048bd08826c2ce4d04
MD5 75f69c58b5cde19e384e21ffef700ef0
BLAKE2b-256 d403084fb44ea3da4615d4e1dbfda05f77fd58d5ac6e3da5449bd6a2d8f200d9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page