pakhandler.py 658 B

12345678910111213141516171819202122232425
  1. # -*- coding: utf-8 -*-
  2. import os
  3. import piksemel
  4. import subprocess
  5. def generate_initramfs(filepath):
  6. patterns = ("lib/initramfs", "boot/kernel", "bin/busybox")
  7. doc = piksemel.parse(filepath)
  8. for item in doc.tags("File"):
  9. path = item.getTagData("Path")
  10. if path.startswith(patterns):
  11. for kernel in os.listdir("/etc/kernel"):
  12. subprocess.call(["/sbin/mkinitramfs", "--type", kernel])
  13. return
  14. def setupPackage(metapath, filepath):
  15. generate_initramfs(filepath)
  16. def cleanupPackage(metapath, filepath):
  17. pass
  18. def postCleanupPackage(metapath, filepath):
  19. generate_initramfs(filepath)