Version 12 (modified by bonefish, 8 years ago) (diff)


Package Management TODO

  • packagefs:
    • Prepare for use in a chroot environment. Currently it resolves the package directory path in the kernel I/O context. This is only a problem for packagefs mounted after chroot.
    • Support packages being copied to the packages directory. Currently only moving works.
    • Provide information about active packages to the tools that need it (e.g. the package solver).
    • If necessary, add a caching mechanism to speed up mounting it.
  • Build system:
    • Before creating packages (e.g. the user guide), all files must be identified, since packagefs is read-only.
  • Package building:
    • Work on tools to build Haiku packages in a clean chroot environment.
    • Define packaging guidelines and create a tool to check packages those.
    • Adjust build "recipes" for HaikuPorts packages as needed and build the packages.
  • Package kit/manager:
    • Implement the package solver (as Oliver proposed based on libsatsolver).
    • Extend the package kit and the (CLI) package manager to support adding, removing, and updating packages. That probably also involves work on a server-side (i.e. repository) part.
    • Implement a GUI package manager.
  • Miscellaneous:
    • Modify Expander to use a directory instead of the expander.rules file. This way a package (like xz-utils or p7zip) can contribute a single file with the rules for its tools.
    • Modify Deskbar to no longer use the "be:deskbar_item_status" attribute to tag the installed replicants. This doesn't work, since packagefs is read-only. And it is a no-go for multi-user anyway.