.. SPDX-License-Identifier: CC-BY-2.0-UK
.. Set default pygments highlighting to shell for this document
.. highlight:: shell

************************
Preparing to Use Toaster
************************

This chapter describes how you need to prepare your system in order to
use Toaster.

.. _toaster-setting-up-the-basic-system-requirements:

Setting Up the Basic System Requirements
========================================

Before you can use Toaster, you need to first set up your build system
to run the Yocto Project. To do this, follow the instructions in the
":ref:`dev-manual/dev-manual-start:preparing the build host`" section of
the Yocto Project Development Tasks Manual. For Ubuntu/Debian, you might
also need to do an additional install of pip3. ::

   $ sudo apt-get install python3-pip

.. _toaster-establishing-toaster-system-dependencies:

Establishing Toaster System Dependencies
========================================

Toaster requires extra Python dependencies in order to run. A Toaster
requirements file named ``toaster-requirements.txt`` defines the Python
dependencies. The requirements file is located in the ``bitbake``
directory, which is located in the root directory of the
:term:`Source Directory` (e.g.
``poky/bitbake/toaster-requirements.txt``). The dependencies appear in a
``pip``, install-compatible format.

.. _toaster-load-packages:

Install Toaster Packages
------------------------

You need to install the packages that Toaster requires. Use this
command::

   $ pip3 install --user -r bitbake/toaster-requirements.txt

The previous command installs the necessary Toaster modules into a local
python 3 cache in your ``$HOME`` directory. The caches is actually
located in ``$HOME/.local``. To see what packages have been installed
into your ``$HOME`` directory, do the following::

   $ pip3 list installed --local

If you need to remove something, the following works::

   $ pip3 uninstall PackageNameToUninstall
