haiku/docs/develop/packages
Adrien Destugues a5061ecec5 Generate developer docs with Sphinx
An effort was started some time ago to consolidate all internal
documentation in the git tree. However, this was just an accumulation of
files in various formats without any strucutre or way to browse it,
which results in no one even knowing that we have docs here.

This converts most of the files to restructuredtext and uses Sphinx to
generate an HTML browsable user manual (with a table of content and a
first attempt to put things in a global hierarchy).

There are almost no changes to the documentation content in this commit
(some obviously obsolete things were removed). The plan is to get the
toolchain up and running to make these docs easily available, and only
then see about improving the content. We can migrate some things off the
wiki and website, and rework the table of contents to have some more
hierarchy levels because currently it's a bit messy.

Change-Id: I924ac9dc6e753887ab56f18a09bdb0a1e1793bfd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4370
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
2021-08-27 11:41:17 +00:00
..
Bootstrapping.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
BuildingPackages.rst Package Kit: Proper Installation for First Boot Packages 2021-03-14 09:10:18 +00:00
DirectoryStructure.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
FileFormat.rst package kit: Add pre-uninstall scripts feature. 2020-09-21 10:47:57 +00:00
HybridBuilds.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
Infrastructure.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
Migration.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
OldIdeas.rst docs/develop/packages: convert wiki to rst 2018-03-03 20:22:46 +00:00
package-management-infrastructure.png
PackagingPolicy.rst Generate developer docs with Sphinx 2021-08-27 11:41:17 +00:00
README.rst Generate developer docs with Sphinx 2021-08-27 11:41:17 +00:00
TODO.rst docs/develop/packages/TODO: add missing part 2018-08-06 23:40:47 +00:00

==================
Package Management
==================
This is a short index of the available package management related documentation.

- `Package Management Infrastructure`_ provides an overview of what components
  belong to Haiku's package management infrastructure and how they work and
  interact.

  .. _Package Management Infrastructure: Infrastructure.rst

- `Building Packages`_ gives information on various aspects of the package
  building process.

  .. _Building Packages: BuildingPackages.rst

- `Boot Volume Directory Structure`_ outlines the directory structure of a
  package management powered Haiku boot volume.

  .. _Boot Volume Directory Structure: DirectoryStructure.rst

- `Haiku Package File Format`_ specifies in detail the file format of Haiku
  package files (HPKG) and Haiku package repository files (HPKR).

  .. _Haiku Package File Format: FileFormat.rst

- `Packaging Policy`_ defines the policy for creating Haiku packages.

  .. _Packaging Policy: PackagingPolicy.rst

- `Packages Status`_ gives an overview of the packages needed for a Haiku
  standard build and their current status.

  .. _Packages Status: PackagesStatus.rst

- `Hybrid Builds`_ provides some information regarding hybrid builds.

  .. _Hybrid Builds: HybridBuilds.rst

- HaikuDepot_ explains the concept and ideas behind HaikuDepot, the GUI package
  manager in the making.

  .. _HaikuDepot: HaikuDepot.rst

- Migration_ lists the changes that users should expect when migrating to a
  package management Haiku.

  .. _Migration: Migration.rst

- `Bootstrapping Haiku`_ explains the process of bootstrapping Haiku and third-party packages.

  .. _Bootstrapping Haiku: Bootstrapping.rst

- TODO_ is a list of package management related work still to be done.

  .. _TODO: TODO.rst

- `Blog posts`_ on package management (the Batisseur ones are only indirectly
  package management related).

  .. _Blog posts: https://www.haiku-os.org/tags/package-management/

- `(Old) Package Management Ideas`_ is a collection of thoughts and discussions
  regarding package management. It has been partially obsoleted by the progress
  on the package management implementation.

  .. _(Old) Package Management Ideas: OldIdeas.rst

- http://www.youtube.com/watch?v=rNZQQM5zU-Q&list=PL3FFCD4C6D384A302 is a video
  playlist of Ingo and Oliver explaining and demonstrating the package
  management branch at BeGeistert 2011.

Below are links to source code related to Haiku's package management.

- Package management has been merged into "master", so see the Haiku_ and
  Buildtools_ repositories for that

  .. _Haiku: http://cgit.haiku-os.org/haiku/
  .. _Buildtools: http://cgit.haiku-os.org/buildtools/

- HaikuPorts_ contains the build recipes of various ports.

  .. _HaikuPorts: https://github.com/haikuports/haikuports

- haikuports.cross_ contains the minimal set of build recipes to bootstrap a new
  Haiku architecture.

  .. _haikuports.cross: https://github.com/haikuports/haikuports.cross

- haikuporter_ is the tool to create binary packages from build recipes.

  .. _haikuporter: https://github.com/haikuports/haikuporter


.. toctree::
   /packages/BuildingPackages
   /packages/DirectoryStructure
   /packages/FileFormat
   /packages/HybridBuilds
   /packages/Infrastructure
   /packages/Migration
   /packages/PackagingPolicy
   /packages/Bootstrapping
   /packages/TODO
   /packages/OldIdeas