#!/usr/bin/python3

import sys
import os

# ============ 优先添加 /opt 路径 ============
use_opt = False
for var in ['GI_TYPELIB_PATH', 'PYTHONPATH', 'LD_LIBRARY_PATH']:
    if '/opt/update-module' in os.environ.get(var, ''):
        use_opt = True
        break

if use_opt or '/opt/update-module' in os.getcwd():
    # 添加 /opt 路径
    opt_base = '/opt/update-module/current/usr/lib/python3/dist-packages'
    for root, dirs, _ in os.walk(opt_base):
        for dir_name in dirs:
            if dir_name.startswith("kare"):
                sys.path.insert(0, os.path.join(root, dir_name))

# ============ 再添加系统路径（保持原样） ============
for root, dirs, _ in os.walk("/usr/lib/python3/dist-packages"):
    for dir_name in dirs:
        if dir_name.startswith("kare"):
            sys.path.append(os.path.join(root, dir_name))

# ============ 启动服务 ============
from dbus.mainloop.glib import DBusGMainLoop
from bus.karedbus import KareDbus
from gi.repository import GLib

DBusGMainLoop(set_as_default=True)

if __name__ == "__main__":
    service = KareDbus()
    loop = GLib.MainLoop()
    loop.run()