pakhandler.py 862 B

1234567891011121314151617181920212223242526272829303132
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3. import piksemel
  4. import os
  5. def updateCaches(filepath):
  6. parse = piksemel.parse(filepath)
  7. GIO_MODULE_PATH = "usr/lib/gio/modules"
  8. GSCHEMAS_MODULE_PATH = "usr/share/glib-2.0/schemas"
  9. for icon in parse.tags("File"):
  10. path = icon.getTagData("Path")
  11. if path.startswith(GIO_MODULE_PATH):
  12. os.system("/usr/bin/gio-querymodules /%s" % GIO_MODULE_PATH)
  13. break
  14. for icon in parse.tags("File"):
  15. path = icon.getTagData("Path")
  16. if path.startswith(GSCHEMAS_MODULE_PATH):
  17. os.system("/usr/bin/glib-compile-schemas /%s" % GSCHEMAS_MODULE_PATH)
  18. return
  19. def setupPackage(metapath, filepath):
  20. updateCaches(filepath)
  21. def cleanupPackage(metapath, filepath):
  22. pass
  23. def postCleanupPackage(metapath, filepath):
  24. updateCaches(filepath)