Add install.sh and update README
This commit is contained in:
@@ -1,16 +1,19 @@
|
||||
# nas-scripts
|
||||
# nas-ops
|
||||
|
||||
Scripts de gestion des mises à jour pour NAS sous OpenMediaVault 8.
|
||||
Scripts de maintenance et de mise à jour pour NAS sous Debian / OpenMediaVault 8.
|
||||
|
||||
Gère les mises à jour système (`apt`) et Docker (`docker compose`), avec deux modes :
|
||||
- **Terminal interactif** : affichage coloré, confirmations
|
||||
- **Non-interactif** (Home Assistant, cron) : output JSON
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
cp nas-update-system nas-upgrade-system nas-docker-pull nas-docker-up nas-docker-prune nas-update /usr/local/bin/
|
||||
chmod +x /usr/local/bin/nas-update-system /usr/local/bin/nas-upgrade-system \
|
||||
/usr/local/bin/nas-docker-pull /usr/local/bin/nas-docker-up \
|
||||
/usr/local/bin/nas-docker-prune /usr/local/bin/nas-update
|
||||
curl -fsSL https://raw.githubusercontent.com/GuiPoM/nas-ops/main/install.sh | bash
|
||||
```
|
||||
|
||||
Les scripts sont installés dans `/usr/local/bin/` et disponibles directement en ligne de commande.
|
||||
|
||||
## Scripts
|
||||
|
||||
### `nas-update`
|
||||
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
#!/bin/bash
|
||||
# install.sh — Install nas-ops scripts to /usr/local/bin
|
||||
# Usage : curl -fsSL https://raw.githubusercontent.com/GuiPoM/nas-ops/main/install.sh | bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
REPO="GuiPoM/nas-ops"
|
||||
BRANCH="main"
|
||||
BASE_URL="https://raw.githubusercontent.com/${REPO}/${BRANCH}"
|
||||
INSTALL_DIR="/usr/local/bin"
|
||||
|
||||
SCRIPTS=(
|
||||
"nas-update-system"
|
||||
"nas-upgrade-system"
|
||||
"nas-docker-pull"
|
||||
"nas-docker-up"
|
||||
"nas-docker-prune"
|
||||
"nas-update"
|
||||
)
|
||||
|
||||
# Colors
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
CYAN='\033[0;36m'
|
||||
BOLD='\033[1m'
|
||||
RESET='\033[0m'
|
||||
|
||||
echo -e "${BOLD}======================================${RESET}"
|
||||
echo -e "${BOLD} nas-ops — Installer ${RESET}"
|
||||
echo -e "${BOLD}======================================${RESET}"
|
||||
echo ""
|
||||
|
||||
# Check root
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo -e "${RED}Error: this script must be run as root.${RESET}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check dependencies
|
||||
echo -e "${CYAN}Checking dependencies...${RESET}"
|
||||
for cmd in curl docker; do
|
||||
if command -v "$cmd" > /dev/null 2>&1; then
|
||||
echo -e " ${GREEN}✅ ${cmd}${RESET}"
|
||||
else
|
||||
echo -e " ${YELLOW}⚠ ${cmd} not found — some scripts may not work${RESET}"
|
||||
fi
|
||||
done
|
||||
echo ""
|
||||
|
||||
# Download and install scripts
|
||||
echo -e "${CYAN}Installing scripts to ${INSTALL_DIR}...${RESET}"
|
||||
for script in "${SCRIPTS[@]}"; do
|
||||
echo -ne " Downloading ${script}... "
|
||||
if curl -fsSL "${BASE_URL}/${script}" -o "${INSTALL_DIR}/${script}"; then
|
||||
chmod +x "${INSTALL_DIR}/${script}"
|
||||
echo -e "${GREEN}✅${RESET}"
|
||||
else
|
||||
echo -e "${RED}❌ Failed${RESET}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo -e "${GREEN}✅ Installation complete.${RESET}"
|
||||
echo ""
|
||||
echo -e "Available commands:"
|
||||
for script in "${SCRIPTS[@]}"; do
|
||||
echo -e " ${CYAN}${script}${RESET}"
|
||||
done
|
||||
echo ""
|
||||
echo -e "Run ${BOLD}nas-update${RESET} to get started."
|
||||
Reference in New Issue
Block a user