Add new script to create Synology VM

This commit is contained in:
MacRimi 2025-03-23 17:50:33 +01:00
parent addc17a52a
commit cd4468cae8
4 changed files with 1198 additions and 6 deletions

View File

@ -845,5 +845,41 @@
"de": "Netzwerk überprüfen",
"it": "Verificare rete",
"pt": "Verificar rede"
},
"Next Steps:": {
"es": "Próximos pasos:",
"fr": "Étapes suivantes :",
"de": "Nächste Schritte:",
"it": "Prossimi passaggi:"
},
"Start the VM": {
"es": "Iniciar la VM",
"fr": "Démarrer la machine virtuelle",
"de": "Die VM starten",
"it": "Avvia la VM"
},
"Open the VM console and wait for the loader to boot": {
"es": "Abre la consola de la VM y espera a que cargue el cargador",
"fr": "Ouvrez la console de la VM et attendez que le chargeur démarre",
"de": "Öffnen Sie die VM-Konsole und warten Sie, bis der Loader startet",
"it": "Apri la console della VM e attendi l'avvio del caricatore"
},
"In the loader interface, follow the instructions to select your Synology model": {
"es": "En la interfaz del cargador, sigue las instrucciones para seleccionar tu modelo de Synology DSM",
"fr": "Dans l'interface du chargeur, suivez les instructions pour sélectionner votre modèle Synology DSM",
"de": "In der Ladeoberfläche folgen Sie den Anweisungen, um Ihr Synology DSM-Modell auszuwählen",
"it": "Nell'interfaccia del caricatore, segui le istruzioni per selezionare il modello di Synology DSM"
},
"Complete the DSM installation wizard": {
"es": "Completa el asistente de instalación de DSM",
"fr": "Complétez l'assistant d'installation de DSM",
"de": "Vervollständigen Sie den DSM-Installationsassistenten",
"it": "Completa la procedura guidata di installazione DSM"
},
"Find your device using https://finds.synology.com": {
"es": "Encuentra tu dispositivo en https://finds.synology.com",
"fr": "Trouvez votre appareil en utilisant https://finds.synology.com",
"de": "Finden Sie Ihr Gerät unter https://finds.synology.com",
"it": "Trova il tuo dispositivo usando https://finds.synology.com"
}
}

View File

@ -0,0 +1,50 @@
#!/bin/bash
# ==========================================================
# ProxMenu - VM Creation Menu
# ==========================================================
# Author : MacRimi
# Copyright : (c) 2024 MacRimi
# License : MIT (https://raw.githubusercontent.com/MacRimi/ProxMenux/main/LICENSE)
# Version : 1.0
# Last Updated: 28/01/2025
# ==========================================================
# Configuration ============================================
REPO_URL="https://raw.githubusercontent.com/MacRimi/ProxMenux/main"
BASE_DIR="/usr/local/share/proxmenux"
UTILS_FILE="$BASE_DIR/utils.sh"
VENV_PATH="/opt/googletrans-env"
if [[ -f "$UTILS_FILE" ]]; then
source "$UTILS_FILE"
fi
load_language
initialize_cache
# ==========================================================
show_proxmenux_logo
while true; do
OPTION=$(whiptail --title "$(translate "Create VM Menu")" --menu "$(translate "Select a VM template to create:")" 18 70 5 \
"1" "$(translate "Synology DSM Virtual Machine")" \
"2" "$(translate "Return to Main Menu")" 3>&1 1>&2 2>&3)
case $OPTION in
1)
msg_info2 "$(translate "Running script:") $(translate "Synology DSM VM Creator")..."
bash <(curl -s "$REPO_URL/scripts/vm/synology.sh")
if [ $? -ne 0 ]; then
msg_warn "$(translate "Operation cancelled or failed.")"
sleep 2
fi
;;
2)
exec bash <(curl -s "$REPO_URL/scripts/menus/main_menu.sh")
;;
*)
exec bash <(curl -s "$REPO_URL/scripts/menus/main_menu.sh")
;;
esac
done

View File

@ -28,15 +28,16 @@ initialize_cache
show_menu() {
while true; do
OPTION=$(whiptail --title "$(translate "Main ProxMenux")" --menu "$(translate "Select an option:")" 20 70 8 \
while true; do
OPTION=$(whiptail --title "$(translate "Main ProxMenux")" --menu "$(translate "Select an option:")" 22 70 9 \
"1" "$(translate "Settings post-install Proxmox")" \
"2" "$(translate "Hardware: GPUs and Coral-TPU")" \
"3" "$(translate "Hard Drives, Disk Images, and Storage")" \
"4" "$(translate "Essential Proxmox VE Helper-Scripts")" \
"5" "$(translate "Network")" \
"6" "$(translate "Settings")" \
"7" "$(translate "Exit")" 3>&1 1>&2 2>&3)
"6" "$(translate "Create VM from template or script")" \
"7" "$(translate "Settings")" \
"8" "$(translate "Exit")" 3>&1 1>&2 2>&3)
@ -46,8 +47,9 @@ show_menu() {
3) exec bash <(curl -s "$REPO_URL/scripts/menus/storage_menu.sh") ;;
4) exec bash <(curl -s "$REPO_URL/scripts/menus/menu_Helper_Scripts.sh") ;;
5) exec bash <(curl -s "$REPO_URL/scripts/repair_network.sh") ;;
6) exec bash <(curl -s "$REPO_URL/scripts/menus/config_menu.sh") ;;
7) clear; msg_ok "$(translate "Thank you for using ProxMenu. Goodbye!")"; exit 0 ;;
6) exec bash <(curl -s "$REPO_URL/scripts/menus/create_vm_menu.sh") ;;
7) exec bash <(curl -s "$REPO_URL/scripts/menus/config_menu.sh") ;;
8) clear; msg_ok "$(translate "Thank you for using ProxMenu. Goodbye!")"; exit 0 ;;
*) msg_warn "$(translate "Invalid option")"; sleep 2 ;;
esac

1104
scripts/vm/synology.sh Normal file

File diff suppressed because it is too large Load Diff