Everything is kept in git and mods are submodules, this means that you can keep track of the mods and their versions, easy to roll back to a certain point of time.
Currently working features:
- activate/deactivate mods
- when activating a mod, dependencies are pulled and activated too, optional dependencies can be installed too.
- disable installing dependencies
- list enabled/disabled mods
- a pseudo ini file (contains sets, modpacks and mods information)
- define sets of mods
- minetest version compatibility check
Planned features:
- inter mods compatibility check
- enable/disable all mods in a set
- ....
Possible user case:
- keeping history of mods and their version in the git
- keeping mods up to date with just one command
- rolling back
- exchanging sets as games
- creating new games
- ....
Constructive comments are welcomed.
Sample output:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
$ ./manage_mods.sh -l enable
Enabled mods:
$ ./manage_mods.sh -e mg
enabling stairs ...done
enabling wool ...done
enabling farming ...done
enabling default ...done
enabling mg ...done
$ ./manage_mods.sh -l enable
Enabled mods:
default
farming
mg
stairs
wool
$ ./manage_mods.sh -l all
Available mods:
d: along_shore
d: areas
d: boats
d: bones
d: bucket
d: bushes
d: bushes_classic
d: cavestuff
d: creative
e: default
d: doors
d: dryplants
d: dye
e: farming
d: ferns
d: fire
d: flowers
d: flowers_plus
d: give_initial_stuff
d: intllib
d: inventory_plus
d: junglegrass
e: mg
d: modmenu
d: molehills
d: moreblocks
d: moretrees
d: mushroom
d: nature_classic
d: plants_lib
d: poisonivy
d: screwdriver
d: sethome
e: stairs
d: tnt
d: trunks
d: vessels
d: vines
d: woodsoils
e: wool
d: xpanes
d: youngtrees
d: zcg
Sample ini
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
;comment 1
#comment 2
title = my title
abc = 123
name = My Own Game
[mod]
name=boat
license=
desc=a boat
homepage = http://boat.com/
gitsrc =
category =
minver =
maxver =
incompatible = aaa
bbb
ccc
belongs = @minetest_game
[mod]
name=farming
desc=faming mod
licenese =
homepage= http://gfarming.com/
gitsrc=git://
category =
minver =
maxver =
incompatible = AAA
BBB
CCC
belong = @minetest_game
[set]
name = mygame
mods = boat farming
[modpack]
name = animal_modpack
desc = mob
licenese =
homepage =
gitsrc =
category =
minver =
maxver =
incompatible =
contains =