Xonotic Forums
xmm - Xonotic Map Manager - Printable Version

+- Xonotic Forums (https://forums.xonotic.org)
+-- Forum: Creating & Contributing (https://forums.xonotic.org/forumdisplay.php?fid=10)
+--- Forum: Xonotic - Development (https://forums.xonotic.org/forumdisplay.php?fid=12)
+--- Thread: xmm - Xonotic Map Manager (/showthread.php?tid=6071)



xmm - Xonotic Map Manager - -z- - 03-08-2016

I've spent the past 2-3 days putting together a vision I've had for a while.

[Image: xmm.gif]

example shows searching for a map, installing a package, the listing my locally installed packages.

It works with the http://xonotic.co map repository and enables you to search through the same json that powers that front-end via the command line.

I won't repeat the details of what capabilities are involved, as they are available with the source code found here: https://github.com/z/xonotic-map-manager

Again, this is only a few days work, so expect some changes. I believe it's solid enough to start using, however.

I'm open to feature requests, but there is also a plugin system, so you can extend it yourself!


RE: xmm - Xonotic Map Manager - -z- - 04-07-2016

A stable 0.7.0 release is available, see the release notes here: https://github.com/z/xonotic-map-manager/releases/tag/0.7.0


RE: xmm - Xonotic Map Manager - -z- - 12-22-2016

[Image: xmm.gif]

I'm happy to announce that today Xonotic Map Manager 0.8.0 has been tagged and released.

This release brings a complete overhaul of the underlying code, exposing an underlying API and all sorts of other goodies detailed in the readthedocs - documentation.

xmm is also on pypi, making it my first package I've released there, which is a milestone I've had in my backlog for a few months now.

This targets Linux based systems, code and issue tracker maintained on github.com with a gitlab mirror.

I'm happy to support other system through contributions. Thanks for checking it out!


RE: xmm - Xonotic Map Manager - BuddyFriendGuy - 12-22-2016

Awesome! This is mostly for server admins, I assume?


RE: xmm - Xonotic Map Manager - -z- - 12-23-2016

It could be used by end-users who enjoy command-line interfaces, and want to get a better sense of their map collection.

Using the command "discover" for example, one could setup their "target_dir" in "~/.xmm/xmm.ini" to point to "~/.xonotic/data/dlcache" instead of "~/.xonotic/data/". xmm will analyze all the maps in your library and give you more information about them at a glance. With the "--add" flag they would be added to your "~/.xmm/library.json" file which tracks your collection.

To rephrase, "xmm discover --add" finds and inserts any new maps that are known by the repository to a "~/.xmm/library.json" that is referenced and analyzed by other commands.

The discover command works by getting a shasum locally for a pk3 name, and comparing it with the shasum in the repository.

Another handy feature for end users is search.

Code:
xmm search -h
usage: xmm search [-h] [--gametype [GAMETYPE]] [--pk3 [PK3]] [--title [TITLE]]
                  [--author [AUTHOR]] [--shasum [SHASUM]] [--long] [--short]
                  [--color]
                  [string]

positional arguments:
  string                bsp name found in a package, works on packages with
                        many bsps

optional arguments:
  -h, --help            show this help message and exit
  --gametype [GAMETYPE]
                        filter by gametype
  --pk3 [PK3]           filter by pk3 name
  --title [TITLE]       filter by title
  --author [AUTHOR]     filter by author
  --shasum [SHASUM]     filter by shasum
  --long, -l            show long format
  --short, -s           show short format
  --color, -c           highlight search term in results

You can do a "deep search" on repositories from the command line and install anything you want to test. If it doesn't work out, it's a simple "xmm remove mapididnotlike.pk3".


RE: xmm - Xonotic Map Manager - PinkRobot - 12-23-2016

Good job. It's not something I personally would have a lot of use for but it looks very well made. Nice work!