iStoreOS firmware automatic build project customized for NanoPi R1S H5 device, based on GitHub Actions to achieve automated build and version management.
-
🔄 Automatic version detection: Regularly check the new version of the iStoreOS upstream warehouse
-
🚀 Automatic build trigger: Automatically start the build process when a new version is found
-
📦 Release management: Automatically publish firmware to GitHub Releases
-
🎯 Device-specific: Optimized specifically for NanoPi R1S H5 devices
-
⚙️ Manual trigger: Supports manually specifying branches for building
Based on P3TERX/Actions-OpenWrt, it is specially used for iStoreOS firmware compilation:
- Support manual triggering and automatic triggering
- Automatically extract device information and generate file names
- Upload firmware to Artifacts and Releases
- Automatically clean up old versions of Release
Completely original automated workflow, implements:
- Check upstream iStoreOS new versions daily
- Intelligent version comparison algorithm
- Automatically trigger build process
- Version status management
Click the Fork button in the upper right corner to create your own copy.
- Add
.configfile to the repository root directory - Add
feeds.conf.defaultcustom source (optional) - Add
diy-part1.shanddiy-part2.shcustom scripts (optional)
The workflow will automatically check for iStoreOS upstream updates every day and automatically build when a new version is found.
- Go to the Actions page
- Select the "iStoreOS Builder" workflow
- Click the "Run workflow" button
- Select the iStoreOS branch to build (optional)
- Wait for the build to complete
After the build is complete, you can get the firmware in the following ways:
- Artifacts: Artifacts button in the upper right corner of the Actions page
- Releases: Releases page on the repository homepage
- Target device: NanoPi R1S H5
- Architecture: ARM64
- Firmware system: iStoreOS
- Supported features:
- Soft router feature
- Docker container support
- iStore App Store
- Network storage feature
The following environment variables can be modified in the workflow file:
env:
UPLOAD_FIRMWARE: true # Whether to upload firmware to Artifacts
UPLOAD_RELEASE: true # Whether to publish to Releases
TZ: Asia/Shanghai # Time zone settingdiy-part1.sh: Script executed before feeds updatediy-part2.sh: Script executed before compilation
- Build failed: Check the Actions log, usually configuration files or dependency issues
- Permission error: Make sure the repository Actions permissions are set correctly
- Insufficient storage space: GitHub Actions has storage limits, clean up old versions regularly
- View Issues page
- Refer to iStoreOS official documentation
Welcome to submit issues and pull requests to improve this project!
This project is open source based on the MIT license, see the LICENSE file for details.
- P3TERX - Original GitHub Actions workflow
- iStoreOS - Firmware system
- GitHub Actions - CI/CD platform
- NanoPi - Hardware platform
- softprops/action-gh-release - Release release tool
- Mattraks/delete-workflow-runs - Workflow cleanup tool
- dev-drprasad/delete-older-releases - Release cleaning tool
Disclaimer: This project is for learning and research purposes only. Please comply with relevant laws and regulations.