]> apps.delaporte.us Git - dotfiles.git/blobdiff - invoke/minetest/tasks.py
Add invoke for NVim setup
[dotfiles.git] / invoke / minetest / tasks.py
index 688e168631ad244c0f971b0727e36bfaae1be234..5b36db840703415d9e4d3f5a8253f0b80e4bd944 100644 (file)
@@ -1,6 +1,12 @@
 from invoke import task
 import os
 
+
+home = os.path.expanduser('~')
+easy_dir = f"{home}/minetest/"
+link_to = f"{home}/.var/app/net.minetest.Minetest/.minetest/"  # flatpak
+# link_to = f"{home}/.minetest/"  # default 
+
 @task
 def debug(c):
     result = c.run('which minetest')
@@ -8,11 +14,16 @@ def debug(c):
 
 @task
 def install(c):
+    print("Installing...")
+    # result = c.run('which minetest')
+    # if not(result.ok):
+    c.run("sudo apt install flatpak")
+    c.run("sudo apt install gnome-software-plugin-flatpak")
+    c.run("flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo")
+    c.run("flatpak install flathub net.minetest.Minetest -y")
     result = c.run('which minetest')
-    if not(result.ok):
-        c.run("apt install minetest")
-    else:
-        print(f"MineTest installed at {result.stdout}")
+    print(f"MineTest installed at {result.stdout}")
+    print("To run: flatpak run net.minetest.Minetest")
 
 @task
 def restore(c, dir):
@@ -20,14 +31,24 @@ def restore(c, dir):
         print(f"No backups found at {dir}")
         return
     print(f"Will restore MineTest backup from {dir}")
-    home = os.path.expanduser('~')
-    if os.path.isdir(f"{home}/.minetest") and not os.path.isdir("{home}/minetest"):
-        print(f"Moving .minetest to minetest and linking.")
-        c.run("mv ~/.minetest ~/minetest")
-        c.run("ln -s ~/minetest ~/.minetest")
+
     world_folder = f"{home}/minetest/worlds"
     c.run(f"mkdir -p {world_folder}")
+    print("Restoring backed up worlds...")
     c.run(f"mv {dir}/* {world_folder}")
     print("Finished")
 
+@task
+def link(c):
+    if os.path.isdir(link_to):
+        print("Moving existing files...")
+        c.run(f"mv {link_to} {easy_dir}")
+    if os.path.isdir(easy_dir) and not os.path.exists(link_to):
+        print("Linking...")
+        c.run("ln -s {easy_dir} {link_to}")
+
+@task
+def status(c):
+    print(f"Minetest data is at {link_to}")
+    c.run(f"ls -al {link_to}/..")