Some checks failed
Build, MSI & Deploy / Build Docker images (push) Failing after 6m30s
Build, MSI & Deploy / Deploy to Dokploy (push) Has been skipped
Build, MSI & Deploy / Build Edge Agent Binaries (push) Failing after 1s
Build, MSI & Deploy / Send notification (push) Successful in 0s
Build, MSI & Deploy / Build Edge Agent MSI (push) Has been skipped
36 lines
1.2 KiB
Python
36 lines
1.2 KiB
Python
import os
|
|
import sys
|
|
from PIL import Image
|
|
|
|
def build_icons():
|
|
agent_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|
custom_png_path = os.path.join(agent_dir, "icon_custom.png")
|
|
icon_ico_path = os.path.join(agent_dir, "icon.ico")
|
|
icon_app_ico_path = os.path.join(agent_dir, "icon_app.ico")
|
|
|
|
if not os.path.exists(custom_png_path):
|
|
print(f"Error: No se encontró el archivo de origen: {custom_png_path}")
|
|
sys.exit(1)
|
|
|
|
try:
|
|
# Cargar la imagen personalizada
|
|
img = Image.open(custom_png_path)
|
|
|
|
# Tamaños estándar requeridos para iconos profesionales de Windows
|
|
icon_sizes = [(16, 16), (32, 32), (48, 48), (64, 64), (128, 128), (256, 256)]
|
|
|
|
# Guardar en formato ICO con los diferentes frames de resolución
|
|
img.save(icon_ico_path, format="ICO", sizes=icon_sizes)
|
|
img.save(icon_app_ico_path, format="ICO", sizes=icon_sizes)
|
|
|
|
print("¡Archivos ICO generados exitosamente!")
|
|
print(f"-> {icon_ico_path}")
|
|
print(f"-> {icon_app_ico_path}")
|
|
|
|
except Exception as e:
|
|
print(f"Error al generar los iconos: {e}")
|
|
sys.exit(1)
|
|
|
|
if __name__ == "__main__":
|
|
build_icons();
|