Application de gestion et calcul de mélanges de gaz pour la plongée (Nitrox, Trimix, Oxygène).
- Python 3.10 ou supérieur (3.13 recommandé)
- pip
- Git (optionnel)
# Installer Homebrew si pas déjà installé
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Installer Python 3.13 avec Tkinter
brew install python@3.13
brew install python-tk@3.13git clone https://github.com/votre-repo/gaz-diving-supply.git
cd gaz-diving-supplypython3.13 -m venv venv
source venv/bin/activatepip install -r requirements.txtpython main.pyUbuntu / Debian :
sudo apt update
sudo apt install python3 python3-pip python3-tk python3-venvFedora / RHEL :
sudo dnf install python3 python3-pip python3-tkinterArch Linux :
sudo pacman -S python python-pip tkgit clone https://github.com/votre-repo/gaz-diving-supply.git
cd gaz-diving-supplypython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtpython main.py- Télécharger Python 3.13 sur python.org
⚠️ Cocher "Add Python to PATH" lors de l'installation- Tkinter est inclus automatiquement sur Windows ✅
git clone https://github.com/votre-repo/gaz-diving-supply.git
cd gaz-diving-supplyOu télécharger le ZIP depuis GitHub et extraire.
python -m venv venv
venv\Scripts\activatepip install -r requirements.txtpython main.pygaz-diving-supply/
├── main.py # Point d'entrée de l'application
├── calcul_gaz.py # Logique de calcul des mélanges
├── database.py # Gestion base de données SQLite
├── ui_components.py # Composants de l'interface
├── requirements.txt # Dépendances Python
└── README.md # Ce fichier
- Calcul de mélanges Nitrox, Trimix et Oxygène pur
- Gestion de l'inventaire des bouteilles
- Historique des remplissages
- Interface graphique moderne (CustomTkinter)
- Base de données locale SQLite
brew install python-tk@3.13Vérifier que l'environnement virtuel est bien activé :
source venv/bin/activate # macOS / Linux
venv\Scripts\activate # WindowsMIT License — Libre d'utilisation et de modification.
# Installer PyInstaller (venv activé)
pip install pyinstallerpyinstaller --windowed --onefile --name "GazDivingSupply" main.py--windowed: pas de terminal en arrière-plan--onefile: tout dans un seul fichier--name: nom de l'exécutable
L'exécutable sera dans dist/GazDivingSupply.app
pyinstaller --onefile --name "GazDivingSupply" main.pyL'exécutable sera dans dist/GazDivingSupply
pyinstaller --windowed --onefile --name "GazDivingSupply" main.pyL'exécutable sera dans dist\GazDivingSupply.exe
CustomTkinter nécessite ses assets (images, thèmes). Utiliser --collect-all :
pyinstaller --windowed --onefile \
--collect-all customtkinter \
--name "GazDivingSupply" \
main.pyCréer GazDivingSupply.spec pour plus de contrôle :
# Générer le .spec
pyinstaller --windowed --collect-all customtkinter --name "GazDivingSupply" main.py
# Modifier le .spec si besoin, puis recompiler
pyinstaller GazDivingSupply.specgaz-diving-supply/
├── dist/
│ └── GazDivingSupply # ← Exécutable à distribuer
├── build/ # Fichiers temporaires (ignorable)
├── GazDivingSupply.spec # Config PyInstaller
└── ...
# macOS
pyinstaller --windowed --onefile \
--collect-all customtkinter \
--icon=icon.icns \
--name "GazDivingSupply" main.py
# Windows
pyinstaller --windowed --onefile \
--collect-all customtkinter \
--icon=icon.ico \
--name "GazDivingSupply" main.py
⚠️ Important : L'exécutable doit être compilé sur le même OS que la machine cible. Un.appmacOS ne fonctionnera pas sur Windows et vice-versa.



