t2server/usr/local/bin/t2remove
2021-01-02 23:30:39 -05:00

64 lines
1.7 KiB
Python
Executable file

#!/usr/bin/env -S python3 -B
from os import system, unlink, geteuid
from sys import argv
from t2support import *
if geteuid() != 0:
bail(f"This script must be run with sudo or as root.\n")
if menu(["[Y]es, remove Tribes 2", "~~[N]o, exit t2remove"],header=f"This script will remove Tribes 2, service files, and utilities. {etc_dir} will be left as it is.") == "N": bail()
system("/usr/bin/systemctl stop t2server.service")
system("/usr/sbin/userdel -fr t2server > /dev/null 2>&1")
system("/usr/sbin/groupdel t2server > /dev/null 2>&1")
systemd_delete_failed=0
try:
unlink(f"{unit_dir}/t2bouncer.service")
except:
pwarn(f"Failed to delete {unit_dir}/t2bouncer.service")
systemd_delete_failed+=1
try:
unlink(f"{unit_dir}/t2bouncer.timer")
except:
pwarn(f"Failed to delete {unit_dir}/t2bouncer.timer")
systemd_delete_failed+=1
try:
unlink(f"{unit_dir}/t2server.service")
except:
pwarn(f"Failed to delete {unit_dir}/t2server.service")
systemd_delete_failed+=1
if systemd_delete_failed > 0:
pinfo("After manually removing the files above, run 'systemctl daemon-reload' to refresh systemd.")
else:
system("/usr/bin/systemctl daemon-reload")
try:
unlink(f"{bin_dir}/t2bouncer")
except:
pwarn(f"Failed to delete {bin_dir}/t2bouncer")
try:
unlink(f"{bin_dir}/t2fixer")
except:
pwarn(f"Failed to delete {bin_dir}/t2fixer")
try:
unlink(f"{bin_dir}/t2server")
except:
pwarn(f"Failed to delete {bin_dir}/t2server")
try:
unlink(f"{bin_dir}/t2support.py")
except:
pwarn(f"Failed to delete {bin_dir}/t2support.py")
try:
if argv[0].startswith(bin_dir): unlink(argv[0])
except:
pwarn(f"Failed to delete {argv[0]}")