load_yozo.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import shutil
  2. import subprocess
  3. import os
  4. import sys
  5. def run_by_root():
  6. if os.geteuid() == 0:
  7. return True
  8. try:
  9. subprocess.check_call(['sudo', 'python', sys.argv[0] + sys.argv[1:]])
  10. return False
  11. except subprocess.CalledProcessError:
  12. print('failed')
  13. return False
  14. def search_yozosoft():
  15. if not run_by_root():
  16. print('Failed to elevate permissions, retrieving with low privileges')
  17. yozow = shutil.which('yozow')
  18. if yozow:
  19. base_path = os.path.dirname(yozow)
  20. yozoi = os.path.join(base_path, 'yozoi')
  21. yozoc = os.path.join(base_path, 'yozoc')
  22. return yozoc, yozoi, yozow
  23. res = subprocess.run(['sudo', 'find', '/', '-name', 'yozow'], capture_output=True, text=True)
  24. if res.stdout:
  25. yozow = res.stdout.strip()
  26. base_path = os.path.dirname(yozow)
  27. yozoi = os.path.join(base_path, 'yozoi')
  28. yozoc = os.path.join(base_path, 'yozoc')
  29. return yozoc, yozoi, yozow # excel,ppt,word
  30. else:
  31. return None, None, None
  32. # yozoc, yozoi, yozow = search_yozosoft()
  33. # subprocess.run(['/opt/apps/com.yozosoft.yozo-office/files/bin/yozow', '/home/jxkj/桌面/test.pptx'])