X-Git-Url: https://us-delaporte.pagekite.me/gitweb/dotfiles.git/blobdiff_plain/1528584d79d3a35c38ada9f16eb1d53cb858bf0a..deb316006d33f67476aba59159b2977477fbf8a0:/invoke/minetest/tasks.py diff --git a/invoke/minetest/tasks.py b/invoke/minetest/tasks.py index 10abbb4..e412a67 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" @@ -64,11 +68,20 @@ def status(c): print(f"+ ls ---") c.run(f"ls -ald {link_to} | grep minetest") + @task -def world_list(c): - print(f"+ List Worlds ---") +def games(c): + print(f"+ List Games ---") 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 ---") cmd = f"{run_mt} --gameid minetest --worldlist path" c.run(cmd) @@ -80,5 +93,29 @@ 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.''' + if len(os.listdir(f"{mod_dir}")) != 0: + bk = datetime.datetime.now().strftime("%Y%h%d%H%M") + print(f"Backed up non-emtpy mod dir to mods_{bk}.") + c.run(f"mv {mod_dir} {root}/mods_{bk}") + else: + print("Removing empty mod dir.") + c.run(f"rmdir {mod_dir}") + c.run(f"mv {root}/mods_{name} {mod_dir}") + c.run(f"ls {root}") + +