M-Tarantino/Sasquatch-Universal-Builder
GitHub: M-Tarantino/Sasquatch-Universal-Builder
该项目是一个自动化构建脚本,用于在现代 Linux 和 Android Termux 环境中一键编译和修补遗留的 SquashFS 提取工具 Sasquatch。
Stars: 0 | Forks: 0
# 🛠️ Sasquatch Universal Builder
**一个内存安全的自动化脚本,用于在现代系统 & Termux 上编译 Sasquatch。**
[](https://www.python.org/)
[-green.svg)](https://github.com/termux/termux-app)
[](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)
### 📖 问题描述
`Sasquatch`(由 @devttys0 开发)是用于提取非标准 SquashFS 镜像的行业标准工具。然而,其原始代码已经多年未更新,由于更严格的链接器规则(例如 `duplicate symbol: verbose`),导致它无法在现代编译器(GCC 10+)上编译成功。
### 💡 解决方案:纯自动化
**Sasquatch Universal Builder** 被设计为一个“一键运行,无需操心”的解决方案。与其他 fork 不同,这是一个现代化的编排器,它可以:
1. **智能环境检测:** 识别您的操作系统和包管理器。
2. **自动安装依赖:** 自动安装 `gcc`、`make`、`zlib`、`lzma` 等。
3. **动态修补:** 使用 regex 即时修复旧版 C 头文件。
4. **零手动配置:** 开箱即用。
### 📋 前置条件与自动化
该构建器被设计为尽可能实现“免手动操作”。
* **要求:** 您只需要安装 `python3` 和 `git`。
* **自动化:** 脚本会检测您的操作系统并安装所有 build-essential 工具和库。
* **注意:** 在 Linux 系统上,该脚本会请求 `sudo` 权限来安装这些依赖项。在 **Termux** 上,它无需 root 即可原生运行。
### ⚠️ 当前限制
* **XZ 压缩:** 此版本侧重于在旧版和现代 GCC 版本之间实现最大兼容性。因此,目前禁用了对 XZ 压缩的 SquashFS 的支持。
* **环境:** 针对 Ubuntu 20.04+、Arch Linux 和 Termux 进行了优化和测试。
### 🚀 安装与使用
1. **克隆仓库:**
git clone [https://github.com/M-Tarantino/Sasquatch-Universal-Builder.git](https://github.com/M-Tarantino/Sasquatch-Universal-Builder.git)
cd Sasquatch-Universal-Builder
2. **运行自动化构建器:**
python3 SASQUATCH_UNIVERSAL_BUILDER.py
3. **验证安装:**
只需在终端中输入 `sasquatch -h` 即可。
### 🛠️ 技术背景
该构建器不仅仅是复制文件。它会**在构建过程中分析源代码**:
* **Regex 重构:** 使用 Python 的 `re.sub` 动态解决 `extern` 变量冲突。
* **编译器桥接:** 自动强制执行 `-fcommon` 标志,以弥合不同 GCC 版本之间的差异。
* **移动优先:** 专门针对 **Termux (Android)** 的独特环境进行了优化。
### 👤 作者
**Muneeb Tarantino**
* **LinkedIn:** [muneeb-tarantino](https://www.linkedin.com/in/muneeb-tarantino/)
* **GitHub:** [@M-Tarantino](https://github.com/M-Tarantino)
*注意:本项目是利用 AI 辅助工程工作流开发的,旨在以创纪录的速度解决遗留的构建问题。*
标签:Python, SquashFS, Termux, 无后门, 编译工具, 自动化构建, 补丁编排