| 107 | """Handles launching the puppet process.""" |
| 108 | |
| 109 | def __init__(self): |
| 110 | self.process = None |
| 111 | self.httpd = None |
| 112 | self.lockfile = None |
| 113 | self.webview_path = None |
| 114 | self.models_dir = None |
| 115 | self.log_file = None |
| 116 | |
| 117 | # Set paths |
| 118 | project_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) |
| 119 | self.webview_path = os.path.join(project_root, "avatars", "live2d", "web") |
| 120 | self.models_dir = os.path.join(self.webview_path, "models") |
| 121 | self.main_py = os.path.join(project_root, "src", "main.py") |
| 122 | self.cli_sh = os.path.join(project_root, "src", "cli.sh") |
| 123 | self.lockfile = os.path.join(project_root, "src", "nyarchlinux-desktop-puppet.lock") |
| 124 | |
| 125 | def get_available_models(self): |
| 126 | """Get list of available models from the models directory.""" |