haiku/docs/develop/packages/DirectoryStructure.rst
Leorize 03d384bbfb docs/develop/packages: convert wiki to rst
Cleaner syntax compared to MediaWiki, more features than Markdown, while
still looks good on plain text.
2018-03-03 20:22:46 +00:00

62 lines
2.2 KiB
ReStructuredText

===============================
Boot Volume Directory Structure
===============================
This is the directory layout of the boot volume::
home/config
<like system, but without haiku_loader, kernel_<arch>, and runtime_loader>
system
add-ons
apps
bin
boot
cache*
data
demos
develop
documentation
lib
non-packaged*
packages*
preferences
servers
settings*
var*
haiku_loader
kernel_<arch>
runtime_loader
trash
The structure mostly equals the pre-package management directory structure with
the following changes:
- ``common`` has been removed, or more correctly it has been merged into
``system``. All system-wide software is now installed (only) in ``system``.
- The ``develop`` directory has been removed and its contents has been moved to
the ``system/develop`` directory.
- The ``include`` directory has been removed. Its contents lives in
``develop/headers`` now.
- ``optional`` has been removed. Optional features can just be installed via the
package manager.
- ``share`` and ``etc`` (in ``common``) have been removed. Their contents goes
to ``data``, ``documentation``, or ``settings`` (in ``system`` or, for
packages installed there, in ``home``) as appropriate. There's
``settings/etc`` which is where ported Unix software will usually store their
global settings.
- ``apps`` and ``preferences`` have been moved to ``system`` for consistency.
- ``system`` and ``home/config`` each sport a ``packages`` directory, which
contains the activated packages.
- ``system`` and ``home/config`` themselves are mount points for two instances
of the packagefs, i.e. each contains the virtually extracted contents of the
activated packages in the respective ``packages`` subdirectory. 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.
- ``system`` 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.