diff --git a/src/deb/cross.rs b/src/deb/cross.rs index 7a3ebf7..3af5fdb 100644 --- a/src/deb/cross.rs +++ b/src/deb/cross.rs @@ -38,19 +38,6 @@ impl EphemeralContextGuard { return Err(format!("mmdebstrap failed for series {}", series).into()); } - // Mount '/dev' inside the chroot - let status = context::current() - .command("sudo") - .arg("mount") - .arg("--bind") - .arg("/dev") - .arg(format!("{}/dev", chroot_path.display())) - .status()?; - if !status.success() { - // Clean up on failure - let _ = std::fs::remove_dir_all(&chroot_path); - return Err("Failed to mount /dev inside chroot".into()); - } // Switch to an ephemeral context to build the package in the chroot context::manager().set_current_ephemeral(Context::new(ContextConfig::Unshare { @@ -73,17 +60,6 @@ impl Drop for EphemeralContextGuard { log::error!("Failed to restore context {}: {}", self.previous_context, e); } - // Unmount '/dev' inside the chroot - let status = context::current() - .command("sudo") - .arg("umount") - .arg(format!("{}/dev", &self.chroot_path.display())) - .status(); - if status.is_err() || !status.unwrap().success() { - // If we fail to umount, then we can't remove (would remove /dev/xx on host) - log::error!("Failed to umount /dev inside chroot. Not cleaning up."); - return; - } // Remove chroot directory // We use the restored context to execute the cleanup command