#!/bin/bash
# Nodalt · installation de la bêta / beta installer — https://nodalt.visualt.fr/install
# Télécharge Nodalt, le range dans Applications et l'ouvre. Downloads Nodalt, moves it to Applications and opens it.
set -euo pipefail
URL="https://nodalt.visualt.fr/download"
SHA="2b062d7f5ab9d47bf5bf0b978f70ecbc57c5ab8f421775bbaf71e15aeb91c689"
say() { printf '\n\033[1m%s\033[0m\n' "$1"; }
say "Nodalt · beta"
[ "$(uname -m)" = "arm64" ] || { echo "Nodalt a besoin d'un Mac à puce Apple (M1 ou plus récent). / Nodalt needs an Apple silicon Mac (M1 or later)."; exit 1; }
[ "$(sw_vers -productVersion | cut -d. -f1)" -ge 14 ] || { echo "Nodalt a besoin de macOS 14 ou plus récent. / Nodalt needs macOS 14 or later."; exit 1; }
TMP="$(mktemp -d)"; trap 'rm -rf "$TMP"' EXIT
say "Téléchargement… / Downloading…"
curl -fL --progress-bar -o "$TMP/Nodalt.dmg" "$URL"
if [ -n "$SHA" ] && [ "$(shasum -a 256 "$TMP/Nodalt.dmg" | cut -d' ' -f1)" != "$SHA" ]; then
  echo "Le fichier téléchargé est incomplet ou modifié : rien n'a été installé. / The download is incomplete or altered: nothing was installed."; exit 1
fi
hdiutil attach -nobrowse -readonly -noautoopen -quiet -mountpoint "$TMP/x" "$TMP/Nodalt.dmg"
trap 'hdiutil detach -quiet "$TMP/x" 2>/dev/null; rm -rf "$TMP"' EXIT
DEST="/Applications"; [ -w "$DEST" ] || { DEST="$HOME/Applications"; mkdir -p "$DEST"; }
pkill -f "$DEST/Nodalt.app/Contents/MacOS/" 2>/dev/null || true
rm -rf "$DEST/Nodalt.app"
ditto "$TMP/x/Nodalt.app" "$DEST/Nodalt.app"
xattr -dr com.apple.quarantine "$DEST/Nodalt.app" 2>/dev/null || true
say "Nodalt est installé dans $DEST. / Nodalt is installed in $DEST."
open "$DEST/Nodalt.app"
