[[!meta title="Release Series 1 Goal: Installation Bootstrap Tool"]] A goal for [[release_1.0|dev/releases/1]] is an installation bootstrap tool. Overview ======== A tool similar to [debootstrap][debootstrap] of Debian needs to be written to bootstrap the installation of a basic system. It can be used for [[building_packages|dev/todo/package-cross-building-tool]] or installing the operating system on hardware targets. Basically, the tool would fetch from the package archive the index of packages, determine which packages need to be installed, download each package, and unpack each package. Since the package manager may not be available, the tool must handle dependency resolution and package unpacking on its own. If written portably (i.e. in conformance with POSIX.1), this tool could be used to make base system images on any UNIX-like operating system with implementations of the `tar` and `chroot` programs. Additionally, the package building tool can build packages for this distribution inside an isolated environment made using this installation tool. Therefore, these tools can be thought of as a "Software Development Kit" ("SDK") for the distribution, usable on any capable development system. Ideas and code may be borrowed from debootstrap and old versions of ipkg (the predecessor to opkg, originally written in UNIX shell command language). Status ====== Development has begun on [opkbootstrap][opkbootstrap]. It currently downloads old ipkg-style source lists, finds essential packages, and unpacks packages. To do are downloading Debian pool-style source lists, resolving dependencies, downloading packages, setting up an isolated environment ("chroot"), and running maintainer scripts. [debootstrap]: http://anonscm.debian.org/gitweb/?p=d-i/debootstrap.git;a=tree [opkbootstrap]: http://git.os.pehjota.net/opkbootstrap/opkbootstrap.git/