system-status/install

35 lines
971 B
Plaintext
Raw Permalink Normal View History

2021-06-16 16:59:16 -04:00
#! /usr/bin/env python3
import os
import sys
from string import Template
from subprocess import check_call
EXEC = 'system-status.py'
SERVICE = 'system-status.service'
SYSTEM_DIR = '/etc/systemd/system'
CURRENT_DIR = os.path.dirname(os.path.realpath(__file__))
EXEC_PATH = os.path.join(CURRENT_DIR, EXEC)
SERVICE_TEMPLATE = os.path.join(CURRENT_DIR, SERVICE)
SERVICE_FILE = os.path.join(SYSTEM_DIR, SERVICE)
PYTHON = sys.executable
EXEC_START = f'{PYTHON} {EXEC}'
with open(SERVICE_TEMPLATE) as f:
serviceTemplate = Template(f.read())
serviceFile = serviceTemplate.substitute(
workingDirectory=CURRENT_DIR,
execStart=EXEC_START
)
with open(SERVICE_FILE, 'w') as f:
f.write(serviceFile)
check_call(['systemctl', 'daemon-reload'])
check_call(['systemctl', 'enable', '--no-pager', SERVICE])
check_call(['systemctl', 'restart', '--no-pager', SERVICE])
check_call(['systemctl', 'status', '--no-pager', SERVICE])