Skip to main content
# ToolBoxAssistant

An utility to easily manage your toolbox applications.

## Introduction

ToolBoxAssistant works by reading a JSON file containing the toolbox location and applications information.
By default it searches for a `toolbox.json` in the current directory. It can install applications from a
version control system (git / mercurial / subversion), or directly from an archive URL, and supports build
directives if needed.

## Installation

### From source

python setup.py install

### From PyPI

pip install ToolBoxAssistant

## Usage


```
usage: tba [-h] [-f FILE] [-v] {sync,genspec} ...

Easily manage your toolbox applications.

optional arguments:
-h, --help show this help message and exit
-f FILE, --file FILE toolbox specfile to use (default: toolbox.json)
-v, --verbose display debug information

Subcommands:
{sync,genspec} (use "tba <cmd> -h" for commands help)
sync synchronize installed applications with specfile
genspec generate specfile from installed applications
```

### sync

Reads the specifications file, and automatically install listed applications, or updates them if they are already
installed. If the `-u`/`--unlisted` option is used, a warning is issued if versionned applications are installed
but not listed in the specfile.

```
usage: tba sync [-h] [-u]

optional arguments:
-h, --help show this help message and exit
-u, --unlisted list installed applications missing from specfile
```

### genspec

Searches for versionned applications in given folder and generate a specfile. If the `-m`/`--merge` option is used,
given file is updated.

```
usage: tba genspec [-h] [-m FILE] path

positional arguments:
path toolbox folder to scan for applications

optional arguments:
-h, --help show this help message and exit
-m FILE, --merge FILE
merge found applications with existing specfile
```

## The `toolbox.json` file

The following JSON example shows all the specifications that can be defined within the `toolbox.json` file:

```javascript
{
"path": "/tmp/toolbox-example",
"apps": {
"sqlmap": {
"type": "git",
"url": "https://github.com/sqlmapproject/sqlmap",
"path": "web/sqlmap"
},
"androguard": {
"type": "hg",
"url": "https://code.google.com/p/androguard/",
"path": "mobility/androguard"
},
"skipfish": {
"type": "svn",
"url": "http://skipfish.googlecode.com/svn/trunk/",
"path": "web/skipfish",
"build": [
"make"
]
},
"nmap": {
"type": "archive",
"url": "https://nmap.org/dist/nmap-6.47.tar.bz2",
"path": "network/nmap",
"build": [
"./configure",
"make"
]
}
}
}


```

## Bugs / Feature requests

If you find any bug, or have any feature you would like to see implemented, feel free to fill a ticket in the
issue tracker, or even better, fix/code it by yourself and do a pull-request.

## License

This project is licensed under the GNU GPLv3.

Release files for ToolBoxAssistant 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ToolBoxAssistant 0.1
File Size Uploaded
ToolBoxAssistant-0.1.tar.gz 21.0 kB Details

Release files / ToolBoxAssistant-0.1.tar.gz

Download URL ToolBoxAssistant-0.1.tar.gz
Size 21.0 kB
Tags Source
SHA-256 checksum
How to use checksums
8664935d6af63ebe4374af66e6654a027cc2603d2b12657cdf6e5a5551f8ee0d
BLAKE2b-256 checksum
How to use checksums
628e7f23a3f6c0f55e7f9a453de26d871c74fe2bb8b14389ce1162afeef980f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page