added 3 changesets to branch 'refs/remotes/HaikuPM-github/package-management' old head: 0214aefd58d6ccca6fb2a7f6c6c7b57f858f422f new head: c4ce29a67e9a5ae0470260a941d54ad002a29802 overview: https://github.com/haiku/HaikuPM/compare/0214aef...c4ce29a ---------------------------------------------------------------------------- e64db4d: Also mount the packagefs at ~/config f118c41: pkgman [un]install: fix option '-H' c4ce29a: pkgman search: enable search in ~/config [ Ingo Weinhold <ingo_weinhold@xxxxxx> ] ---------------------------------------------------------------------------- 6 files changed, 20 insertions(+), 15 deletions(-) build/jam/images/HaikuImage | 2 +- build/jam/images/HaikuImageBootstrap | 2 +- src/bin/pkgman/command_install.cpp | 2 +- src/bin/pkgman/command_search.cpp | 3 +-- src/bin/pkgman/command_uninstall.cpp | 2 +- src/system/kernel/fs/vfs_boot.cpp | 24 +++++++++++++++--------- ############################################################################ Commit: e64db4da44a5c23edf1e8c91c46e6d37072b3de1 Author: Ingo Weinhold <ingo_weinhold@xxxxxx> Date: Sun Aug 25 16:23:11 2013 UTC Also mount the packagefs at ~/config ---------------------------------------------------------------------------- diff --git a/build/jam/images/HaikuImage b/build/jam/images/HaikuImage index a84adaa..25ccfdd 100644 --- a/build/jam/images/HaikuImage +++ b/build/jam/images/HaikuImage @@ -304,7 +304,7 @@ AddDirectoryToHaikuImage common var empty ; AddDirectoryToHaikuImage common var log ; AddDirectoryToHaikuImage home Desktop ; AddDirectoryToHaikuImage home mail ; - +AddDirectoryToHaikuImage home config packages ; AddDirectoryToHaikuImage home config non-packaged bin ; AddDirectoryToHaikuImage home config non-packaged lib ; AddDirectoryToHaikuImage home config non-packaged add-ons kernel drivers bin ; diff --git a/build/jam/images/HaikuImageBootstrap b/build/jam/images/HaikuImageBootstrap index b3c416b..1cf9810 100644 --- a/build/jam/images/HaikuImageBootstrap +++ b/build/jam/images/HaikuImageBootstrap @@ -245,7 +245,7 @@ AddDirectoryToHaikuImage common var empty ; AddDirectoryToHaikuImage common var log ; AddDirectoryToHaikuImage home Desktop ; AddDirectoryToHaikuImage home mail ; - +AddDirectoryToHaikuImage home config packages ; AddDirectoryToHaikuImage home config non-packaged bin ; AddDirectoryToHaikuImage home config non-packaged lib ; AddDirectoryToHaikuImage home config non-packaged add-ons kernel drivers bin ; diff --git a/src/system/kernel/fs/vfs_boot.cpp b/src/system/kernel/fs/vfs_boot.cpp index ae7ad3d..bdd6da6 100644 --- a/src/system/kernel/fs/vfs_boot.cpp +++ b/src/system/kernel/fs/vfs_boot.cpp @@ -518,22 +518,28 @@ vfs_mount_boot_file_system(kernel_args* args) if (bootVolume.GetBool(BOOT_VOLUME_PACKAGED, false)) { static const char* const kPackageFSName = "packagefs"; - dev_t systemPackageMount = _kern_mount("/boot/system", - NULL, kPackageFSName, 0, - "packages /boot/system/packages; type system", + dev_t packageMount = _kern_mount("/boot/system", NULL, kPackageFSName, + 0, "packages /boot/system/packages; type system", 0 /* unused argument length */); - if (systemPackageMount < 0) { + if (packageMount < 0) { panic("Failed to mount system packagefs: %s", - strerror(systemPackageMount)); + strerror(packageMount)); } - dev_t commonPackageMount = _kern_mount("/boot/common", - NULL, kPackageFSName, 0, + packageMount = _kern_mount("/boot/common", NULL, kPackageFSName, 0, "packages /boot/common/packages; type common", 0 /* unused argument length */); - if (commonPackageMount < 0) { + if (packageMount < 0) { dprintf("Failed to mount common packagefs: %s\n", - strerror(commonPackageMount)); + strerror(packageMount)); + } + + packageMount = _kern_mount("/boot/home/config", NULL, kPackageFSName, 0, + "packages /boot/home/config/packages; type home", + 0 /* unused argument length */); + if (packageMount < 0) { + dprintf("Failed to mount home packagefs: %s\n", + strerror(packageMount)); } } ############################################################################ Commit: f118c41467a62881ec1ae0ba61fecbbc43cf4048 Author: Ingo Weinhold <ingo_weinhold@xxxxxx> Date: Sun Aug 25 16:41:29 2013 UTC pkgman [un]install: fix option '-H' ---------------------------------------------------------------------------- diff --git a/src/bin/pkgman/command_install.cpp b/src/bin/pkgman/command_install.cpp index b0e3134..09d8748 100644 --- a/src/bin/pkgman/command_install.cpp +++ b/src/bin/pkgman/command_install.cpp @@ -55,7 +55,7 @@ InstallCommand::Execute(int argc, const char* const* argv) }; opterr = 0; // don't print errors - int c = getopt_long(argc, (char**)argv, "hu", sLongOptions, NULL); + int c = getopt_long(argc, (char**)argv, "hH", sLongOptions, NULL); if (c == -1) break; diff --git a/src/bin/pkgman/command_uninstall.cpp b/src/bin/pkgman/command_uninstall.cpp index 0aa4305..31d486f 100644 --- a/src/bin/pkgman/command_uninstall.cpp +++ b/src/bin/pkgman/command_uninstall.cpp @@ -55,7 +55,7 @@ UninstallCommand::Execute(int argc, const char* const* argv) }; opterr = 0; // don't print errors - int c = getopt_long(argc, (char**)argv, "hu", sLongOptions, NULL); + int c = getopt_long(argc, (char**)argv, "hH", sLongOptions, NULL); if (c == -1) break; ############################################################################ Commit: c4ce29a67e9a5ae0470260a941d54ad002a29802 Author: Ingo Weinhold <ingo_weinhold@xxxxxx> Date: Sun Aug 25 16:41:56 2013 UTC pkgman search: enable search in ~/config ---------------------------------------------------------------------------- diff --git a/src/bin/pkgman/command_search.cpp b/src/bin/pkgman/command_search.cpp index 5be2a10..73d5947 100644 --- a/src/bin/pkgman/command_search.cpp +++ b/src/bin/pkgman/command_search.cpp @@ -119,9 +119,8 @@ SearchCommand::Execute(int argc, const char* const* argv) const char* searchString = listAll ? "" : argv[optind++]; // create the solver - PackageManager packageManager(B_PACKAGE_INSTALLATION_LOCATION_COMMON, + PackageManager packageManager(B_PACKAGE_INSTALLATION_LOCATION_HOME, !uninstalledOnly, !installedOnly); -// TODO: Use B_PACKAGE_INSTALLATION_LOCATION_HOME once we actually mount it. // search BObjectList<BSolverPackage> packages;