simplified

This commit is contained in:
John Lancaster
2024-06-16 00:05:05 -05:00
parent 1cae18670a
commit 483e3f1d39

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python3 #!/usr/bin/env python
import subprocess import subprocess
from pathlib import Path from pathlib import Path
@@ -21,34 +21,32 @@ def create_symlink(source, target):
print(f'Error creating symlink: [bold red]{e}[/]') print(f'Error creating symlink: [bold red]{e}[/]')
def run_command(command):
try:
subprocess.run(command, check=True, shell=True)
except subprocess.CalledProcessError as e:
print(f'Error running command: {command}\n{e}')
def main(): def main():
repo_dir = Path(__file__).resolve().parent repo_dir = Path(__file__).resolve().parent
systemd_dir = Path('/etc/systemd/system') systemd_dir = Path('/etc/systemd/system')
# Define the source and target paths # Define the source and target paths
socket_file = 'example.socket' name = 'example'
service_file = 'example.service' socket_file = f'{name}.socket'
service_file = f'{name}.service'
# Create symlinks # Create symlinks
create_symlink(repo_dir / socket_file, systemd_dir / socket_file) create_symlink(repo_dir / socket_file, systemd_dir / socket_file)
create_symlink(repo_dir / service_file, systemd_dir / service_file) create_symlink(repo_dir / service_file, systemd_dir / service_file)
# Reload systemd, start and enable the socket # Reload systemd, start and enable the socket
run_command('sudo systemctl daemon-reload') try:
print('Reloaded systemd services') cmd_kwargs = dict(check=True, text=True, capture_output=True)
subprocess.run(['sudo', 'systemctl', 'daemon-reload'], **cmd_kwargs)
print('Reloaded systemd services')
run_command('sudo systemctl start example.socket') subprocess.run(['sudo', 'systemctl', 'start', socket_file], **cmd_kwargs)
print(f'Started [blue]{socket_file}[/]') print(f'Started [blue]{socket_file}[/]')
run_command('sudo systemctl enable example.socket') subprocess.run(['sudo', 'systemctl', 'enable', socket_file], **cmd_kwargs)
print(f'Enabled [blue]{socket_file}[/] to start at boot') print(f'Enabled [blue]{socket_file}[/] to start at boot')
except subprocess.CalledProcessError as e:
print('Error:', e.stderr)
if __name__ == '__main__': if __name__ == '__main__':