This commit is contained in:
Valeria Fadeeva 2026-08-06 21:50:58 +05:00
parent 5ce9543205
commit 4a6cfbf8d7
10 changed files with 552 additions and 332 deletions

View File

@ -629,8 +629,9 @@ to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found. the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.> melawy-plymouth-theme-fenek (fenek): Plymouth boot splash
Copyright (C) <year> <name of author> theme for Melawy OS.
Copyright (C) 2026 Valeria Fadeeva <valeria.fadeeva.me+melawy@gmail.com>
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published it under the terms of the GNU Affero General Public License as published

View File

@ -1,5 +1,14 @@
#!/bin/bash #!/bin/bash
./install.sh set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR/.."
echo "=== Installing theme ==="
bash install.sh
echo ""
echo "=== Starting Plymouth daemon (debug mode) ==="
echo "Press Ctrl+C to stop"
sudo plymouthd --debug --no-daemon --tty=/dev/tty7 sudo plymouthd --debug --no-daemon --tty=/dev/tty7

View File

@ -1,43 +1,62 @@
#!/bin/bash #!/bin/bash
set -e
echo "=== Plymouth Theme Test Script ==="
# --- Запуск ---
echo "[1] Showing splash..."
sudo plymouth --show-splash sudo plymouth --show-splash
echo "[2] Setting boot mode..."
sudo plymouth change-mode --boot-up sudo plymouth change-mode --boot-up
echo "[3] Setting normal status..."
sudo plymouth update --status="normal" sudo plymouth update --status="normal"
# --- Тест паузы прогресса ---
echo "[4] Testing progress pause/resume..."
sudo plymouth pause-progress sudo plymouth pause-progress
sudo plymouth message --text="pausing boot - press 'c' or space bar to continue" sudo plymouth message --text="pausing boot - press 'c' or space bar to continue"
sleep 2 sleep 2
# sudo plymouth watch-keystroke --keys="cC " --command="tee /tmp/c_key_pressed"
sudo plymouth message --text="resuming boot" sudo plymouth message --text="resuming boot"
sudo plymouth unpause-progress sudo plymouth unpause-progress
#sudo plymouth ask-question --prompt "what is your name? " | /usr/bin/tee # --- Тест запроса пароля ---
sudo plymouth ask-for-password --prompt "specify password: /dev/sda8: LABEL=\"Data\" UUID=\"2fd2a700-319b-41f2-853f-c57667d4081d\" UUID_SUB=\"62109da7-2b4b-4c2d-b590-1c0436c7c3a4\" PARTUUID=\"c05c942b-bd7e-487a-87a0-592df3334ff5\"" | /usr/bin/tee echo "[5] Testing password prompt..."
sudo plymouth ask-for-password \
--prompt "specify password: /dev/sda8: LABEL=\"Data\" UUID=\"2fd2a700-319b-41f2-853f-c57667d4081d\" UUID_SUB=\"62109da7-2b4b-4c2d-b590-1c0436c7c3a4\" PARTUUID=\"c05c942b-bd7e-487a-87a0-592df3334ff5\"" \
| /usr/bin/tee || true
#sudo plymouth message --text="Hello" sleep 1
sudo plymouth --update=fsck:sda1:0 sudo plymouth ask-for-password \
sudo plymouth --update=fsck:sda1:1 --prompt "specify password: /dev/sda8: LABEL=\"Data\" UUID=\"c57667d4081d-319b-41f2-853f-2fd2a700\" UUID_SUB=\"1c0436c7c3a4-2b4b-4c2d-b590-62109da7\" PARTUUID=\"592df3334ff5-bd7e-487a-87a0-c05c942b\"" \
sudo plymouth --update=fsck:sda1:2 | /usr/bin/tee || true
sudo plymouth --update=fsck:sda1:3
sudo plymouth --update=fsck:sda1:4
sudo plymouth --update=fsck:sda1:5
sudo plymouth --update=fsck:sda1:6
sudo plymouth --update=fsck:sda1:7
sudo plymouth --update=fsck:sda1:8
sudo plymouth --update=fsck:sda1:9
sudo plymouth --update=fsck:sda1:10
sudo plymouth --update=fsck:sda1:11
sudo plymouth --update=fsck:sda1:12
sudo plymouth --update=fsck:sda1:27
sudo plymouth --update=fsck:sda1:54
sudo plymouth --update=fsck:sda1:100
# Возвращаемся к нормальному режиму после пароля
sudo plymouth update --status="normal"
# --- Тест FSCK прогресса ---
echo "[6] Testing fsck progress (0→100%)..."
for pct in 0 1 2 3 4 5 6 7 8 9 10 11 12 27 54 100; do
sudo plymouth --update="fsck:sda1:$pct"
done
# --- Тест скроллящегося лога ---
END=50 END=50
echo "[7] Testing scroll log ($END lines)..."
for i in $(seq 1 $END); do for i in $(seq 1 $END); do
sudo plymouth --update="$i длинная_строка_предлинная_строка_прямоот_такая" sudo plymouth --update="$i длинная_строка_предлинная_строка_прямоот_такая"
sudo plymouth --update="$i long_str_long_strlong_str_long_strlong_str_long_str" sudo plymouth --update="$i long_str_long_strlong_str_long_strlong_str_long_str"
done done
# --- Ожидание и завершение ---
echo "[8] Waiting 5 seconds before quit..."
sleep 5 sleep 5
echo "[9] Quitting Plymouth..."
sudo plymouth --quit sudo plymouth --quit
echo ""
echo "=== Test complete ==="

