一个用于构建完整 Termux 环境的专业 bootstrap 框架
网络安全 · 开发 · OSINT · AI · 移动研究
## 概述
Termux Bootstrap 能够自动化安装和配置一个可复现、模块化的 Termux 环境。无需在每次设置新设备时手动安装数十个包,该项目只需一条命令即可重建您的整个环境。
基于专业级的 Bash 框架构建,具备依赖解析、回滚支持、结构化日志以及全面的测试覆盖率(428 个测试,零失败)。
## 功能
- **单命令安装** — 单条命令即可安装任何 profile
- **模块化架构** — 跨 5 个类别的 17 个可组合模块
- **13 个预构建 Profile** — 开发者、渗透测试人员、OSINT、AI 等
- **依赖解析** — 自动进行模块依赖排序并支持循环检测
- **回滚支持** — 安全安装,失败时自动回滚
- **Dry-Run 模式** — 在应用更改前预览
- **结构化日志** — 带有时间戳、日志级别和调用者上下文的日志
- **全面的配置管理** — 合并、验证和管理 dotfiles
- **系统诊断** — 内置 doctor 命令用于故障排除
- **缓存系统** — 基于 TTL 的下载和元数据缓存
- **428 个通过的测试** — 基于 BATS 的测试套件,包含回归覆盖率
## 快速开始
```
# Clone 仓库
git clone https://github.com/0xSECsh/termux-bootstrap.git
cd termux-bootstrap
# 运行 diagnostics
./bootstrap.sh doctor
# 安装 profile(例如:development)
./bootstrap.sh install --profile developer
# 或者交互式地使用 CLI
./bootstrap.sh help
```
## Profile
| Profile | 描述 | 包含的模块 |
|---------|-------------|-----------------|
| `minimal` | 基础核心包 | core/base |
| `dev` | 基础包 + 编辑器 | core/base, core/editors |
| `full` | 核心 + shell 增强功能 | core/base, core/shell |
| `developer` | 完整开发栈 | core/* + development/* |
| `pentester` | 渗透测试工具包 | core/* + cybersecurity/pentest, recon, wireless, threat-hunting |
| `osint` | OSINT 调查工具 | core/* + cybersecurity/osint, recon |
| `reverse` | 逆向工程 | core/* + cybersecurity/reverse, mobile |
| `ai` | AI 和 ML 环境 | core/*, development/python, ai/ai |
| `dry` | Dry-run 验证 | core/base |
## CLI 命令
| 命令 | 描述 |
|---------|-------------|
| `help [command]` | 显示任何命令的帮助信息 |
| `version` | 显示版本和构建信息 |
| `doctor` | 运行系统诊断 |
| `install` | 安装 profile 或模块 |
| `update` | 更新包或框架 |
| `module` | 管理模块(list, install, remove, info) |
| `profile` | 管理 profile(list, install, remove, info) |
| `config` | 管理配置(show, list, edit, validate, merge) |
| `list` | 列出 profile、模块或已安装的项目 |
## 项目结构
```
termux-bootstrap/
├── bootstrap.sh # Entry point — CLI dispatcher
├── commands/ # CLI command handlers
├── lib/ # Framework libraries
│ ├── core/ # Core: constants, environment, errors, CLI, dispatcher
│ ├── system/ # System: packages, validation, capabilities
│ ├── terminal/ # Terminal: colors, logging, progress, UI, spinner
│ └── utils/ # Utilities: filesystem, download, cache, hash, string
├── modules/ # Orchestration: loaders, registries, config_engine, installer_engine
├── packages/ # Domain modules organized by category
│ ├── core/ # Base system modules
│ ├── development/ # Language runtimes and tooling
│ ├── cybersecurity/ # Security tools
│ ├── ai/ # AI/ML packages
│ └── profiles/ # Profile definitions
├── tests/ # BATS test suite (428 tests)
├── configs/ # Shipped dotfiles
├── scripts/ # Standalone utility scripts
├── tools/ # Release and validation tooling
└── docs/ # Documentation
```
## 文档
| 文档 | 描述 |
|----------|-------------|
| [ARCHITECTURE.md](ARCHITECTURE.md) | 系统架构和设计决策 |
| [INSTALL.md](INSTALL.md) | 详细的安装指南 |
| [USAGE.md](USAGE.md) | 用法和工作流 |
| [MODULES.md](MODULES.md) | 模块参考 |
| [PROFILES.md](PROFILES.md) | Profile 参考 |
| [CONFIGURATION.md](CONFIGURATION.md) | 配置系统参考 |
| [CLI.md](CLI.md) | CLI 命令参考 |
| [TESTING.md](TESTING.md) | 测试指南 |
| [DEVELOPMENT.md](DEVELOPMENT.md) | 开发指南 |
| [CONTRIBUTING.md](CONTRIBUTING.md) | 贡献指南 |
| [SECURITY.md](SECURITY.md) | 安全政策 |
| [CHANGELOG.md](CHANGELOG.md) | 版本历史 |
| [FAQ.md](FAQ.md) | 常见问题 |
| [RELEASE_CHECKLIST.md](RELEASE_CHECKLIST.md) | 发布工程手册 |
| [AGENTS.md](AGENTS.md) | 开发规范(AI 辅助) |
| [SUPPORT.md](SUPPORT.md) | 支持和社区资源 |
| [ROADMAP.md](ROADMAP.md) | 未来计划 |
## 要求
- **Termux** (Android) 或安装了 Bash 5.0+ 的 Linux 环境
- 需要使用 `git`、`curl` 或 `wget` 进行安装
- base profile 大约需要 100 MB 的存储空间(因 profile 而异)
## 许可证
MIT 许可证 — 详见 [LICENSE.md](LICENSE.md)
由 0xSEC 用 ♥ 构建