Финальное исправление иконок в оформлении

This commit is contained in:
2026-05-06 14:21:09 +03:00
parent 7001aeb070
commit 418f12ca4a
8 changed files with 66 additions and 53 deletions

View File

@@ -1,4 +1,4 @@
.PHONY: all clean build-mac build-windows build-linux build-linux-musl package help quick package-single setup icons favicon windows-icon
.PHONY: all clean build-mac build-windows build-linux build-linux-musl package help quick package-single icons
# Название проекта
PROJECT_NAME := ae_anons
@@ -26,11 +26,6 @@ TIMING_FILE := .build_timing
# Определение команды ImageMagick (v6 = convert, v7 = magick)
IMAGEMAGICK := $(shell command -v magick 2>/dev/null || command -v convert 2>/dev/null || echo "false")
# Параметры Font Awesome
FONTAWESOME_VERSION := 6.4.0
FONTAWESOME_CSS_URL := https://cdnjs.cloudflare.com/ajax/libs/font-awesome/$(FONTAWESOME_VERSION)/css/all.min.css
FONTAWESOME_FONTS_URL := https://cdnjs.cloudflare.com/ajax/libs/font-awesome/$(FONTAWESOME_VERSION)/webfonts
help:
@echo "$(BOLD)$(CYAN)AE Anons - Makefile команды$(NC)"
@echo ""
@@ -50,7 +45,8 @@ help:
@echo " make package-single - Создать пакет для текущей платформы"
@echo ""
@echo "$(GREEN)Подготовка ресурсов:$(NC)"
@echo " make setup - Загрузить и подготовить все статические ресурсы"
@echo " make setup - Подготовить иконки (логотипы, favicon)"
@echo " make setup-fontawesome-manual - Скачать и исправить all.min.css (если удалён)"
@echo ""
@echo "$(GREEN)Очистка:$(NC)"
@echo " make clean - Очистить все сборки"
@@ -103,30 +99,12 @@ define print_timing_summary
endef
# ============================================
# ПОДГОТОВКА СТАТИЧЕСКИХ РЕСУРСОВ
# ПОДГОТОВКА РЕСУРСОВ
# ============================================
setup: setup-fontawesome icons
setup: icons
@echo "$(GREEN)Все статические ресурсы подготовлены$(NC)"
# Скачивает и подготавливает Font Awesome, если его ещё нет
setup-fontawesome:
@echo "$(GREEN)📦 Проверка Font Awesome...$(NC)"
@if [ ! -f src/static/fontawesome/all.min.css ]; then \
echo "$(YELLOW) Скачивание all.min.css и шрифтов...$(NC)"; \
mkdir -p src/static/fontawesome/webfonts; \
curl -sL -o src/static/fontawesome/all.min.css $(FONTAWESOME_CSS_URL); \
curl -sL -o src/static/fontawesome/webfonts/fa-solid-900.woff2 $(FONTAWESOME_FONTS_URL)/fa-solid-900.woff2; \
curl -sL -o src/static/fontawesome/webfonts/fa-regular-400.woff2 $(FONTAWESOME_FONTS_URL)/fa-regular-400.woff2; \
curl -sL -o src/static/fontawesome/webfonts/fa-brands-400.woff2 $(FONTAWESOME_FONTS_URL)/fa-brands-400.woff2; \
echo "$(GREEN) ✓ Font Awesome скачан$(NC)"; \
else \
echo "$(GREEN) ✓ Font Awesome уже существует$(NC)"; \
fi
@echo "$(GREEN) Исправление путей в all.min.css...$(NC)"
@sed -i '' 's|../webfonts/|/static/fontawesome/webfonts/|g' src/static/fontawesome/all.min.css
@echo "$(GREEN) ✓ Пути исправлены$(NC)"
# Генерация иконок (favicon, .ico, .icns) из логотипа
icons:
@echo "$(GREEN)🎨 Генерация иконок...$(NC)"
@@ -155,8 +133,16 @@ icons:
@rm -rf assets/icon.iconset
@echo "$(GREEN) ✓ assets/logo.icns$(NC)"
# Восстановить CSS Font Awesome вручную (если файл удалён)
setup-fontawesome-manual:
@echo "$(GREEN)📥 Скачивание Font Awesome CSS...$(NC)"
@curl -sL -o src/static/fontawesome/all.min.css $(FONTAWESOME_CSS_URL)
@sed -i '' -E 's|(\.\./)*webfonts/|/static/fontawesome/webfonts/|g' \
src/static/fontawesome/all.min.css
@echo "$(GREEN)✓ CSS восстановлен и пути исправлены$(NC)"
# ============================================
# ИКОНКА ДЛЯ WINDOWS .EXE (доп. проверка)
# ИКОНКА ДЛЯ WINDOWS .EXE
# ============================================
windows-icon:
@if [ ! -f assets/logo.ico ]; then \
@@ -187,7 +173,7 @@ endif
# БЫСТРАЯ СБОРКА (ТЕКУЩАЯ ПЛАТФОРМА)
# ============================================
quick: setup detect-platform
quick: detect-platform
quick-release:
ifeq ($(UNAME_S),Darwin)
@@ -204,7 +190,7 @@ else
@exit 1
endif
quick-mac: setup
quick-mac:
@rm -f $(TIMING_FILE)
@$(call measure_time,"🍎 macOS $(UNAME_M)",cargo build --release)
@mkdir -p $(BINARIES_DIR)/$(PROJECT_NAME)-v$(VERSION)-macos-$(UNAME_M)
@@ -213,7 +199,7 @@ quick-mac: setup
@echo "$(GREEN)✅ Пакет: $(BINARIES_DIR)/$(PROJECT_NAME)-v$(VERSION)-macos-$(UNAME_M)/$(NC)"
@$(call print_timing_summary)
quick-linux: setup
quick-linux:
@rm -f $(TIMING_FILE)
@$(call measure_time,"🐧 Linux $(UNAME_M)",cargo build --target x86_64-unknown-linux-musl --release)
@mkdir -p $(BINARIES_DIR)/$(PROJECT_NAME)-v$(VERSION)-linux-$(UNAME_M)
@@ -222,7 +208,7 @@ quick-linux: setup
@echo "$(GREEN)✅ Пакет: $(BINARIES_DIR)/$(PROJECT_NAME)-v$(VERSION)-linux-$(UNAME_M)/$(NC)"
@$(call print_timing_summary)
quick-windows: setup windows-icon
quick-windows: windows-icon
@rm -f $(TIMING_FILE)
@if command -v x86_64-w64-mingw32-gcc >/dev/null 2>&1; then \
$(call measure_time,"🪟 Windows x64",cargo build --target x86_64-pc-windows-gnu --release); \
@@ -241,19 +227,19 @@ quick-windows: setup windows-icon
# СБОРКА ПОД КОНКРЕТНЫЕ ПЛАТФОРМЫ
# ============================================
build-mac: setup
build-mac:
@echo "$(GREEN)🍎 Сборка для macOS...$(NC)"
@time cargo build --release
build-windows: setup windows-icon
build-windows: windows-icon
@echo "$(GREEN)🪟 Сборка для Windows x86_64...$(NC)"
@time cargo build --target x86_64-pc-windows-gnu --release
build-linux: setup
build-linux:
@echo "$(GREEN)🐧 Сборка для Linux x86_64 (GNU)...$(NC)"
@time cargo build --target x86_64-unknown-linux-gnu --release
build-linux-musl: setup
build-linux-musl:
@echo "$(GREEN)🐧 Сборка для Linux x86_64 (musl static)...$(NC)"
@time cargo build --target x86_64-unknown-linux-musl --release
@@ -261,7 +247,7 @@ build-linux-musl: setup
# СБОРКА ВСЕХ ПЛАТФОРМ С ТАЙМИНГОМ
# ============================================
build-all: setup
build-all:
@rm -f $(TIMING_FILE)
@echo "$(BOLD)$(CYAN)🚀 Сборка для всех платформ...$(NC)"
@echo ""