[haiku-commits] r40893 - in haiku/branches/features/package-management: build/jam data/system/boot headers/os/storage src/bin src/kits/locale ...

  • From: zooey@xxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 9 Mar 2011 23:29:47 +0100 (CET)

Author: zooey
Date: 2011-03-09 23:29:46 +0100 (Wed, 09 Mar 2011)
New Revision: 40893
Changeset: http://dev.haiku-os.org/changeset/40893

Modified:
   haiku/branches/features/package-management/build/jam/HaikuImage
   haiku/branches/features/package-management/data/system/boot/SetupEnvironment
   haiku/branches/features/package-management/headers/os/storage/FindDirectory.h
   haiku/branches/features/package-management/src/bin/finddir.c
   
haiku/branches/features/package-management/src/kits/locale/MutableLocaleRoster.cpp
   
haiku/branches/features/package-management/src/kits/opengl/GLRendererRoster.cpp
   haiku/branches/features/package-management/src/kits/print/PrintTransport.cpp
   haiku/branches/features/package-management/src/kits/print/Printer.cpp
   
haiku/branches/features/package-management/src/kits/print/PrinterDriverAddOn.cpp
   
haiku/branches/features/package-management/src/kits/screensaver/ScreenSaverRunner.cpp
   
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskDeviceRoster.cpp
   
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp
   
haiku/branches/features/package-management/src/kits/tracker/ContainerWindow.cpp
   haiku/branches/features/package-management/src/kits/tracker/DeskWindow.cpp
   
haiku/branches/features/package-management/src/kits/translation/TranslatorRoster.cpp
   
haiku/branches/features/package-management/src/libs/print/libprint/Transport.cpp
   
haiku/branches/features/package-management/src/preferences/printers/AddPrinterDialog.cpp
   
haiku/branches/features/package-management/src/preferences/screensaver/ScreenSaverWindow.cpp
   
haiku/branches/features/package-management/src/servers/app/drawing/AccelerantHWInterface.cpp
   
haiku/branches/features/package-management/src/servers/app/drawing/DWindowHWInterface.cpp
   haiku/branches/features/package-management/src/servers/index/IndexServer.cpp
   haiku/branches/features/package-management/src/servers/input/AddOnManager.cpp
   haiku/branches/features/package-management/src/servers/media/AddOnManager.cpp
   
haiku/branches/features/package-management/src/servers/media_addon/MediaAddonServer.cpp
   
haiku/branches/features/package-management/src/servers/print/PrintServerApp.cpp
   haiku/branches/features/package-management/src/system/boot/loader/loader.cpp
   
haiku/branches/features/package-management/src/system/libroot/os/find_directory.cpp
   
haiku/branches/features/package-management/src/tests/add-ons/print/transports/main.cpp
   
haiku/branches/features/package-management/src/tests/servers/app/newerClipping/drawing/AccelerantHWInterface.cpp
Log:
More adjustments to find_directory():
* added two partial subtrees at /boot/common/non-packaged and 
  /boot/home/config/non-packaged, both of which will be writable
  (and empty) folders meant to be populated by manually built software
* adjusted most add-on-folder iteration code accordingly
* unified interpretation of safe-mode flag to only resort to system-
  add-ons, as it was before, sometimes common stuff was loaded, 
  sometimes not
* added TODO about haiku_loader panic when more than just the
  /system and /home/config are being searched for kernel add-ons


Modified: haiku/branches/features/package-management/build/jam/HaikuImage
===================================================================
--- haiku/branches/features/package-management/build/jam/HaikuImage     
2011-03-09 22:22:36 UTC (rev 40892)
+++ haiku/branches/features/package-management/build/jam/HaikuImage     
2011-03-09 22:29:46 UTC (rev 40893)
@@ -335,6 +335,7 @@
 AddFilesToHaikuImage system bin
        : install-wifi-firmwares.sh ;
 
+# TODO: remove!
 # Add the files to be used by installoptionalpackage.
 AddDirectoryToHaikuImage common data optional-packages ;
 local optional-pkg-files = OptionalBuildFeatures OptionalPackageDependencies
@@ -357,7 +358,7 @@
 AddDirectoryToHaikuImage home mail out ;
 
 # Deskbar Application links
-AddDirectoryToHaikuImage home config be Applications ;
+AddDirectoryToHaikuImage home config settings deskbar-menu Applications ;
 DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap CodyCam CDPlayer DeskCalc
        Devices DiskProbe DriveSetup DiskUsage Expander Icon-O-Matic Installer
        Magnify Mail MediaConverter MediaPlayer MidiPlayer People PoorMan
@@ -365,33 +366,33 @@
 ;
 local linkTarget ;
 for linkTarget in $(DESKBAR_APPLICATIONS) {
-       AddSymlinkToHaikuImage home config be Applications
+       AddSymlinkToHaikuImage home config settings deskbar-menu Applications
                : /boot/system/apps/$(linkTarget) : $(linkTarget) ;
 }
 
 # Deskbar Desktop applets links
-AddDirectoryToHaikuImage home config be Desktop\ applets ;
+AddDirectoryToHaikuImage home config settings deskbar-menu Desktop\ applets ;
 DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
        Workspaces
 ;
 for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
-       AddSymlinkToHaikuImage home config be Desktop\ applets
+       AddSymlinkToHaikuImage home config settings deskbar-menu Desktop\ 
applets
                : /boot/system/apps/$(linkTarget) : $(linkTarget) ;
 }
 
 # Deskbar Preferences links
