Skip to content

Latest commit

 

History

History
170 lines (123 loc) · 4.25 KB

File metadata and controls

170 lines (123 loc) · 4.25 KB

📦 Guide de Distribution - Minuteur

🎯 Vue d'Ensemble

Votre application Minuteur est maintenant configurée pour une distribution multi-plateforme professionnelle avec GitHub Actions.

🚀 Ce Qui a Été Implémenté

✅ Génération d'Exécutables

Build Local

# Linux (testé et fonctionnel)
python build_exe.py          # Build interactif
python build_exe_ci.py        # Build CI optimisé

# Résultat: dist/Minuteur/ (~65MB)

Build Multi-Plateforme (GitHub Actions)

git tag v1.0.0 && git push origin v1.0.0
# → Build automatique Windows + Linux + macOS
# → Release GitHub avec archives téléchargeables

🏗️ Infrastructure GitHub Actions

  1. .github/workflows/build-executables.yml

    • Build Windows, Linux, macOS
    • Releases automatiques pour tags v*
    • Artifacts téléchargeables
  2. .github/workflows/test-build.yml

    • Validation rapide sur chaque commit
    • Feedback immédiat en cas d'erreur
  3. Templates d'issues/PR

    • Structure professionnelle
    • Guidelines pour contributions

📂 Fichiers de Build

  • build_exe.py - Build local interactif
  • build_exe_ci.py - Build CI multi-OS optimisé
  • Dockerfile.wine - Tentative cross-compilation (archivé)
  • docker-wine-build.sh - Script Docker (archivé)

📥 Comment Distribuer

Méthode 1: Release GitHub (Recommandée)

# 1. Finaliser votre version
git add .
git commit -m "Version 1.0.0 ready"
git push

# 2. Créer un tag de release  
git tag -a v1.0.0 -m "Première release stable"
git push origin v1.0.0

# 3. Attendre le build (~15 minutes)
# GitHub Actions va:
# - Builder sur Windows, Linux, macOS
# - Créer la release automatiquement
# - Uploader les archives:
#   • minuteur-windows.zip
#   • minuteur-linux.tar.gz  
#   • minuteur-macos.tar.gz

# 4. Partager le lien
# https://github.com/[user]/[repo]/releases/v1.0.0

Méthode 2: Build Local

# Sur votre système Linux
python build_exe_ci.py
zip -r minuteur-linux.zip dist/Minuteur/

# → Distribuer minuteur-linux.zip

👥 Instructions Utilisateur Final

Installation

  1. Télécharger l'archive pour votre OS
  2. Extraire l'archive
  3. Lancer l'exécutable Minuteur (ou Minuteur.exe)

Utilisation

  • Régler le temps : Minutes et secondes
  • 🚀 Démarrer : Clic sur "DÉMARRER"
  • 📌 System tray : Réduire dans la barre système
  • 🔔 Notifications : Alerte automatique à la fin
  • 🖱️ Tray controls : Clic = afficher, Double-clic = fermer

📊 Statistiques de Build

Tailles d'Exécutables

  • Windows: ~70-90 MB
  • Linux: ~60-80 MB
  • macOS: ~75-95 MB

Performance GitHub Actions

  • Build temps: 8-15 minutes par OS
  • Parallélisation: 3 OS simultanés
  • Cache: Poetry optimisé pour vitesse

🔧 Maintenance

Mise à Jour des Dépendances

poetry update
git commit -am "Update dependencies"
git tag v1.0.1
git push origin v1.0.1

Debugging CI Issues

  1. Actions tab → Voir les logs détaillés
  2. Retry failed jobs si problème temporaire
  3. Local test: python build_exe_ci.py

🌟 Fonctionnalités Futures

Améliorations Possibles

  • Code signing pour Windows/macOS
  • Installateurs (.msi, .dmg, .deb)
  • Auto-updates intégrés
  • Store distribution (Microsoft Store, Mac App Store)

Optimisations Build

  • UPX compression pour réduire la taille
  • Modules exclusions pour optimiser
  • Thèmes customisables

🎉 Résultat Final

Votre application Minuteur est maintenant :

Prête pour distribution professionnelle
Multi-plateforme (Windows, Linux, macOS)
Build automatisé avec GitHub Actions
Interface moderne CustomTkinter + system tray
Documentation complète utilisateur et développeur

🎯 Vous pouvez maintenant distribuer votre application à grande échelle !


📋 Checklist Finale

Avant votre première release:

  • Code finalisé et testé
  • Repository sur GitHub
  • README.md à jour avec instructions
  • License choisie (MIT recommandée)
  • Tag v1.0.0 créé
  • Actions GitHub validées
  • Test de téléchargement de release

🚀 Votre minuteur est prêt pour le monde !