Metadata-Version: 2.1
Name: xmm
Version: 0.8.0
Summary: A package manager for Xonotic.
Home-page: https://www.github.com/z/xonotic-map-manager
Author: Tyler Mulligan
Author-email: z@xnz.me
License: MIT
Keywords: xonotic,xonotic-servers,xonotic-maps,gaming,cli
Platform: UNKNOWN
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Topic :: Games/Entertainment
Classifier: Topic :: System :: Archiving :: Packaging
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
License-File: LICENSE
Requires-Dist: argcomplete

# xonotic-map-manager

[![Build Status](https://travis-ci.org/z/xonotic-map-manager.svg?branch=master)](https://travis-ci.org/z/xonotic-map-manager) [![Documentation Status](https://readthedocs.org/projects/xonotic-map-manager/badge/?version=latest)](http://xonotic-map-manager.readthedocs.io/en/latest/?badge=latest)

A command-line package manager for the [xonotic-map-repository](https://github.com/z/xonotic-map-repository) project.

Used with the unofficial Xonotic map repository, [xonotic.co](http://xonotic.co), by default.

[![asciicast of xmm](https://raw.githubusercontent.com/z/xonotic-map-manager/master/resources/images/xmm.gif)](https://asciinema.org/a/3vrfld4k0tj91hgztw0obmnbl)

The JSON provides rich metadata about map packages which makes it easier
to discern differences between them.

For information about what data is available check [JSON Structure](#JSON-structure).
## Requirements

### Debian/Ubuntu

If you do not already have **pip** and **setuptools** for Python 3:

```
sudo apt install python3-pip python3-setuptools
```

## Installation

```
pip3 install xmm --user
```

or for development:

```
git clone https://github.com:z/xonotic-map-manager.git
cd xonotic-map-manager
python3 setup.py develop
```

## Usage

```
usage: xmm [-h] [--version] [-S [SERVER]] [-T [TARGET]] [-R [REPOSITORY]]
           {search,install,remove,discover,list,show,export,servers,repos,update,hello}
           ...

Xonotic Map Manager is a tool to help manage Xonotic maps

positional arguments:
  {search,install,remove,discover,list,show,export,servers,repos,update,hello}
    search              search for maps based on bsp names
    install             install a map from the repository, or specify a URL.
    remove              remove based on pk3 name
    discover            discover packages in a target directory
    list                list locally installed packages
    show                show details of remote or locally installed packages
    export              export locally managed packages to a file
    servers             subcommands on servers described in servers.json
    repos               subcommands on repos described in sources.json
    update              update sources json
    hello               hello is an example plugin

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -S [SERVER], --server [SERVER]
                        target server as defined in servers.json
  -T [TARGET], --target [TARGET]
                        target directory
  -R [REPOSITORY], --repository [REPOSITORY]
                        repository to use (defaults to all available)
```


## Documentation

Documentation is hosted on [readthedocs.io](http://xonotic-map-manager.readthedocs.io/en/latest).

## Contributing

Contributions to this project are welcome, please read [CONTRIBUTING.md](https://github.com/z/xonotic-map-manager/blob/master/CONTRIBUTING.md).

## License

Copyright (c) 2016 Tyler Mulligan (z@xnz.me) and contributors.

Distributed under the MIT license. See the LICENSE file for more details.
##  0.8.0 / 2016-12-22

### Added
* Multi-repo support
* Created documentation with sphinx, hosted at readthedocs.io
* Integrated tests and CI with travis
* arg completion for `bash` and `zsh` via `argcomplete`
* `-L` flag on the `xmm show` subcommand to explicitly indicate showing map details from a locally installed map. Otherwise, the source_collection cache is used for all information. 
* `-R` flag to specify a single repository if using many
* `--version` flag
* `export` command supports two more formats, shasums, maplist (bsps), or repo JSON (#7)
* `servers` command added with subcommand `list`
* `repos` command added with subcommand `list`
* `--highlight, -H` flags become `--color`
* User-configurable Logging

### Changed
* Complete overhaul of code base exposing a Python API
* No longer using pickle, storing data in *JSON*
* Configuration updates, see [Upgrading](http://xonotic-map-manager.readthedocs.io/en/latest/upgrading.html)

