Skip to main content

A package manager for Xonotic.

Project description

Build Status Documentation Status

A command-line package manager for the xonotic-map-repository project.

Used with the unofficial Xonotic map repository,, by default.

asciicast of xmm

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. ## Requirements


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

sudo apt install python3-pip python3-setuptools


pip3 install xmm --user

or for development:

git clone
cd xonotic-map-manager
python3 develop


usage: xmm [-h] [--version] [-S [SERVER]] [-T [TARGET]] [-R [REPOSITORY]]

Xonotic Map Manager is a tool to help manage Xonotic maps

positional arguments:
    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 is hosted on


Contributions to this project are welcome, please read


Copyright (c) 2016 Tyler Mulligan ( and contributors.

Distributed under the MIT license. See the LICENSE file for more details.

0.8.0 / 2016-12-22


  • Multi-repo support

  • Created documentation with sphinx, hosted at

  • 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


  • Complete overhaul of code base exposing a Python API

  • No longer using pickle, storing data in JSON

  • Configuration updates, see Upgrading

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

xmm-0.8.0.tar.gz (8.9 MB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page