# DIY Install Use this path if you want to start from Raspberry Pi's official OS image and install GhostHub yourself. GhostHub's Pi install path targets: ```text Hardware: Raspberry Pi 4 Recommended OS image: 2022-01-28-raspios-bullseye-arm64-lite 32-bit fallback: 2022-01-28-raspios-bullseye-armhf-lite ``` Do not assume newer Raspberry Pi OS images are compatible unless a release explicitly says they have been tested. ## Download The Supported OS Download the supported 2022-01-28 Raspberry Pi OS Lite Bullseye image from Raspberry Pi's official archive: ```text Recommended: 2022-01-28-raspios-bullseye-arm64-lite https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64-lite.zip 32-bit fallback: 2022-01-28-raspios-bullseye-armhf-lite https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf-lite.zip ``` Optional checksum file: ```text https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64-lite.zip.sha256 https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf-lite.zip.sha256 ``` ## Flash With Raspberry Pi Imager Use Raspberry Pi Imager v1.8.5. Before writing the card, open advanced options and set: ```text Hostname: ghosthub Username: ghost Enable SSH: yes Password: choose your own ``` For the DIY installer, give the Pi network access over Ethernet. Plug it into your router, or connect it directly to your computer if you are sharing network access from that computer. Then boot the Pi. ## Option A: Install From GitHub Releases Use this to install the published GhostHub release assets directly on the Pi. SSH into the Pi from your computer. On macOS, Linux, or Windows PowerShell: ```bash ssh ghost@ghosthub.local ``` If `ghosthub.local` does not resolve, use the Pi's IP address: ```bash ssh ghost@ ``` If SSH refuses to connect with a host key warning, your computer may have an old key cached for `ghosthub.local` or that IP. Refresh it from your computer: ```bash ssh-keygen -R ghosthub.local ssh-keygen -R ``` After you are logged into the Pi, run the GhostHub release installer on the Pi: ```bash APP_TAG="$(curl -fsSL https://api.github.com/repos/BleedingXiko/GhostHub/releases \ | sed -n 's/.*"tag_name": "\(v[0-9][0-9.]*\)".*/\1/p' \ | head -n 1)" curl -L -o install_ghosthub.sh \ "https://github.com/BleedingXiko/GhostHub/releases/download/${APP_TAG}/install_ghosthub.sh" chmod +x install_ghosthub.sh sudo ./install_ghosthub.sh ``` ## Option B: Deploy Local Source With The CLI Use this when you cloned the repository on your computer and want the deploy CLI to build, upload, SSH, and install for you. On your computer, install: ```text Python 3.9 Node.js/npm ``` The deploy CLI creates `venv/`, installs Python requirements, installs `static/js` dependencies, builds the release ZIP, uploads it, and runs the Pi installer. Do not SSH into the Pi for this path. Run the CLI from the repository root on your computer. On macOS or Linux: ```bash ./scripts/deploy_to_pi.sh ``` On Windows PowerShell: ```powershell .\scripts\deploy_to_pi.ps1 ``` Deployment modes: - `Standard`: fresh local install from this repo. - `Update`: local update from this repo, preserving runtime state. - `Image Prep`: fresh local install, clear runtime state, then power off for SD image capture. If the deploy CLI cannot connect over SSH after reflashing the Pi, clear the old host key and try again: ```bash ssh-keygen -R ghosthub.local ssh-keygen -R ``` ## Open GhostHub After installation, open one of: ```text http://ghosthub.local http://192.168.4.1 http://:5000 ``` Plug in a USB drive with photos or videos. GhostHub discovers folders as categories and starts thumbnail/index work in the background.