-AddDirectoryToHaikuImage home config be Preferences ;
+AddDirectoryToHaikuImage home config settings deskbar-menu Preferences ;
 DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
 for linkTarget in $(DESKBAR_PREFERENCES) {
-       AddSymlinkToHaikuImage home config be Preferences
+       AddSymlinkToHaikuImage home config settings deskbar-menu Preferences
                : /boot/system/preferences/$(linkTarget)
                : $(linkTarget) ;
 }
 
 # Deskbar Demo links
-AddDirectoryToHaikuImage home config be Demos ;
+AddDirectoryToHaikuImage home config settings deskbar-menu Demos ;
 for linkTarget in $(SYSTEM_DEMOS) {
-       AddSymlinkToHaikuImage home config be Demos
+       AddSymlinkToHaikuImage home config settings deskbar-menu Demos
                : /boot/system/demos/$(linkTarget) : $(linkTarget) ;
 }
 
@@ -597,28 +598,24 @@
 
 # create directories that will remain empty
 AddDirectoryToHaikuImage common bin ;
-AddDirectoryToHaikuImage common include ;
+AddDirectoryToHaikuImage common cache tmp ;
+AddDirectoryToHaikuImage common develop headers ;
 AddDirectoryToHaikuImage common lib ;
+AddDirectoryToHaikuImage common non-packaged ;
+AddDirectoryToHaikuImage common var empty ;
+AddDirectoryToHaikuImage common var log ;
 AddDirectoryToHaikuImage home Desktop ;
 AddDirectoryToHaikuImage home config bin ;
 AddDirectoryToHaikuImage home config lib ;
+AddDirectoryToHaikuImage home config non-packaged ;
 AddDirectoryToHaikuImage home mail ;
-AddDirectoryToHaikuImage common var empty ;
-AddDirectoryToHaikuImage common var log ;
-AddDirectoryToHaikuImage common cache tmp ;
 
-AddDirectoryToHaikuImage
-       home config add-ons kernel drivers bin ;
-AddDirectoryToHaikuImage
-       home config add-ons kernel drivers dev ;
-AddDirectoryToHaikuImage
-       home config add-ons input_server devices ;
-AddDirectoryToHaikuImage
-       home config add-ons input_server filters ;
-AddDirectoryToHaikuImage
-       home config add-ons input_server methods ;
-AddDirectoryToHaikuImage
-       home config add-ons media plugins ;
+AddDirectoryToHaikuImage home config add-ons kernel drivers bin ;
+AddDirectoryToHaikuImage home config add-ons kernel drivers dev ;
+AddDirectoryToHaikuImage home config add-ons input_server devices ;
+AddDirectoryToHaikuImage home config add-ons input_server filters ;
+AddDirectoryToHaikuImage home config add-ons input_server methods ;
+AddDirectoryToHaikuImage home config add-ons media plugins ;
 AddDirectoryToHaikuImage home config add-ons Tracker ;
 AddDirectoryToHaikuImage home config add-ons Print ;
 AddDirectoryToHaikuImage home config add-ons Screen\ Savers ;

Modified: 
haiku/branches/features/package-management/data/system/boot/SetupEnvironment
===================================================================
--- 
haiku/branches/features/package-management/data/system/boot/SetupEnvironment    
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/data/system/boot/SetupEnvironment    
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -21,9 +21,9 @@
        BE_HOST_CPU=unknown
 esac
 
-BELIBRARIES="/boot/common/lib:$BUILDHOME/lib"
+BELIBRARIES="/boot/common/non-packaged/lib:/boot/common/lib:$BUILDHOME/lib"
 
-# TODO: do we need these at all?
+# not used by Haiku, but probably by legacy applications (BeIDE?)
 BH=$BUILDHOME/headers
 
BEINCLUDES="$BH;$BH/be;$BH/posix;$BH/glibc;$BH/cpp;$BH/be/app;$BH/be/device;$BH/be/interface;$BH/be/locale;$BH/be/media;$BH/be/midi;$BH/be/midi2;$BH/be/net;$BH/be/kernel;$BH/be/storage;$BH/be/support;$BH/be/game;$BH/be/opengl;$BH/be/drivers;$BH/gnu;$BH/be/mail;$BH/be/translation;$BH/be/devel;$BH/be/add-ons/graphics;$BH/be/be_apps/Deskbar;$BH/be/be_apps/NetPositive;$BH/be/be_apps/Tracker"
 
@@ -43,13 +43,13 @@
 
 if [ "$SAFEMODE" != "yes" ]
 then
-       export 
PATH=.:$HOME/config/bin:/boot/common/bin:/bin:/boot/apps:/boot/preferences:/boot/system/apps:/boot/system/preferences:$BETOOLS
-       export 
LIBRARY_PATH="%A/lib:$HOME/config/lib:/boot/common/lib:/boot/system/lib"
-       export 
ADDON_PATH="%A/add-ons:$HOME/config/add-ons:/boot/common/add-ons:/boot/system/add-ons"
+       export 
PATH=.:$HOME/config/non-packaged/bin:$HOME/config/bin:/boot/common/non-packaged/bin:/boot/common/bin:/bin:/boot/apps:/boot/preferences:/boot/system/apps:/boot/system/preferences:$BETOOLS
+       export 
LIBRARY_PATH="%A/lib:$HOME/config/non-packaged/lib:$HOME/config/lib:/boot/common/non-packaged/lib:/boot/common/lib:/boot/system/lib"
+       export 
ADDON_PATH="%A/add-ons:$HOME/config/non-packaged/add-ons:$HOME/config/add-ons:/boot/common/non-packaged/add-ons:/boot/common/add-ons:/boot/system/add-ons"
 else
