X-Git-Url: https://apps.delaporte.us/gitweb/dotfiles.git/blobdiff_plain/abf16ad92ddbad3d38d4c3e82f50e325f9967523..48914a2a43703270ea95dd7539d0ed4e863617f5:/invoke/minetest/tasks.py diff --git a/invoke/minetest/tasks.py b/invoke/minetest/tasks.py index ac5633b..a926cda 100644 --- a/invoke/minetest/tasks.py +++ b/invoke/minetest/tasks.py @@ -1,8 +1,12 @@ from invoke import task + +import datetime import os home = os.path.expanduser('~') flat_pak_root = f"{home}/.var/app/net.minetest.Minetest" +root = f"{flat_pak_root}/.minetest" +mod_dir = f"{root}/mods" easy_dir = f"{home}/minetest/" run_mt = f"flatpak run net.minetest.Minetest" @@ -71,6 +75,10 @@ def games(c): cmd = f"{run_mt} --gameid list" c.run(cmd) +@task +def play(c): + c.run(f"{run_mt}") + @task def worlds(c): print(f"+ List Worlds ---") @@ -85,5 +93,24 @@ def version(c): @task def serve(c, world="SurfaceWorld"): - cmd = f"{run_mt} --gameid minetest --server --world {world}" + cmd = f"{run_mt} --gameid minetest --server --worldname {world}" c.run(cmd) + +@task +def bkmod(c, name=None): + '''Save the current set of mods and create an empty mod directory.''' + if not name: + name = datetime.datetime.now().strftime("%Y%h%d%H%M") + c.run(f"mv {mod_dir} {root}/mods_{name}") + c.run(f"mkdir -p {mod_dir}") + c.run(f"ls {root}") + +@task +def rmod(c, name): + '''Restore a backed up set of mods.''' + bk = datetime.datetime.now().strftime("%Y%h%d%H%M") + c.run(f"mv {mod_dir} {root}/mods_{bk}") + c.run(f"mv {root}/mods_{name} {mod_dir}") + c.run(f"ls {root}") + +