maximos / maximus

BlitzMax module manager (client) - This project has been abandoned.
MIT License
4 stars 1 forks source link

| \/ | () _ _ | |\/| | / |\ \/ /| || '_ _ \ | | | |/ | | | | || (| | > < | || | | | | || || |_ \ || || _,|//_|||| || || _,||___/

This is the Maximus client. Maximus is a BlitzMax module manager.

The client allows you to install BlitzMax modules that are available from the Maximus website (http://maximus.htbaa.com, but you can also host your own). When you attempt to install a module the client will scan your module directory to see which modules are already installed and if you're missing a dependency the client will fetch that module as well along with the rest of its dependencies.

Modules not being managed by Maximus are left alone. When you attempt to install a module not currently managed by Maximus it will simply tell you which modules it skipped. Missing dependencies will still be installed.

Maximus is built with cross platform compatibility in mind, meaning it will work on Windows, Linux and Mac OSX. Which are all platforms that are being supported by BlitzMax.

GETTING THE CLIENT

You can either download a precompiled binary from http://maximus.htbaa.com/client or you can try to compile the client yourself.

To compile Maximus yourself you'll need to install the (latest versions) of the following additional modules:

* bah.volumes    (http://maximus.htbaa.com/module/bah/volumes)
* gman.zipengine (http://maximus.htbaa.com/module/gman/zipengine)
* htbaapub.rest  (http://maximus.htbaa.com/module/htbaapub/rest)
* duct.variables (http://maximus.htbaa.com/module/duct/variables)
* duct.objectmap (http://maximus.htbaa.com/module/duct/objectmap)
* duct.json      (http://maximus.htbaa.com/module/duct/json)
* duct.locale    (http://maximus.htbaa.com/module/duct/locale)
* duct.clapp     (http://maximus.htbaa.com/module/duct/clapp)
* duct.time      (http://maximus.htbaa.com/module/duct/time)

Once you have these modules and their dependencies installed you can continue by compiling maximus.bmx as a command line application.

Maximus GUI is being build with Logic GUI 5.4. Unfortunately Logic GUI isn't available for free but can be bought from http://jsp.logiczone.de. Because of this some external files aren't included in the repository. The files I'm talking about reside in gui/ExternalTypes and come with Logic GUI.

GETTING STARTED - CONFIGURATION

Run maximus(.exe) from the command line. If Maximus can't detect your BMXPATH you have to explicitly set this environment variable.

On Windows      $ set BMXPATH=C:\BlitzMax
On Linux        $ export BMXPATH=~/BlitzMax

It's also possible to change the configuration defaults for Maximus by creating a config file. You can do this by creating a maximus.config file. For Maximus GUI on Linux you need to create this file with at least the maxpath setting specified.

On Windows      : C:\Users\<user>\AppData\Roaming\maximus\maximus.config
           -OR- : C:\Documents and Settings\username\Application Data\maximus\maximus.config
On Linux        : ~/.maximus/maximus.config
On Mac OSX      : ~/Library/Application Support/maximus/maximus.config

An example configuration file would look like this:

language en
maxpath C:\BlitzMax
modpath C:\BlitzMax\mod
sourcesurl http://maximus.htbaa.com/module/sources/json
sourcesfile sources
proxyserver 1.2.3.4:8080
autoupdate true

You should only add a setting for which the default isn't optimal for your situation. For example, the proxyserver setting can be set if you require any outgoing connection to use a proxy server. The proxyserver setting will accept anything in the format of [protocol://][user:password@]machine[:port].

GETTING STARTED - COMMANDS

A few examples you could try:

$ maximus help install
$ maximus help list
$ maximus list htbaapub
$ maximus list duct

To install a specific version of a module:

$ maximus install htbaapub.rest/1.06

To install the latest version of a module:

$ maximus install htbaapub.rest

To install the latest development version of a module:

$ maximus install htbaapub.rest/dev

DEVELOPMENT

The development process of the client uses git-flow. You can find more information about it at the following places:

* http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/
* https://github.com/nvie/gitflow

LICENSE

This software is licensed under the MIT license. Please see the LICENSE file.

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/)