-       export 
PATH=.:/boot/common/bin:/bin:/boot/apps:/boot/preferences:/boot/system/apps:/boot/system/preferences:$BETOOLS
-       export LIBRARY_PATH="%A/lib:/boot/common/lib:/boot/system/lib"
-       export ADDON_PATH="%A/add-ons:/boot/common/add-ons:/boot/system/add-ons"
+       export 
PATH=.:/bin:/boot/apps:/boot/system/apps:/boot/system/preferences:$BETOOLS
+       export LIBRARY_PATH="%A/lib:/boot/system/lib"
+       export ADDON_PATH="%A/add-ons:/boot/system/add-ons"
 fi
 
 # media kit

Modified: 
haiku/branches/features/package-management/headers/os/storage/FindDirectory.h
===================================================================
--- 
haiku/branches/features/package-management/headers/os/storage/FindDirectory.h   
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/headers/os/storage/FindDirectory.h   
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -31,6 +31,7 @@
        B_SYSTEM_DATA_DIRECTORY,
        B_SYSTEM_DEVELOP_DIRECTORY,
        B_SYSTEM_PACKAGES_DIRECTORY,
+       B_SYSTEM_HEADERS_DIRECTORY,
 
        /* Common directories, shared among all users. */
        B_COMMON_DIRECTORY                                      = 2000,
@@ -55,6 +56,18 @@
        B_COMMON_DATA_DIRECTORY,
        B_COMMON_CACHE_DIRECTORY,
        B_COMMON_PACKAGES_DIRECTORY,
+       B_COMMON_HEADERS_DIRECTORY,
+       B_COMMON_NONPACKAGED_DIRECTORY,
+       B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+       B_COMMON_NONPACKAGED_TRANSLATORS_DIRECTORY,
+       B_COMMON_NONPACKAGED_MEDIA_NODES_DIRECTORY,
+       B_COMMON_NONPACKAGED_BIN_DIRECTORY,
+       B_COMMON_NONPACKAGED_DATA_DIRECTORY,
+       B_COMMON_NONPACKAGED_FONTS_DIRECTORY,
+       B_COMMON_NONPACKAGED_SOUNDS_DIRECTORY,
+       B_COMMON_NONPACKAGED_DOCUMENTATION_DIRECTORY,
+       B_COMMON_NONPACKAGED_LIB_DIRECTORY,
+       B_COMMON_NONPACKAGED_HEADERS_DIRECTORY,
 
        /* User directories. These are interpreted in the context
           of the user making the find_directory call. */
@@ -73,6 +86,18 @@
        B_USER_DATA_DIRECTORY,
        B_USER_CACHE_DIRECTORY,
        B_USER_PACKAGES_DIRECTORY,
+       B_USER_HEADERS_DIRECTORY,
+       B_USER_NONPACKAGED_DIRECTORY,
+       B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+       B_USER_NONPACKAGED_TRANSLATORS_DIRECTORY,
+       B_USER_NONPACKAGED_MEDIA_NODES_DIRECTORY,
+       B_USER_NONPACKAGED_BIN_DIRECTORY,
+       B_USER_NONPACKAGED_DATA_DIRECTORY,
+       B_USER_NONPACKAGED_FONTS_DIRECTORY,
+       B_USER_NONPACKAGED_SOUNDS_DIRECTORY,
+       B_USER_NONPACKAGED_DOCUMENTATION_DIRECTORY,
+       B_USER_NONPACKAGED_LIB_DIRECTORY,
+       B_USER_NONPACKAGED_HEADERS_DIRECTORY,
 
        /* Global directories. */
        B_APPS_DIRECTORY                                        = 4000,

Modified: haiku/branches/features/package-management/src/bin/finddir.c
===================================================================
--- haiku/branches/features/package-management/src/bin/finddir.c        
2011-03-09 22:22:36 UTC (rev 40892)
+++ haiku/branches/features/package-management/src/bin/finddir.c        
2011-03-09 22:29:46 UTC (rev 40893)
@@ -49,6 +49,7 @@
        KEYVALUE_PAIR(B_SYSTEM_DATA_DIRECTORY),
        KEYVALUE_PAIR(B_SYSTEM_DEVELOP_DIRECTORY),
        KEYVALUE_PAIR(B_SYSTEM_PACKAGES_DIRECTORY),
+       KEYVALUE_PAIR(B_SYSTEM_HEADERS_DIRECTORY),
 
        // Common directories
        KEYVALUE_PAIR(B_COMMON_DIRECTORY),
@@ -73,6 +74,18 @@
        KEYVALUE_PAIR(B_COMMON_DATA_DIRECTORY),
        KEYVALUE_PAIR(B_COMMON_CACHE_DIRECTORY),
        KEYVALUE_PAIR(B_COMMON_PACKAGES_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_HEADERS_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_ADDONS_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_TRANSLATORS_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_MEDIA_NODES_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_BIN_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_DATA_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_FONTS_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_SOUNDS_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_DOCUMENTATION_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_LIB_DIRECTORY),
+       KEYVALUE_PAIR(B_COMMON_NONPACKAGED_HEADERS_DIRECTORY),
 
        // User directories
        KEYVALUE_PAIR(B_USER_DIRECTORY),
@@ -90,6 +103,18 @@
        KEYVALUE_PAIR(B_USER_DATA_DIRECTORY),
        KEYVALUE_PAIR(B_USER_CACHE_DIRECTORY),
        KEYVALUE_PAIR(B_USER_PACKAGES_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_HEADERS_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_ADDONS_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_TRANSLATORS_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_MEDIA_NODES_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_BIN_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_DATA_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_FONTS_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_SOUNDS_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_DOCUMENTATION_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_LIB_DIRECTORY),
