]>
apps.delaporte.us Git - dotfiles.git/blob - invoke/minetest/tasks.py
47bcdb8f5669275b58e5e3057a0f58c2447c4cd2
1 from invoke
import task
4 home
= os
.path
.expanduser('~')
5 flat_pak_root
= f
"{home}/.var/app/net.minetest.Minetest"
6 easy_dir
= f
"{home}/minetest/"
7 run_mt
= f
"flatpak run net.minetest.Minetest"
10 link_to
= f
"{home}/.var/app/net.minetest.Minetest/.minetest"
12 # link_to = f"{home}/.minetest/"
16 result
= c
.run('which minetest')
21 print("Installing...")
22 # result = c.run('which minetest')
24 c
.run("sudo apt install flatpak")
25 c
.run("sudo apt install gnome-software-plugin-flatpak")
26 c
.run("flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo")
27 c
.run("flatpak install flathub net.minetest.Minetest -y")
28 result
= c
.run('which minetest')
29 print(f
"MineTest installed at {result.stdout}")
30 print("To run: flatpak run net.minetest.Minetest")
34 if not os
.path
.isdir(dir):
35 print(f
"No backups found at {dir}")
37 print(f
"Will restore MineTest backup from {dir}")
39 world_folder
= f
"{home}/minetest/worlds"
40 c
.run(f
"mkdir -p {world_folder}")
41 print("Restoring backed up worlds...")
42 c
.run(f
"mv {dir}/* {world_folder}")
45 # DONT - flatpak hates symlinks
47 # c.run(f"ls -al {link_to}")
48 if os
.path
.isdir(link_to
):
49 print("Moving existing files...")
50 c
.run(f
"mv {link_to} {easy_dir}")
51 if not os
.path
.isdir(easy_dir
):
52 raise ValueError(f
"{easy_dir} not found.")
53 if os
.path
.exists(link_to
):
54 print(f
"Doing nothing. {link_to} exists.")
55 if os
.path
.isdir(easy_dir
) and not os
.path
.exists(link_to
):
57 c
.run(f
"ln -s {easy_dir} {link_to}")
58 # c.run(f"ls -al {link_to}")
62 print(f
"+ Minetest data assumed to be at {link_to}")
63 print(f
"+ Easy folder assumed to be {easy_dir}")
65 c
.run(f
"ls -ald {link_to} | grep minetest")
70 print(f
"+ List Games ---")
71 cmd
= f
"{run_mt} --gameid list"
80 print(f
"+ List Worlds ---")
81 cmd
= f
"{run_mt} --gameid minetest --worldlist path"
87 cmd
= f
"{run_mt} --version"
91 def serve(c
, world
="SurfaceWorld"):
92 cmd
= f
"{run_mt} --gameid minetest --server --worldname {world}"