From e726871f8fc63e31c84c79711d1d2b1a6917dd52 Mon Sep 17 00:00:00 2001 From: Ruscher Date: Mon, 16 Mar 2026 01:51:27 -0300 Subject: [PATCH] Fix build ISO sed: couldn't open temporary file /work/build-iso/sedHxBD3J: Permission denied --- usr/share/build-iso/local_builder.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/usr/share/build-iso/local_builder.py b/usr/share/build-iso/local_builder.py index c45b07c6..82824bd3 100644 --- a/usr/share/build-iso/local_builder.py +++ b/usr/share/build-iso/local_builder.py @@ -286,6 +286,14 @@ def prepare_build_script(self) -> bool: if result.returncode == 0: self.logger.log("green", _("Build script prepared")) + + # IMPORTANT: Set permissions after clone to ensure the container + # user can write temporary files in this directory (needed by sed -i) + try: + subprocess.run(["chmod", "-R", "777", build_iso_path], check=True) + except Exception as e: + self.logger.log("yellow", _("Warning: Could not set permissions on build-iso directory: {0}").format(str(e))) + return True else: self.logger.log("red", _("Failed to clone build-iso repository")) @@ -314,10 +322,12 @@ def _build_setup_script(self) -> str: # 1. Add community repository if bigcommunity if self.distroname == "bigcommunity": setup_commands.append(""" -echo "[community-extra]" | sudo tee -a /etc/pacman.conf -echo "SigLevel = PackageRequired" | sudo tee -a /etc/pacman.conf -echo "Server = https://repo.communitybig.org/extra/\\$arch" | sudo tee -a /etc/pacman.conf -echo "" | sudo tee -a /etc/pacman.conf +if ! grep -q "\[community-extra\]" /etc/pacman.conf; then + echo "[community-extra]" | sudo tee -a /etc/pacman.conf + echo "SigLevel = PackageRequired" | sudo tee -a /etc/pacman.conf + echo "Server = https://repo.communitybig.org/extra/\\$arch" | sudo tee -a /etc/pacman.conf + echo "" | sudo tee -a /etc/pacman.conf +fi """) # 2. Install cryptographic keys