]> us-delaporte.pagekite.me Git - dotfiles.git/blobdiff - invoke/minetest/tasks.py
Cleanup
[dotfiles.git] / invoke / minetest / tasks.py
index 5b36db840703415d9e4d3f5a8253f0b80e4bd944..ac5633bf24fec8f7de8564fc0f7f83ef4a8c32dd 100644 (file)
@@ -1,11 +1,15 @@
 from invoke import task
 import os
 
-
 home = os.path.expanduser('~')
+flat_pak_root = f"{home}/.var/app/net.minetest.Minetest"
 easy_dir = f"{home}/minetest/"
-link_to = f"{home}/.var/app/net.minetest.Minetest/.minetest/"  # flatpak
-# link_to = f"{home}/.minetest/"  # default 
+run_mt = f"flatpak run net.minetest.Minetest"
+
+# flatpak
+link_to = f"{home}/.var/app/net.minetest.Minetest/.minetest"  
+# default
+# link_to = f"{home}/.minetest/"
 
 @task
 def debug(c):
@@ -38,17 +42,48 @@ def restore(c, dir):
     c.run(f"mv {dir}/* {world_folder}")
     print("Finished")
 
-@task
+# DONT - flatpak hates symlinks
 def link(c):
+    # c.run(f"ls -al {link_to}")
     if os.path.isdir(link_to):
         print("Moving existing files...")
         c.run(f"mv {link_to} {easy_dir}")
+    if not os.path.isdir(easy_dir):
+        raise ValueError(f"{easy_dir} not found.")
+    if os.path.exists(link_to):
+        print(f"Doing nothing. {link_to} exists.")
     if os.path.isdir(easy_dir) and not os.path.exists(link_to):
         print("Linking...")
-        c.run("ln -s {easy_dir} {link_to}")
+        c.run(f"ln -s {easy_dir} {link_to}")
+    # c.run(f"ls -al {link_to}")
 
 @task
 def status(c):
-    print(f"Minetest data is at {link_to}")
-    c.run(f"ls -al {link_to}/..")
+    print(f"+ Minetest data assumed to be at {link_to}")
+    print(f"+ Easy folder assumed to be {easy_dir}")
+    print(f"+ ls ---")
+    c.run(f"ls -ald {link_to} | grep minetest")
+
+
+@task
+def games(c):
+    print(f"+ List Games ---")
+    cmd = f"{run_mt} --gameid list"
+    c.run(cmd)
 
+@task
+def worlds(c):
+    print(f"+ List Worlds ---")
+    cmd = f"{run_mt} --gameid minetest --worldlist path"
+    c.run(cmd)
+
+
+@task
+def version(c):
+    cmd = f"{run_mt} --version"
+    c.run(cmd)
+
+@task
+def serve(c, world="SurfaceWorld"):
+    cmd = f"{run_mt} --gameid minetest --server --world {world}"
+    c.run(cmd)