From 83f71561f82e15a4923e4bccb4bb46ae000e8ddb Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Tue, 28 Jul 2026 04:03:03 +0000 Subject: [PATCH] [FIX] script todo: install curl/git/make before ERPLibre make targets MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Minimal cloud images ship without make (and often without curl), so the ERPLibre install cloned the repo then died on "make: command not found". The remote bootstrap now installs curl, git and make via apt (Debian/ Ubuntu) or dnf/yum (Fedora) — running apt-get update first since cloud-init did not refresh the lists — before cloning and running make install_os / make install_odoo_18. Co-Authored-By: Claude Opus 4.8 (1M context) --- script/todo/todo.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/script/todo/todo.py b/script/todo/todo.py index f7bb80e..70de4dd 100755 --- a/script/todo/todo.py +++ b/script/todo/todo.py @@ -1648,9 +1648,20 @@ class TODO: ) return remote = ( - "set -e; mkdir -p ~/git; " - "command -v git >/dev/null 2>&1 || " - "{ sudo apt-get install -y git || sudo dnf install -y git; }; " + "set -e; " + # Outils d'amorçage (absents des images cloud minimales) : + # curl, git, make. Supporte apt (Debian/Ubuntu) et dnf/yum + # (Fedora). apt-get update car cloud-init n'a pas rafraîchi apt. + "PKGS='curl git make'; " + "if command -v apt-get >/dev/null 2>&1; then " + "sudo apt-get update -qq && sudo apt-get install -y $PKGS; " + "elif command -v dnf >/dev/null 2>&1; then " + "sudo dnf install -y $PKGS; " + "elif command -v yum >/dev/null 2>&1; then " + "sudo yum install -y $PKGS; " + "else echo 'Aucun gestionnaire de paquets (apt/dnf/yum)'; " + "exit 1; fi; " + "mkdir -p ~/git; " "if [ ! -d ~/git/erplibre/.git ]; then " f"git clone --branch {shlex.quote(branch)} " f"{self.ERPLIBRE_GIT_URL} ~/git/erplibre; fi; "