Changes between Initial Version and Version 1 of Obsolete/MovedToTree/PackageManagement/DirectoryStructure


Ignore:
Timestamp:
Jun 17, 2011, 9:26:51 PM (13 years ago)
Author:
bonefish
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Obsolete/MovedToTree/PackageManagement/DirectoryStructure

    v1 v1  
     1= Boot Volume Directory Structure =
     2
     3This is the directory layout of the boot volume:
     4
     5{{{
     6common
     7        add-ons
     8        apps
     9        bin
     10        boot
     11        cache*
     12        data
     13        develop
     14        documentation
     15        etc
     16        include
     17        lib
     18        non-packaged*
     19        packages*
     20        preferences
     21        settings*
     22        share
     23        var*
     24
     25home/config
     26        <like common>
     27
     28system
     29        add-ons
     30        apps
     31        bin
     32        boot
     33        data
     34        demos
     35        develop
     36        documentation
     37        lib
     38        packages*
     39        preferences
     40        servers
     41
     42        haiku_loader**
     43        kernel_<arch>
     44        runtime_loader
     45
     46trash
     47
     48apps -> common/apps
     49preferences -> common/preferences
     50}}}
     51
     52The structure mostly equals the pre-package management directory structure with the following changes:
     53 * The `develop` directory has been removed and it's contents has been moved to the `system/develop` and `common/develop` directories as appropriate.
     54 * `optional` has been removed. Optional features can just be installed via the package manager.
     55 * `apps` and `preferences` have been moved to `common` for consistency, though symlinks remain for convenience.
     56 * `common`, `home/config` and `system` each sport a `packages` directory, which contains the activated packages.
     57 * `common`, `home/config` and `system` themselves are mount points for three instances of the packagefs, i.e. each contains the virtually extracted contents of the activated packages in the respective `packages` subdirectories. The directories marked with `*` are "shine-through" directories. They are not provided by the packagefs, but are the underlying directories of the boot volume. Unlike the other directories they are writable.
     58 * `common` and `home/config` each contain a directory `non-packaged` which has the same structure as their parent directory minus the shine-through directories. In the `non-packaged` directories software can be installed the traditional -- non-packaged -- way.
     59 * `haiku_loader` requires special treatment. While it is contained in the system package, it also needs to be extracted to the boot volume (also to `system`), since otherwise the stage one boot loader wouldn't be able to load it (that would theoretically be possible, but there's just not enough space in the boot block for the code dealing with the package format).