View File

@ -11,9 +11,9 @@ fi
./make.sh ./make.sh
sudo rm -rf /usr/share/plymouth/themes/$THEME_NAME sudo rm -vrf /usr/share/plymouth/themes/$THEME_NAME
sudo mkdir -p /usr/share/plymouth/themes/$THEME_NAME sudo mkdir -p /usr/share/plymouth/themes/$THEME_NAME
sudo cp -r ../$THEME_NAME /usr/share/plymouth/themes/ sudo cp -vr ../$THEME_NAME /usr/share/plymouth/themes/
ls -plash /usr/share/plymouth/themes/$THEME_NAME ls -plash /usr/share/plymouth/themes/$THEME_NAME

View File

@ -2,18 +2,25 @@
THEME_NAME="melawy-fenek" THEME_NAME="melawy-fenek"
if [[ -n "$THEME_NAME" ]]; then if [[ -z "$THEME_NAME" ]]; then
echo "Non empty"
else
echo "Theme name is empty. Exit" echo "Theme name is empty. Exit"
exit exit 1
fi fi
cp -f script.js ../$THEME_NAME/script.script SRC="../$THEME_NAME/script.script"
sed -i 's/function/fun/g' ../$THEME_NAME/script.script DST="$SRC"
if [[ "$?" == 0 ]]; then if [[ ! -f "$SRC" ]]; then
echo "Make successed" echo "Theme script $SRC not found. Exit"
exit 1
fi
# Проверяем наличие script.script в теме (без конвертации из JS)
cp -f "$SRC" "$DST"
if [[ $? -eq 0 ]]; then
echo "Make succeeded: $DST updated from $SRC"
else else
echo "Make failed?" echo "Make failed!"
exit 1
fi fi

56
dev/test_quick.sh Executable file
View File

@ -0,0 +1,56 @@
#!/bin/bash
#
# Быстрый режим тестирования Plymouth-темы БЕЗ пересборки initramfs
# Просто копирует файлы и запускает демон для интерактивного тестирования
#
# Использование:
# Окно 1: ./test_quick.sh (запуск демона)
# Окно 2: ./d1.sh (тестовые команды)
#
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$SCRIPT_DIR/.."
THEME_NAME="melawy-fenek"
THEME_PATH="/usr/share/plymouth/themes/$THEME_NAME"
echo "============================================"
echo " Быстрое тестирование Plymouth-темы"
echo " Тема: $THEME_NAME"
echo "============================================"
echo ""
# --- Проверка прав ---
if [[ "$UID" != 0 ]]; then
echo "[!] Требуется root, перезапуск через sudo..."
exec sudo "$0" "$@"
fi
# --- Копирование файлов ---
echo "[1] Копирование темы в $THEME_PATH ..."
mkdir -p "$THEME_PATH"
cp -vrf --remove-destination --no-dereference --preserve=links \
"$PROJECT_DIR/$THEME_NAME/." "$THEME_PATH/."
echo " ✓ Файлы скопированы"
# --- Установка темы по умолчанию (без -R = без пересборки initramfs!) ---
echo "[2] Установка темы по умолчанию (БЕЗ пересборки initramfs)..."
plymouth-set-default-theme "$THEME_NAME"
echo " ✓ Тема установлена"
echo ""
echo "============================================"
echo " Запуск Plymouth daemon (debug mode)"
echo " В ДРУГОМ ОКНЕ выполните:"
echo " cd $(dirname "$0")"
echo " bash d1.sh"
echo ""
echo " Нажмите Ctrl+C для остановки"
echo "============================================"
echo ""
sleep 2
# --- Запуск демона ---
exec sudo plymouthd --debug --no-daemon --tty=/dev/tty7

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

After

Width:  |  Height:  |  Size: 26 KiB

BIN
melawy-fenek/MAIN_LOGO_.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because it is too large Load Diff