# Umbrel

### Install umbrelOS on a Raspberry Pi 5

<div class="mt-2 mt-md-1 pb-3 gh-header-meta" id="bkmrk-mayank-chhabra-edite">Mayank Chhabra edited this page on Mar 5 · [14 revisions](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5/_history)</div><svg aria-hidden="true" class="octicon octicon-info mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note

umbrelOS is designed for the [Umbrel Home](https://umbrel.com/umbrel-home). Support for other devices is best-effort and not guaranteed. Some features like external storage support and Migration Assistant are not available - see our [feature comparison](https://github.com/getumbrel/umbrel/wiki/umbrelOS-on-Umbrel-Home-vs.-DIY) for more details.

umbrelOS can be installed on a Raspberry Pi 5 in a number of configurations. The two most common are:

<div class="mt-4" id="bkmrk-recommended%3A%C2%A0install"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body">1. **Recommended:** [Installing umbrelOS on the NVMe or USB drive](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#installing-umbrelos-on-the-nvme-or-usb-drive)
2. **Not recommended:** [Installing umbrelOS on a microSD card and using an external SSD for storage](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#installing-umbrelos-on-a-microsd-card-and-using-an-external-ssd-for-storage)

<div class="markdown-heading">  
</div></div></div></div></div></div>### Installing umbrelOS on the NVMe or USB drive

<div class="mt-4" id="bkmrk-"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#installing-umbrelos-on-the-nvme-or-usb-drive)</div></div></div></div></div></div>In this configuration, you will install umbrelOS directly on an NVMe drive or USB drive, which will be automatically partitioned to store umbrelOS and your data.

<svg aria-hidden="true" class="octicon octicon-info mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note

Booting from NVMe or USB instead of a microSD card is only supported on Raspberry Pi 5 for umbrelOS 1.2.0 and later. Booting from NVMe or USB is not supported on Raspberry Pi 4. Additionally, certain NVMe drives may not be compatible with specific NVMe HATs. It is crucial to check the compatibility of your NVMe drive with the HAT you are using before proceeding. HAT manufacturers typically provide lists of compatible drives and known quality issues on their websites. Using a drive not on the compatible list may result in instability or failure to boot. Also, make sure to check the quality of your NVMe SSD, as some drives are of poor quality or have reported issues that could affect performance and reliability.

#### What you will need

<div class="mt-4" id="bkmrk-raspberry-pi-5-offic"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#what-you-will-need)</div>- Raspberry Pi 5
- Official Raspberry Pi power supply
- Ethernet cable
- Either an NVMe drive + HAT or USB drive (depending on your preference)

<div class="markdown-heading">  
</div></div></div></div></div></div>#### Steps

<div class="mt-4" id="bkmrk--3"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#steps)</div><div class="markdown-alert markdown-alert-tip">  
</div></div></div></div></div></div><svg aria-hidden="true" class="octicon octicon-light-bulb mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path></svg>Tip

If you have an early Raspberry Pi 5 model, you may need to update the bootloader firmware in order to be able to boot from NVMe. If this is the case, please follow the official Raspberry Pi documentation on how to update the bootloader firmware: [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#bootloader\_update\_stable](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#bootloader_update_stable)

<div class="mt-4" id="bkmrk-download-the-latest%C2%A0"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-alert markdown-alert-tip">  
</div>1. Download the latest [umbrelOS image](https://download.umbrel.com/release/latest/umbrelos-pi5.img.zip) for Rasberry Pi 5.
2. Download [Balena Etcher](https://etcher.balena.io/) on your computer. It is required to flash the umbrelOS image that you downloaded in the previous step to your NVMe or USB drive.
3. Attach your NVMe drive or USB drive to your computer. For the NVMe drive, you will need to use a USB adapter to connect it to your computer.
4. Flash the umbrelOS image to your NVMe drive or USB drive using Balena Etcher. Once the flashing process is complete, safely eject the drive from your computer.
5. Attach the NVMe drive or USB drive to your Raspberry Pi 5.
6. Connect your Raspberry Pi 5 to your network using an Ethernet cable.
7. Power on your Raspberry Pi 5 using the official Raspberry Pi power supply. Third-party power supplies often cannot deliver the required current or maintain a stable voltage, leading to system instability, microSD card corruption, and corruption or data loss on connected hard drives.
8. And that's it! Wait for a few minutes for umbrelOS to boot up. You can access umbrelOS by navigating to [http://umbrel.local](http://umbrel.local/) on any device connected to the same network.

<div class="markdown-alert markdown-alert-warning">  
</div></div></div></div></div></div><svg aria-hidden="true" class="octicon octicon-alert mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg>Warning

The boot order on your Raspberry Pi 5 is set to boot from a microSD card preferentially before booting from NVMe or USB. Make sure that you do not have a bootable microSD card inserted when booting from NVMe or USB. If you have a microSD card inserted, the Raspberry Pi 5 will boot from the microSD card instead of the NVMe or USB drive.

<div class="mt-4" id="bkmrk--5"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-alert markdown-alert-warning">  
</div>---

<div class="markdown-heading">  
</div></div></div></div></div></div>### Installing umbrelOS on a microSD card and using an external SSD for storage

<div class="mt-4" id="bkmrk--6"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#installing-umbrelos-on-a-microsd-card-and-using-an-external-ssd-for-storage)</div><div class="markdown-alert markdown-alert-warning">  
</div></div></div></div></div></div><svg aria-hidden="true" class="octicon octicon-alert mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg>Warning

Installing umbrelOS on a microSD card is not recommended primarily because microSD cards have a limited number of write cycles. Over time, frequent read and write operations can cause the microSD card to wear out and fail, leading to system instability, data corruption, and potential data loss. Also, microSD cards generally offer lower performance and durability compared to NVMe or USB drives, which are better suited for the continuous operation required by umbrelOS. For a more reliable and long-lasting setup, it is advisable to boot from NVMe or USB storage.

In this configuration, you will install umbrelOS on a microSD card and then use a separate external SSD to store your data.

#### What you will need

<div class="mt-4" id="bkmrk-raspberry-pi-5-offic-1"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#what-you-will-need-1)</div>- Raspberry Pi 5
- Official Raspberry Pi power supply
- Ethernet cable
- microSD card (32GB or larger)
- External SSD

<div class="markdown-heading">  
</div></div></div></div></div></div>#### Steps

<div class="mt-4" id="bkmrk-download-the-latest%C2%A0-1"><div class="Layout Layout--flowRow-until-md Layout--sidebarPosition-end Layout--sidebarPosition-flowRow-end" data-view-component="true"><div class="Layout-main" data-view-component="true"><div class="gollum-markdown-content" id="bkmrk-download-the-latest%C2%A0-2"><div class="markdown-body"><div class="markdown-heading">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel/wiki/Install-umbrelOS-on-a-Raspberry-Pi-5#steps-1)</div>1. Download the latest [umbrelOS image](https://download.umbrel.com/release/latest/umbrelos-pi5.img.zip) for Rasberry Pi 5.
2. Download [Balena Etcher](https://etcher.balena.io/) on your computer. It is required to flash the umbrelOS image that you downloaded in the previous step to your microSD card.
3. Attach your microSD card to your computer (you may need a microSD card reader).
4. Flash the umbrelOS image to your microSD card using Balena Etcher. Once the flashing process is complete, safely eject the card from your computer.
5. Insert the microSD card into your Raspberry Pi 5.
6. Attach your external SSD to your Raspberry Pi 5 using an available USB port.
7. Connect your Raspberry Pi 5 to your network using an Ethernet cable.
8. Power on your Raspberry Pi 5 using the official Raspberry Pi power supply. Third-party power supplies often cannot deliver the required current or maintain a stable voltage, leading to system instability, microSD card corruption, and corruption or data loss on connected hard drives.
9. And that's it! Wait for a few minutes for umbrelOS to boot up. You can access umbrelOS by navigating to [http://umbrel.local](http://umbrel.local/) on any device connected to the same network.

</div></div></div></div></div>
### Installieren von Apps über Comandline

#### 3.1 Test using an umbrelOS development environment on your local machine

<div class="markdown-heading" dir="auto" id="bkmrk--10">[<svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z"></path></svg>](https://github.com/getumbrel/umbrel-apps/blob/master/README.md#31-test-using-an-umbrelos-development-environment-on-your-local-machine)</div>The umbrelOS development environment (umbrel-dev) requires a Docker environment that exposes container IPs to the host. This is how Docker natively works on Linux and can be done with OrbStack on macOS and WSL 2 on Windows.

1\. Install [OrbStack](https://orbstack.dev/) on macOS or [WSL 2](https://learn.microsoft.com/en-us/windows/wsl/install) with Docker Desktop on Windows.

2\. Clone the [getumbrel/umbrel](https://github.com/getumbrel/umbrel) repo.

From the root of the cloned repo, run the following command to view the available umbrel-dev commands:

```
npm run dev help
```

<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" id="bkmrk--12"><div class="zeroclipboard-container"><svg aria-hidden="true" class="octicon octicon-copy js-clipboard-copy-icon" data-view-component="true" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg></div></div>To start the development environment, run the following command:

```
npm run dev
```

<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" id="bkmrk--13"><div class="zeroclipboard-container"><svg aria-hidden="true" class="octicon octicon-copy js-clipboard-copy-icon" data-view-component="true" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg></div></div><svg aria-hidden="true" class="octicon octicon-info mr-2" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note

If this is your first time running the development environment, it may take a while to build the OS image locally on your machine.

Once initialized, umbrelOS will be accessible at [http://umbrel-dev.local](http://umbrel-dev.local/).

3\. Copy the app's directory (with any .gitkeep files excluded) to the app-store directory on umbrel-dev.

To do this, we run the following command on our local machine:

```
rsync -av --exclude=".gitkeep" <path-to-your-forked-repo-on-local-machine>/btc-rpc-explorer umbrel@umbrel-dev.local:/home/umbrel/umbrel/app-stores/getumbrel-umbrel-apps-github-53f74447/
```

<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" id="bkmrk--14"><div class="zeroclipboard-container"><svg aria-hidden="true" class="octicon octicon-copy js-clipboard-copy-icon" data-view-component="true" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg></div></div>If you are asked for a password during the transfer, use the password that you set when you created your umbrelOS account.

4\. Install the app.

From the umbrelOS homescreen, go to the App Store and navigate to BTC RPC Explorer. Click on the "Install" button and wait for the app to install.

You can also install the app from the command line. umbrelOS provides a web terminal that can be accessed via Settings &gt; Advanced Settings &gt; Terminal &gt; umbrelOS, or you can use the umbrel-dev scripts to install the app using the umbreld RPC server:

```
npm run dev client -- apps.install.mutate -- --appId btc-rpc-explorer
```

```
umbreld client apps.uninstall.mutate --appId plex # zum installeren auf dem Umbrel 
```

<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" id="bkmrk--15"><div class="zeroclipboard-container"><svg aria-hidden="true" class="octicon octicon-copy js-clipboard-copy-icon" data-view-component="true" height="16" version="1.1" viewbox="0 0 16 16" width="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg></div></div>That's it! Our BTC RPC Explorer app should now be accessible at [http://umbrel-dev.local:3002](http://umbrel-dev.local:3002/)

To uninstall the app, you can right-click on the app's icon on your homescreen and click on the "Uninstall" button. You can also uninstall the app using the umbrel-dev scripts:

```
npm run dev client -- apps.uninstall.mutate -- --appId btc-rpc-explorer
```

## Veraltet und wohl aus früheren Versionen

<span style="color: rgb(224, 62, 45);">Can you try again to install manually: </span>

<span style="color: rgb(224, 62, 45);">~/umbrel/scripts/app uninstall tailscale</span>

<span style="color: rgb(224, 62, 45);">Then</span>

<span style="color: rgb(224, 62, 45);">~/umbrel/scripts/app install tailscale</span>

<span style="color: rgb(224, 62, 45);">You can replace the name of the app as it's listed here: https://github.com/getumbrel/umbrel-apps/tree/master</span>

<span style="color: rgb(224, 62, 45);">Let me know if any issue</span>