/DietPi-Dashboard

A lightweight, standalone web dashboard for DietPi

Primary LanguageRustGNU General Public License v3.0GPL-3.0

DietPi-Dashboard

A web dashboard for DietPi

Installation

To install, use one of the precompiled releases, nightly builds or compile it yourself

Downloading

Release:

curl -fL "$(curl -sSf 'https://api.github.com/repos/ravenclaw900/DietPi-Dashboard/releases/latest' | mawk -F\" "/\"browser_download_url\": \".*dietpi-dashboard-$G_HW_ARCH_NAME\"/{print \$4}")" -o dietpi-dashboard # Download latest binary for current architecture
chmod +x dietpi-dashboard # Make binary executable
./dietpi-dashboard # Run binary

Nightly:

curl -fL "https://nightly.link/ravenclaw900/DietPi-Dashboard/workflows/push-build/main/dietpi-dashboard-$G_HW_ARCH_NAME.zip" -o dietpi-dashboard.zip # Download latest nightly build for current architecture
unzip dietpi-dashboard.zip # Unzip binary
rm dietpi-dashboard.zip # Remove archive
chmod +x dietpi-dashboard # Make binary executable
./dietpi-dashboard # Run binary

Compiling

Prereq:

dietpi-software install 9 16 17 # Install Node.js (webpage), Build-Essential (gcc), and Git (git clone), respectively
corepack enable # Enable pnpm package manager, for node dependencies
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Install Rust (backend)
source ~/.cargo/env # Update $PATH
cargo install just # Install just command runner, for build file

Compiling:

git clone https://github.com/ravenclaw900/DietPi-Dashboard # Download source code
cd DietPi-Dashboard # Change directories
cargo build --release # Compile binary for your platform
./target/release/dietpi-dashboard # Run binary

Note that there will be a difference between self-compiled binaries and the nightly/release builds. The nightly/release builds are statically linked with the musl libc implementation, while self-compiled binaries will be dynamically linked with glibc. This should not affect functionality in any way.

Open dashboard:

http://<your.IP>:5252