[haiku-commits] BRANCH HaikuPM-github.package-management [c4ce29a] src/system/kernel/fs src/bin/pkgman build/jam/images

  • From: HaikuPM-github.package-management <community@xxxxxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 25 Aug 2013 18:45:30 +0200 (CEST)

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;


Other related posts:

  • » [haiku-commits] BRANCH HaikuPM-github.package-management [c4ce29a] src/system/kernel/fs src/bin/pkgman build/jam/images - HaikuPM-github . package-management