{% include alerts/tip.html content="For Windows users, we advise to use Git Bash. For more info about Downloads and Installation see [Official Documentation](https://git-scm.com/about)"%}
{% include alerts/danger.html content="axolotl comes with an anti-rollback feature. Please read the paragraph marked `Caution` in Requirements section of this guide, before you proceed to install /e/OS on axolotl." %}
1. Unzip the archive
```
unzip <fileyoudownloaded>
```
> In the command above, replace `<fileyoudownloaded>` with path of the downloaded archive.
> Alternatively, you can unzip the archive using a File Manager/File Explorer.
1. Confirm that extracted directory contains following content:
- `bin-linux-x86` directory - which contains linux tools including fastboot and adb
- `bin-msys` directory - which contains Windows tools including fastboot and adb
- `.img` files - The `.img` files that are to be flashed onto the device.
- `flash_axolotl_factory.sh` - The installer script.
1. Boot into bootloader/fastboot mode.
- Power OFF the device.
- Hold `Power` + `Volume Down` button combo simultaneously.
1. Run the installer script on Terminal(Linux) or on Git Bash UI(Windows).
- Make sure you are in the current directory which contains the `flash_axolotl_factory.sh` file.
The script will flash all required files and will wait for input at the last step. Proceed to locking the bootloader.
## Locking the Bootloader
{% include alerts/danger.html content="axolotl comes with an anti-rollback feature. Please read the paragraph marked `Caution` in Requirements section of this guide, before you proceed to install /e/OS on axolotl." %}
Once you have completed the above steps and before rebooting you can lock your Bootloader.
1. Lock critical partition with the following command
-`fastboot flashing lock_critical`
- Approve with <kbd>Volume +</kbd> then <kbd>power</kbd>
1. Reboot your device into bootloader, and plug it to your computer
1. Lock the device with the following command
-`fastboot flashing lock`
- Approve with <kbd>Volume +</kbd> then <kbd>power</kbd>
{% include alerts/danger.html content="The axolotl comes with an anti-rollback feature. Google Android anti-roll back feature is supposedly a way to ensure you are running the latest software version, including the latest security patches.
<br><br>If you try installing a version of /e/OS based on a security patch that is older than the one on your device, you will brick your device. Click on `Details` below for detailed information<br>
<details>
<br>
To check the security patch level on your phone with a locked bootloader, prior to installing /e/OS, open your phone `Settings` >> `About Phone` >> `Android Version` >> `Android Security Patch Level`.Then compare it against the level of the security patch on the /e/OS build as visible in the Downloads for axolotl section below.
<br><br><strong>The following values control whether anti-rollback features are triggered on axolotl:</strong>
<br>
<br>* Rollback protection errors trigger if you install an update whose version number is `LESS` than the rollback index's value stored on device.
<br>* The value of rollback index is `UPDATED` to match `ro.build.version.security_patch`'s value of the currently installed version, but only if the bootloader is `LOCKED`.
<br>* The value of rollback index is `NOT` dependent on the currently installed `ANDROID VERSION`.
<br>* The value of rollback index can `NEVER` be `DOWNGRADED`.
<br>* Rollback protection errors are `FATAL` when the bootloader is `LOCKED`.
<br>* Rollback protection errors are `IGNORED` when the bootloader is `UNLOCKED`.
<br>
<br>
Here are some examples to help you understand how anti-rollback features work:
<br><br>
<strong>Example 1</strong>
<br>* Your axolotl with Google Android has a Security Patch Level saying June 5, 2022
<br>* The /e/OS build available says: /e/OS build : R stable (Security patch: 2022-05-05)
<br>* In this example, the /e/OS build has an older Security Patch level than the origin, so the anti-roll back protection will trigger, and you will brick your phone
<br>
<strong>Example 2</strong>
<br>* Your axolotl with Google Android has a Security Patch Level saying June 5, 2022.
<br>* The /e/OS build available says: /e/OS build : R stable (Security patch: 2022-06-05)
<br>* In this example, the /e/OS build has the same Security Patch level than the origin, so the anti-roll back protection will pass, and you will be able to install /e/OS with no issues.
<br>
<br>
<strong>Example 3</strong>
<br>* Your axolotl runs Google Android -R while /e/OS is now available based on AOSP -S.
<br>* Your axolotl with Google Android has a Security Patch Level saying 2022-10-03 or October 3rd, 2022.
<br>* The /e/OS build available says: /e/OS build : S stable (Security patch: 2022-06-05)
<br>* In this example, the /e/OS build has an older Security Patch level than the origin, so the anti-roll back protection will trigger, even if the /e/OS version runs on a more recent version of AOSP. In this example, you will brick your phone.