These are the TODO items for the Haiku '''Package Management'''. === packagefs === * If necessary, add a caching mechanism to speed up mounting it. === Package Daemon === * Complete support for extracting and updating settings files: Merge support and user feedback are still missing. * Add user notification/interaction support for initial verification (on start-up). * Support packages being copied to the `packages` directory. Currently only moving works. === Package building === * Define packaging guidelines and create a tool to check packages against those. * Status: Here's the [wiki:PackageManagement/PackagingPolicy wiki page] defining the policy. It's still a work in progress. haikuporter has some policy checking built in already. === Package kit/manager === * Add system update support. * Status: Mostly functional in pkgman (`pkgman full-sync`), but unsupported in HaikuDepot. === Boot loader === * Safe mode/recovery options: - Disable packages installed in home. === Package/package repository format === * Add localization support. * Add support for repository keys (public/private) and package signing/check sums, so that it is possible to verify that data retrieved from a repository have not been tampered with. * Add package sizes to repository. Since there are plans to support xz (or other high-ratio formats) compressed uncompressed packages for download that are recompressed for installation, we probably need to discriminate between download and installation sizes. * Add support for a faster compression format (e.g. [https://code.google.com/p/lz4/ lz4]). As it turns out, the currently used zlib compression is rather slow (slower than reading uncompressed data from a slow HD). * Add MIME info for types supported by packaged applications (and sniffer rules?) to the package attributes. === Miscellaneous === * Add MIME directory watching to registrar, so it can update the MIME DB caches when packages are de-/activated. * Get rid of post_install scripts. Do that in the build system. * Get rid of UserBootscript. Start the scripts in "~/config/settings/boot/launch" from Bootscript instead. * Update Installer.