+       KEYVALUE_PAIR(B_USER_NONPACKAGED_HEADERS_DIRECTORY),
 
        // Legacy system directories
        KEYVALUE_PAIR(B_BEOS_DIRECTORY),

Modified: 
haiku/branches/features/package-management/src/kits/locale/MutableLocaleRoster.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/locale/MutableLocaleRoster.cpp
  2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/locale/MutableLocaleRoster.cpp
  2011-03-09 22:29:46 UTC (rev 40893)
@@ -342,15 +342,17 @@
        fCatalogAddOnInfos.AddItem((void*)defaultCatalogAddOnInfo);
 
        directory_which folders[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
                B_SYSTEM_ADDONS_DIRECTORY,
-               static_cast<directory_which>(-1)
        };
        BPath addOnPath;
        BDirectory addOnFolder;
        char buf[4096];
        status_t err;
-       for (int f = 0; folders[f]>=0; ++f) {
+       for (uint32 f = 0; f < sizeof(folders) / sizeof(directory_which); ++f) {
                find_directory(folders[f], &addOnPath);
                BString addOnFolderName(addOnPath.Path());
                addOnFolderName << "/locale/catalogs";

Modified: 
haiku/branches/features/package-management/src/kits/opengl/GLRendererRoster.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/opengl/GLRendererRoster.cpp 
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/opengl/GLRendererRoster.cpp 
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -107,12 +107,14 @@
 {
        // add user directories first, so that they can override system 
renderers
        const directory_which paths[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY,
        };
 
-       for (uint32 i = fSafeMode ? 2 : 0; i < sizeof(paths) / 
sizeof(paths[0]); i++) {
+       for (uint32 i = fSafeMode ? 4 : 0; i < sizeof(paths) / 
sizeof(paths[0]); i++) {
                BPath path;
                status_t status = find_directory(paths[i], &path, true);
                if (status == B_OK && path.Append("opengl") == B_OK)

Modified: 
haiku/branches/features/package-management/src/kits/print/PrintTransport.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/print/PrintTransport.cpp    
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/print/PrintTransport.cpp    
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -70,19 +70,22 @@
                return B_ERROR;
        }
 
-       // try first in user add-ons directory
+       const directory_which paths[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+               B_COMMON_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY,
+       };
        BPath path;
-       find_directory(B_USER_ADDONS_DIRECTORY, &path);
-       path.Append("Print/transport");
-       path.Append(transportName.String());
-       fAddOnID = load_add_on(path.Path());
-
-       if (fAddOnID < 0) {
-               // on failure try in system add-ons directory
-               find_directory(B_BEOS_ADDONS_DIRECTORY, &path);
+       for (uint32 i = 0; i < sizeof(paths) / sizeof(paths[0]); ++i) {
+               if (find_directory(paths[i], &path) != B_OK)
+                       continue;
                path.Append("Print/transport");
                path.Append(transportName.String());
                fAddOnID = load_add_on(path.Path());
+               if (fAddOnID >= 0)
+                       break;
        }
 
        if (fAddOnID < 0) {

Modified: haiku/branches/features/package-management/src/kits/print/Printer.cpp
===================================================================
--- haiku/branches/features/package-management/src/kits/print/Printer.cpp       
2011-03-09 22:22:36 UTC (rev 40892)
+++ haiku/branches/features/package-management/src/kits/print/Printer.cpp       
2011-03-09 22:29:46 UTC (rev 40893)
@@ -403,13 +403,18 @@
        if (driverName.Length() <= 0)
                return BPath();
 
-       directory_which directorys[] = { B_USER_ADDONS_DIRECTORY,
-               B_COMMON_ADDONS_DIRECTORY, B_BEOS_ADDONS_DIRECTORY };
+       directory_which directories[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+               B_COMMON_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY
+       };
 
        BPath path;
        driverName.Prepend("Print/");
-       for (int32 i = 0; i < 3; ++i) {
-               if (find_directory(directorys[i], &path) == B_OK) {
+       for (int32 i = 0; i < sizeof(directories) / sizeof(directories[0]); 
++i) {
+               if (find_directory(directories[i], &path) == B_OK) {
                        path.Append(driverName.String());
 
                        BEntry driver(path.Path());

Modified: 
haiku/branches/features/package-management/src/kits/print/PrinterDriverAddOn.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/print/PrinterDriverAddOn.cpp
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/print/PrinterDriverAddOn.cpp
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -159,17 +159,27 @@
 PrinterDriverAddOn::FindPathToDriver(const char* driver, BPath* path)
 {
        status_t result;
+       result = ::TestForAddonExistence(driver,
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY, kPrinterDriverFolderName, 
*path);
+       if (result == B_OK)
+               return B_OK;
+
        result = ::TestForAddonExistence(driver, B_USER_ADDONS_DIRECTORY,
                kPrinterDriverFolderName, *path);
        if (result == B_OK)
                return B_OK;
 
+       result = ::TestForAddonExistence(driver,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY, 
kPrinterDriverFolderName, *path);
+       if (result == B_OK)
+               return B_OK;
+
        result = ::TestForAddonExistence(driver, B_COMMON_ADDONS_DIRECTORY,
                kPrinterDriverFolderName, *path);
        if (result == B_OK)
                return B_OK;
 
-       result = ::TestForAddonExistence(driver, B_BEOS_ADDONS_DIRECTORY,
+       result = ::TestForAddonExistence(driver, B_SYSTEM_ADDONS_DIRECTORY,
                kPrinterDriverFolderName, *path);
        return result;
 }

Modified: 
haiku/branches/features/package-management/src/kits/screensaver/ScreenSaverRunner.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/screensaver/ScreenSaverRunner.cpp
       2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/screensaver/ScreenSaverRunner.cpp
       2011-03-09 22:29:46 UTC (rev 40893)
@@ -117,8 +117,13 @@
 
        // try all directories until the first one succeeds
 
-       directory_which which[] = {B_BEOS_ADDONS_DIRECTORY, 
B_COMMON_ADDONS_DIRECTORY,
-               B_USER_ADDONS_DIRECTORY};
+       directory_which which[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+               B_COMMON_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY,
+       };
        BPath path;
 
        for (uint32 i = 0; i < sizeof(which) / sizeof(which[0]); i++) {
@@ -170,7 +175,7 @@
 
 
 void
-ScreenSaverRunner::_Run() 
+ScreenSaverRunner::_Run()
 {
        static const uint32 kInitialTickRate = 50000;
 
@@ -181,7 +186,7 @@
                        fHasStarted = fSaver->StartSaver(fView, fPreview) == 
B_OK;
                fWindow->Unlock();
        }
-       
+
        // TODO: This code is getting awfully complicated and should
        // probably be refactored.
        uint32 tickBase = kInitialTickRate;
@@ -200,11 +205,11 @@
                if (system_time() - lastTickTime < tick) {
                        continue;
                } else {
-                       // re-evaluate the tick time after each successful 
wakeup - 
+                       // re-evaluate the tick time after each successful 
wakeup -
                        // screensavers can adjust it on the fly, and we must be
                        // prepared to accomodate that
                        tick = fSaver ? fSaver->TickSize() : tickBase;
-                       
+
                        if (tick < tickBase) {
                                if (tick < 0)
                                        tick = 0;
@@ -212,10 +217,10 @@
                        } else if (tickBase < kInitialTickRate && tick >= 
kInitialTickRate) {
                                tickBase = kInitialTickRate;
                        }
-                       
+
                        lastTickTime = system_time();
                }
-               
+
                if (snoozeCount) {
                        // if we are sleeping, do nothing
                        snoozeCount--;

Modified: 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskDeviceRoster.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskDeviceRoster.cpp
        2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskDeviceRoster.cpp
        2011-03-09 22:29:46 UTC (rev 40893)
@@ -36,9 +36,11 @@
 
 /*!    \brief find_directory constants of the add-on dirs to be searched. */
 static const directory_which kAddOnDirs[] = {
+       B_USER_NONPACKAGED_ADDONS_DIRECTORY,
        B_USER_ADDONS_DIRECTORY,
+       B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
        B_COMMON_ADDONS_DIRECTORY,
-       B_BEOS_ADDONS_DIRECTORY
+       B_SYSTEM_ADDONS_DIRECTORY,
 };
 /*!    \brief Size of the kAddOnDirs array. */
 static const int32 kAddOnDirCount

Modified: 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp
  2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp
  2011-03-09 22:29:46 UTC (rev 40893)
@@ -110,13 +110,22 @@
                return B_OK;
 
        StringSet alreadyLoaded;
-       status_t error = _LoadAddOns(alreadyLoaded, B_USER_ADDONS_DIRECTORY);
+       status_t error
+               = _LoadAddOns(alreadyLoaded, 
B_USER_NONPACKAGED_ADDONS_DIRECTORY);
 
        if (error == B_OK)
+               error = _LoadAddOns(alreadyLoaded, B_USER_ADDONS_DIRECTORY);
+
+       if (error == B_OK) {
+               error
+                       = _LoadAddOns(alreadyLoaded, 
B_COMMON_NONPACKAGED_ADDONS_DIRECTORY);
+       }
+
+       if (error == B_OK)
                error = _LoadAddOns(alreadyLoaded, B_COMMON_ADDONS_DIRECTORY);
 
        if (error == B_OK)
-               error = _LoadAddOns(alreadyLoaded, B_BEOS_ADDONS_DIRECTORY);
+               error = _LoadAddOns(alreadyLoaded, B_SYSTEM_ADDONS_DIRECTORY);
 
        if (error != B_OK)
                UnloadDiskSystems();

Modified: 
haiku/branches/features/package-management/src/kits/tracker/ContainerWindow.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/tracker/ContainerWindow.cpp 
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/tracker/ContainerWindow.cpp 
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -2825,14 +2825,21 @@
        BObjectList<Model> uniqueList(10, true);
        BPath path;
        bool bail = false;
-       if (find_directory(B_BEOS_ADDONS_DIRECTORY, &path) == B_OK)
+       if (find_directory(B_USER_NONPACKAGED_ADDONS_DIRECTORY, &path) == B_OK)
                bail = EachAddon(path, eachAddon, &uniqueList, passThru);
 
        if (!bail && find_directory(B_USER_ADDONS_DIRECTORY, &path) == B_OK)
                bail = EachAddon(path, eachAddon, &uniqueList, passThru);
 
+       if (!bail
+               && find_directory(B_COMMON_NONPACKAGED_ADDONS_DIRECTORY, &path) 
== B_OK)
+               EachAddon(path, eachAddon, &uniqueList, passThru);
+
        if (!bail && find_directory(B_COMMON_ADDONS_DIRECTORY, &path) == B_OK)
                EachAddon(path, eachAddon, &uniqueList, passThru);
+
+       if (!bail && find_directory(B_SYSTEM_ADDONS_DIRECTORY, &path) == B_OK)
+               bail = EachAddon(path, eachAddon, &uniqueList, passThru);
 }
 
 

Modified: 
haiku/branches/features/package-management/src/kits/tracker/DeskWindow.cpp
===================================================================
--- haiku/branches/features/package-management/src/kits/tracker/DeskWindow.cpp  
2011-03-09 22:22:36 UTC (rev 40892)
+++ haiku/branches/features/package-management/src/kits/tracker/DeskWindow.cpp  
2011-03-09 22:29:46 UTC (rev 40893)
@@ -175,9 +175,11 @@
 
        // watch add-on directories so that we can track the addons with
        // corresponding shortcuts
-       WatchAddOnDir(B_BEOS_ADDONS_DIRECTORY, this);
+       WatchAddOnDir(B_USER_NONPACKAGED_ADDONS_DIRECTORY, this);
        WatchAddOnDir(B_USER_ADDONS_DIRECTORY, this);
+       WatchAddOnDir(B_COMMON_NONPACKAGED_ADDONS_DIRECTORY, this);
        WatchAddOnDir(B_COMMON_ADDONS_DIRECTORY, this);
+       WatchAddOnDir(B_SYSTEM_ADDONS_DIRECTORY, this);
 
        _inherited::Init();
 }

Modified: 
haiku/branches/features/package-management/src/kits/translation/TranslatorRoster.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/kits/translation/TranslatorRoster.cpp
        2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/kits/translation/TranslatorRoster.cpp
        2011-03-09 22:29:46 UTC (rev 40893)
@@ -330,12 +330,14 @@
 {
        // add user directories first, so that they can override system 
translators
        const directory_which paths[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY,
        };
 
-       for (uint32 i = fSafeMode ? 1 : 0; i < sizeof(paths) / sizeof(paths[0]);
+       for (uint32 i = fSafeMode ? 4 : 0; i < sizeof(paths) / sizeof(paths[0]);
                        i++) {
                BPath path;
                status_t status = find_directory(paths[i], &path, true);

Modified: 
haiku/branches/features/package-management/src/libs/print/libprint/Transport.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/libs/print/libprint/Transport.cpp
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/libs/print/libprint/Transport.cpp
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -41,25 +41,26 @@
        fDataStream(0),
        fAbort(false)
 {
+       const directory_which paths[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+               B_COMMON_ADDONS_DIRECTORY,
+               B_BEOS_ADDONS_DIRECTORY,
+       };
        BPath path;
-
-       if (B_OK == find_directory(B_USER_ADDONS_DIRECTORY, &path)) {
+       for (uint32 i = 0; i < sizeof(paths) / sizeof(paths[0]); ++i) {
+               if (find_directory(paths[i], &path) != B_OK)
+                       continue;
                path.Append("Print/transport");
                path.Append(printerData->GetTransport().c_str());
                DBGMSG(("load_add_on: %s\n", path.Path()));
                fImage = load_add_on(path.Path());
+               if (fImage >= 0)
+                       break;
        }
 
        if (fImage < 0) {
-               if (B_OK == find_directory(B_BEOS_ADDONS_DIRECTORY, &path)) {
-                       path.Append("Print/transport");
-                       path.Append(printerData->GetTransport().c_str());
-                       DBGMSG(("load_add_on: %s\n", path.Path()));
-                       fImage = load_add_on(path.Path());
-               }
-       }
-
-       if (fImage < 0) {
                SetLastError("cannot load a transport add-on");
                return;
        }

Modified: 
haiku/branches/features/package-management/src/preferences/printers/AddPrinterDialog.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/preferences/printers/AddPrinterDialog.cpp
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/preferences/printers/AddPrinterDialog.cpp
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -285,9 +285,11 @@
 
 
 static directory_which gAddonDirs[] = {
-       B_BEOS_ADDONS_DIRECTORY,
+       B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+       B_USER_ADDONS_DIRECTORY,
+       B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
        B_COMMON_ADDONS_DIRECTORY,
-       B_USER_ADDONS_DIRECTORY
+       B_SYSTEM_ADDONS_DIRECTORY,
 };
 
 

Modified: 
haiku/branches/features/package-management/src/preferences/screensaver/ScreenSaverWindow.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/preferences/screensaver/ScreenSaverWindow.cpp
        2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/preferences/screensaver/ScreenSaverWindow.cpp
        2011-03-09 22:29:46 UTC (rev 40893)
@@ -442,7 +442,12 @@
        // Iterate over add-on directories, and add their files to the list view
 
        directory_which which[] = {
-               B_BEOS_ADDONS_DIRECTORY, B_USER_ADDONS_DIRECTORY};
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
+               B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
+               B_COMMON_ADDONS_DIRECTORY,
+               B_SYSTEM_ADDONS_DIRECTORY,
+       };
        ScreenSaverItem* selectItem = NULL;
 
        for (uint32 i = 0; i < sizeof(which) / sizeof(which[0]); i++) {

Modified: 
haiku/branches/features/package-management/src/servers/app/drawing/AccelerantHWInterface.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/app/drawing/AccelerantHWInterface.cpp
        2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/app/drawing/AccelerantHWInterface.cpp
        2011-03-09 22:29:46 UTC (rev 40893)
@@ -272,14 +272,16 @@
 
        struct stat accelerant_stat;
        const static directory_which dirs[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY
+               B_SYSTEM_ADDONS_DIRECTORY
        };
 
        fAccelerantImage = -1;
 
-       for (int32 i = 0; i < 3; i++) {
+       for (uint32 i = 0; i < sizeof(dirs) / sizeof(directory_which); i++) {
                char path[PATH_MAX];
                if (find_directory(dirs[i], -1, false, path, PATH_MAX) != B_OK)
                        continue;

Modified: 
haiku/branches/features/package-management/src/servers/app/drawing/DWindowHWInterface.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/app/drawing/DWindowHWInterface.cpp
   2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/app/drawing/DWindowHWInterface.cpp
   2011-03-09 22:29:46 UTC (rev 40893)
@@ -465,14 +465,16 @@
 
        struct stat accelerant_stat;
        const static directory_which dirs[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY
+               B_SYSTEM_ADDONS_DIRECTORY
        };
 
        fAccelerantImage = -1;
 
-       for (int32 i = 0; i < 3; i++) {
+       for (uint32 i = 0; i < sizeof(dirs) / sizeof(directory_which); i++) {
                char path[PATH_MAX];
                if (find_directory(dirs[i], -1, false, path, PATH_MAX) != B_OK)
                        continue;

Modified: 
haiku/branches/features/package-management/src/servers/index/IndexServer.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/index/IndexServer.cpp    
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/index/IndexServer.cpp    
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -21,7 +21,7 @@
        :
        fIndexServer(indexServer)
 {
-       
+
 }
 
 
@@ -39,7 +39,7 @@
                        message->FindInt32("new device", &device);
                        fIndexServer->AddVolume(BVolume(device));
                        break ;
-               
+
                case B_DEVICE_UNMOUNTED :
                        message->FindInt32("device", &device);
                        fIndexServer->RemoveVolume(BVolume(device));
@@ -52,7 +52,7 @@
        :
        fIndexServer(indexServer)
 {
-       
+
 }
 
 
@@ -138,7 +138,7 @@
        // ignore volumes like / or /dev
        if (volume.Capacity() == 0)
                return;
-       
+
        // check if volume is already in our list
        for (int i = 0; i < fVolumeWatcherList.CountItems(); i++) {
                VolumeWatcher* current = fVolumeWatcherList.ItemAt(i);
@@ -332,13 +332,15 @@
 
        // load dormant media nodes
        const directory_which directories[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY
+               B_SYSTEM_ADDONS_DIRECTORY
        };
 
-       // when safemode, only B_BEOS_ADDONS_DIRECTORY is used
-       for (uint32 i = safeMode ? 2 : 0;
+       // when safemode, only B_SYSTEM_ADDONS_DIRECTORY is used
+       for (uint32 i = safeMode ? 4 : 0;
                        i < sizeof(directories) / sizeof(directory_which); i++) 
{
                BDirectory directory;
                node_ref nodeRef;

Modified: 
haiku/branches/features/package-management/src/servers/input/AddOnManager.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/input/AddOnManager.cpp   
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/input/AddOnManager.cpp   
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -261,7 +261,9 @@
        BAutolock locker(this);
 
        const directory_which directories[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
                B_SYSTEM_ADDONS_DIRECTORY
        };
@@ -275,8 +277,8 @@
        node_ref nref;
        BDirectory directory;
        BPath path;
-       // when safemode, only B_BEOS_ADDONS_DIRECTORY is used
-       for (uint32 i = fSafeMode ? 2 : 0;
+       // when safemode, only B_SYSTEM_ADDONS_DIRECTORY is used
+       for (uint32 i = fSafeMode ? 4 : 0;
                        i < sizeof(directories) / sizeof(directory_which); i++) 
{
                for (int32 j = 0; j < subDirectoryCount; j++) {
                        if (find_directory(directories[i], &path) == B_OK

Modified: 
haiku/branches/features/package-management/src/servers/media/AddOnManager.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/media/AddOnManager.cpp   
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/media/AddOnManager.cpp   
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -58,9 +58,11 @@
 
 
 static const directory_which sDirectories[] = {
+       B_USER_NONPACKAGED_ADDONS_DIRECTORY,
        B_USER_ADDONS_DIRECTORY,
+       B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
        B_COMMON_ADDONS_DIRECTORY,
-       B_BEOS_ADDONS_DIRECTORY,
+       B_SYSTEM_ADDONS_DIRECTORY
 };
 
 
@@ -120,8 +122,8 @@
                "%ld\n", format.Encoding());
 
        // Since the list of decoders is unsorted, we need to search for
-       // an decoder by add-on directory, in order to maintain the shadowing
-       // of system add-ons by user add-ons, in case they offer decorders
+       // a decoder by add-on directory, in order to maintain the shadowing
+       // of system add-ons by user add-ons, in case they offer decoders
        // for the same format.
 
        BPath path;
@@ -160,7 +162,7 @@
                }
                _GetReaders(path, outRefs, outCount, maxCount);
        }
-       
+
        return B_OK;
 }
 

Modified: 
haiku/branches/features/package-management/src/servers/media_addon/MediaAddonServer.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/media_addon/MediaAddonServer.cpp
     2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/media_addon/MediaAddonServer.cpp
     2011-03-09 22:29:46 UTC (rev 40893)
@@ -294,13 +294,15 @@
 
        // load dormant media nodes
        const directory_which directories[] = {
+               B_USER_NONPACKAGED_ADDONS_DIRECTORY,
                B_USER_ADDONS_DIRECTORY,
+               B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
                B_COMMON_ADDONS_DIRECTORY,
-               B_BEOS_ADDONS_DIRECTORY
+               B_SYSTEM_ADDONS_DIRECTORY
        };
 
-       // when safemode, only B_BEOS_ADDONS_DIRECTORY is used
-       for (uint32 i = safeMode ? 2 : 0;
+       // when safemode, only B_SYSTEM_ADDONS_DIRECTORY is used
+       for (uint32 i = safeMode ? 4 : 0;
                        i < sizeof(directories) / sizeof(directory_which); i++) 
{
                BDirectory directory;
                node_ref nodeRef;
@@ -347,7 +349,7 @@
 
        BMediaRoster::CurrentRoster()->Lock();
        BMediaRoster::CurrentRoster()->Quit();
-                               
+
        for (iterator = fInfoMap.begin(); iterator != fInfoMap.end(); 
iterator++)
                _PutAddonIfPossible(iterator->second);
 
@@ -610,9 +612,9 @@
        NodeVector::iterator iterator = info.active_flavors.begin();
        for (; iterator != info.active_flavors.end(); iterator++) {
                media_node& node = *iterator;
-               
+
                printf("node %ld\n", node.node);
-               
+
                if ((node.kind & B_TIME_SOURCE) != 0
                        && (fMediaRoster->StopTimeSource(node, 0, true) != 
B_OK)) {
                        printf("MediaAddonServer::_DestroyInstantiatedFlavors 
couldn't stop "
@@ -681,7 +683,7 @@
                                }
                        }
                }
-               
+
                MediaRosterEx(fMediaRoster)->ReleaseNodeAll(node);
        }
 
@@ -755,9 +757,9 @@
                        continue;
                else if (status != B_OK)
                        break;
-                       
+
                printf("started node %ld\n", index);
-                                               
+
                status = MediaRosterEx(fMediaRoster)->RegisterNode(node, 
info.id,
                        internalID);
                if (status != B_OK) {

Modified: 
haiku/branches/features/package-management/src/servers/print/PrintServerApp.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/servers/print/PrintServerApp.cpp 
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/servers/print/PrintServerApp.cpp 
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -107,9 +107,11 @@
        fHasReferences = create_sem(1, "has_references");
 
        // Build list of transport addons
+       Transport::Scan(B_USER_NONPACKAGED_ADDONS_DIRECTORY);
        Transport::Scan(B_USER_ADDONS_DIRECTORY);
+       Transport::Scan(B_COMMON_NONPACKAGED_ADDONS_DIRECTORY);
        Transport::Scan(B_COMMON_ADDONS_DIRECTORY);
-       Transport::Scan(B_BEOS_ADDONS_DIRECTORY);
+       Transport::Scan(B_SYSTEM_ADDONS_DIRECTORY);
 
        SetupPrinterList();
        RetrieveDefaultPrinter();
@@ -626,7 +628,7 @@
 }
 
 
-bool 
+bool
 PrintServerApp::OpenSettings(BFile& file, const char* name,
        bool forReading)
 {
@@ -639,7 +641,7 @@
 }
 
 
-void 
+void
 PrintServerApp::LoadSettings() {
        BFile file;
        if (OpenSettings(file, kSettingsName, true)) {
@@ -649,7 +651,7 @@
 }
 
 
-void 
+void
 PrintServerApp::SaveSettings() {
        BFile file;
        if (OpenSettings(file, kSettingsName, false)) {

Modified: 
haiku/branches/features/package-management/src/system/boot/loader/loader.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/system/boot/loader/loader.cpp    
    2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/system/boot/loader/loader.cpp    
    2011-03-09 22:29:46 UTC (rev 40893)
@@ -27,8 +27,13 @@
 #define KERNEL_PATH            "system/" KERNEL_IMAGE
 
 
+// TODO: activating more than just the two below results in a panic about
+// kernel_args max range being too low ...
 static const char *sPaths[] = {
        "system/add-ons/kernel",
+//     "common/non-packaged/add-ons/kernel",
+//     "common/add-ons/kernel",
+//     "home/config/non-packaged/add-ons/kernel",
        "home/config/add-ons/kernel",
        NULL
 };

Modified: 
haiku/branches/features/package-management/src/system/libroot/os/find_directory.cpp
===================================================================
--- 
haiku/branches/features/package-management/src/system/libroot/os/find_directory.cpp
 2011-03-09 22:22:36 UTC (rev 40892)
+++ 
haiku/branches/features/package-management/src/system/libroot/os/find_directory.cpp
 2011-03-09 22:29:46 UTC (rev 40893)
@@ -35,6 +35,7 @@
 
 #define SYSTEM "system"
 #define COMMON "common"
+#define NON_PACKAGED "/non-packaged"
 
 
 static const char *kSystemDirectories[] = {
@@ -56,6 +57,7 @@
        SYSTEM "/data",
        SYSTEM "/develop",
        SYSTEM "/packages",
+       SYSTEM "/develop/headers",
 };
 
 /* Common directories, shared among users */
@@ -83,6 +85,18 @@
        COMMON "/data",
        COMMON "/cache",                                                // 
B_COMMON_CACHE_DIRECTORY
        COMMON "/packages",
+       COMMON "/develop/headers",
+       COMMON NON_PACKAGED,
+       COMMON NON_PACKAGED "/add-ons",
+       COMMON NON_PACKAGED "/add-ons/Translators",
+       COMMON NON_PACKAGED "/add-ons/media",
+       COMMON NON_PACKAGED "/bin",
+       COMMON NON_PACKAGED "/data",
+       COMMON NON_PACKAGED "/data/fonts",
+       COMMON NON_PACKAGED "/data/sounds",
+       COMMON NON_PACKAGED "/documentation",
+       COMMON NON_PACKAGED "/lib",
+       COMMON NON_PACKAGED "/develop/headers",
 };
 
 /* User directories */
@@ -98,7 +112,7 @@
        HOME CONFIG "/data/fonts",
        HOME CONFIG "/lib",
        HOME CONFIG "/settings",
-       HOME CONFIG "/be",
+       HOME CONFIG "/settings/deskbar",
        HOME CONFIG "/settings/printers",

[... truncated: 311 lines follow ...]

Other related posts: