refactor: upstream sync strategy with dynamic GENERAL.txt

This commit is contained in:
lingyuzeng
2026-03-01 14:03:58 +08:00
parent 6ee3e2f832
commit a54452915d
9 changed files with 213 additions and 52 deletions

View File

@@ -1,18 +1,57 @@
# OpenWrt/ImmortalWrt IPQ60XX Build (Woodpecker)
This repo is a build-orchestration repo:
- Config/: .config fragments (device sets + GENERAL)
- Scripts/: package injection / tweaks
- files/: OpenWrt overlay (copied into firmware rootfs)
- .woodpecker/: CI pipelines
This repo is a build-orchestration repo that compiles IPQ60XX firmware using Woodpecker CI.
Targets:
- IPQ60XX-WIFI-YES (from VIKINGYFY/OpenWRT-CI)
- IPQ60XX-WIFI (from davidtall/OpenWRT-CI)
## Quick Start
How to add packages:
1) If available in feeds: append `CONFIG_PACKAGE_xxx=y` to `Config/GENERAL.txt`
2) If not in feeds or need pinned repo: add clone/remove logic in `Scripts/Packages.sh`
1. **Set up Woodpecker**: Enable this repository in Woodpecker UI
2. **Optional config**: Edit `Config/GENERAL.local.txt` to add custom packages
3. **Trigger build**: Push to `main` branch or click manual trigger
Artifacts:
- Saved into `artifacts/` in pipeline workspace.
## Architecture
### Three upstream layers
| Layer | Purpose | Source |
|-------|---------|--------|
| SOURCE | Firmware source code | `VIKINGYFY/immortalwrt.git` (main branch) |
| CI-TEMPLATE | Config templates | `davidtall/OpenWRT-CI` (GENERAL.txt dynamic) |
| YOUR-DELTA | Your customizations | This repo (edit only here) |
### Build targets
- **IPQ60XX-WIFI-YES**: Based on VIKINGYFY/OpenWRT-CI
- **IPQ60XX-WIFI**: Based on davidtall/OpenWRT-CI
Both targets merge: Device Config + Upstream GENERAL + Your LOCAL overrides
## How to add packages
### Feeds packages
Add to `Config/GENERAL.local.txt`:
```
CONFIG_PACKAGE_luci-app-xxx=y
CONFIG_PACKAGE_openssh-sftp-server=y
```
### Custom packages
Edit `Scripts/Packages.sh` to clone custom repos
## Documentation
Detailed guide: See [docs/SKILLS.md](docs/SKILLS.md)
## Artifacts
Build outputs are saved to `artifacts/` directory:
- `artifacts/ipq60xx-wifi-yes/` - Firmware from WIFI-YES config
- `artifacts/ipq60xx-wifi/` - Firmware from WIFI config
## Dependencies
This repository pulls configs from:
- [VIKINGYFY/OpenWRT-CI](https://github.com/VIKINGYFY/OpenWRT-CI)
- [davidtall/OpenWRT-CI](https://github.com/davidtall/OpenWRT-CI)
Source firmware:
- [VIKINGYFY/immortalwrt](https://github.com/VIKINGYFY/immortalwrt)