# Install new software

It is possible to install software on the robot just like on a regular Ubuntu PC.

However, the robot is configured to **automatically revert to a known-good state after each reboot**, which prevents accidental misconfiguration or instability. Any changes made during a normal session will be lost unless installed in a special writable partition. If system corruption occurs, a full reinstallation of the ISO may be required.

To install software **permanently**, it must be installed into a dedicated writable system partition by following these steps:

1. Switch to superuser:
   ```bash
   sudo su
   # Password: palroot
   ```
2. emount the system as read-write:
   ```bash
   rw
   ```
3. Mount the `/ro` partition
   ```bash
   chroot /ro
   ```

Install the new software as in a normal Ubntu PC.

`````{admonition} IMPORTANT
:class: warning
Before install the package in the robot, install it inside your development Docker and check that this doesn't cause and major issue or break compatibility with the exsiting software.
`````

`````{tip}
Install first the new software in the normal partition and if this doesn't causes any issue, then install it in the permanent partition.
`````

