]> apps.delaporte.us Git - dotfiles.git/blob - invoke/minetest/tasks.py
Fix
[dotfiles.git] / invoke / minetest / tasks.py
1 from invoke import task
2 import os
3
4 home = os.path.expanduser('~')
5 flat_pak_root = f"{home}/.var/app/net.minetest.Minetest"
6 easy_dir = f"{home}/minetest/"
7
8 # flatpak
9 link_to = f"{home}/.var/app/net.minetest.Minetest/.minetest"
10 # default
11 # link_to = f"{home}/.minetest/"
12
13 @task
14 def debug(c):
15 result = c.run('which minetest')
16 print(result.ok)
17
18 @task
19 def install(c):
20 print("Installing...")
21 # result = c.run('which minetest')
22 # if not(result.ok):
23 c.run("sudo apt install flatpak")
24 c.run("sudo apt install gnome-software-plugin-flatpak")
25 c.run("flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo")
26 c.run("flatpak install flathub net.minetest.Minetest -y")
27 result = c.run('which minetest')
28 print(f"MineTest installed at {result.stdout}")
29 print("To run: flatpak run net.minetest.Minetest")
30
31 @task
32 def restore(c, dir):
33 if not os.path.isdir(dir):
34 print(f"No backups found at {dir}")
35 return
36 print(f"Will restore MineTest backup from {dir}")
37
38 world_folder = f"{home}/minetest/worlds"
39 c.run(f"mkdir -p {world_folder}")
40 print("Restoring backed up worlds...")
41 c.run(f"mv {dir}/* {world_folder}")
42 print("Finished")
43
44 # DONT - flatpak hates symlinks
45 def link(c):
46 # c.run(f"ls -al {link_to}")
47 if os.path.isdir(link_to):
48 print("Moving existing files...")
49 c.run(f"mv {link_to} {easy_dir}")
50 if not os.path.isdir(easy_dir):
51 raise ValueError(f"{easy_dir} not found.")
52 if os.path.exists(link_to):
53 print(f"Doing nothing. {link_to} exists.")
54 if os.path.isdir(easy_dir) and not os.path.exists(link_to):
55 print("Linking...")
56 c.run(f"ln -s {easy_dir} {link_to}")
57 # c.run(f"ls -al {link_to}")
58
59 @task
60 def status(c):
61 print(f"+ Minetest data assumed to be at {link_to}")
62 print(f"+ Easy folder assumed to be {easy_dir}")
63 print(f"+ ls ---")
64 c.run(f"ls -ald {link_to} | grep minetest")
65