Enhance install-service.sh with Java version checks and installation instructions; update Russian translations in resource packs for improved localization of item names and descriptions.
This commit is contained in:
@@ -125,6 +125,49 @@ fi
|
|||||||
|
|
||||||
chmod +x "${SERVER_DIR}/start.sh" "${SERVER_DIR}/run.sh" 2>/dev/null || true
|
chmod +x "${SERVER_DIR}/start.sh" "${SERVER_DIR}/run.sh" 2>/dev/null || true
|
||||||
|
|
||||||
|
# 3c. Проверка Java. start.sh иначе попытается интерактивно поставить
|
||||||
|
# Jabba и упадёт в systemd с "User did not agree to Jabba installation".
|
||||||
|
REQUIRED_JAVA_VERSION="$(grep -E '^RECOMMENDED_JAVA_VERSION=' "${SERVER_DIR}/variables.txt" 2>/dev/null \
|
||||||
|
| cut -d= -f2 | tr -d '"' | head -n1)"
|
||||||
|
REQUIRED_JAVA_VERSION="${REQUIRED_JAVA_VERSION:-21}"
|
||||||
|
|
||||||
|
if ! command -v java >/dev/null 2>&1; then
|
||||||
|
cat >&2 <<EOF
|
||||||
|
|
||||||
|
============================ ВНИМАНИЕ ============================
|
||||||
|
В системе не найдена команда 'java'. start.sh попытается поставить
|
||||||
|
её через Jabba, но Jabba требует интерактивного 'I agree', которого
|
||||||
|
в systemd нет. Сервис будет бесконечно перезапускаться.
|
||||||
|
|
||||||
|
Установите Java ${REQUIRED_JAVA_VERSION} системно перед запуском:
|
||||||
|
|
||||||
|
# Debian/Ubuntu (родной пакет, если доступен):
|
||||||
|
sudo apt update && sudo apt install -y openjdk-${REQUIRED_JAVA_VERSION}-jre-headless
|
||||||
|
|
||||||
|
# Альтернатива — Temurin от Adoptium:
|
||||||
|
sudo apt install -y wget gnupg ca-certificates
|
||||||
|
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public \\
|
||||||
|
| sudo gpg --dearmor -o /usr/share/keyrings/adoptium.gpg
|
||||||
|
echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb \$(. /etc/os-release && echo \$VERSION_CODENAME) main" \\
|
||||||
|
| sudo tee /etc/apt/sources.list.d/adoptium.list
|
||||||
|
sudo apt update && sudo apt install -y temurin-${REQUIRED_JAVA_VERSION}-jre
|
||||||
|
|
||||||
|
После установки запустите этот скрипт повторно.
|
||||||
|
====================================================================
|
||||||
|
|
||||||
|
EOF
|
||||||
|
err "java не найдена в PATH. Установите Java ${REQUIRED_JAVA_VERSION} и повторите."
|
||||||
|
fi
|
||||||
|
|
||||||
|
JAVA_MAJOR="$(java -version 2>&1 | awk -F\" '/version/ {print $2}' | cut -d. -f1)"
|
||||||
|
if [[ "${JAVA_MAJOR}" == "1" ]]; then
|
||||||
|
JAVA_MAJOR="$(java -version 2>&1 | awk -F\" '/version/ {print $2}' | cut -d. -f2)"
|
||||||
|
fi
|
||||||
|
if [[ "${JAVA_MAJOR}" != "${REQUIRED_JAVA_VERSION}" ]]; then
|
||||||
|
echo ">> ВНИМАНИЕ: установлена Java ${JAVA_MAJOR}, ожидалась ${REQUIRED_JAVA_VERSION}." >&2
|
||||||
|
echo " Сервер может не стартовать. Рекомендуется поставить openjdk-${REQUIRED_JAVA_VERSION}-jre-headless." >&2
|
||||||
|
fi
|
||||||
|
|
||||||
# 4. Создание пользователя при необходимости
|
# 4. Создание пользователя при необходимости
|
||||||
if ! id -u "${SERVICE_USER}" >/dev/null 2>&1; then
|
if ! id -u "${SERVICE_USER}" >/dev/null 2>&1; then
|
||||||
echo ">> Создаю системного пользователя ${SERVICE_USER}..."
|
echo ">> Создаю системного пользователя ${SERVICE_USER}..."
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"example_mod.configuration.client": "client",
|
"example_mod.configuration.client": "клиент",
|
||||||
"example_mod.configuration.example": "example"
|
"example_mod.configuration.example": "пример"
|
||||||
}
|
}
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
"item.integrated_stronghold.music_disc_sight": "Пластинка",
|
"item.integrated_stronghold.music_disc_sight": "Пластинка",
|
||||||
"item.integrated_stronghold.music_disc_sight.desc": "Cama - sight",
|
"item.integrated_stronghold.music_disc_sight.desc": "Cama - Sight",
|
||||||
"item.integrated_stronghold.music_disc_forlorn": "Пластинка",
|
"item.integrated_stronghold.music_disc_forlorn": "Пластинка",
|
||||||
"item.integrated_stronghold.music_disc_forlorn.desc": "Cama - Forlorn",
|
"item.integrated_stronghold.music_disc_forlorn.desc": "Cama - Forlorn",
|
||||||
"jukebox_song.integrated_stronghold.sight": "Cama - sight",
|
"jukebox_song.integrated_stronghold.sight": "Cama - Sight",
|
||||||
"jukebox_song.integrated_stronghold.forlorn": "Cama - Forlorn",
|
"jukebox_song.integrated_stronghold.forlorn": "Cama - Forlorn",
|
||||||
"item.integrated_stronghold.disc_fragment_sight": "Фрагмент пластинки",
|
"item.integrated_stronghold.disc_fragment_sight": "Фрагмент пластинки",
|
||||||
"item.integrated_stronghold.disc_fragment_sight.desc": "Пластинка - sight",
|
"item.integrated_stronghold.disc_fragment_sight.desc": "Пластинка — Sight",
|
||||||
"itemGroup.integrated_stronghold": "Integrated Stronghold"
|
"itemGroup.integrated_stronghold": "Интегрированная крепость"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"simplytooltips.key.category": "Simply Tooltips",
|
"simplytooltips.key.category": "Простые подсказки",
|
||||||
"key.simplytooltips.cycle_tab": "Переключить вкладку подсказки",
|
"key.simplytooltips.cycle_tab": "Переключить вкладку подсказки",
|
||||||
"key.simplytooltips.capture_gif": "Записать GIF подсказки"
|
"key.simplytooltips.capture_gif": "Записать GIF подсказки"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user