Overview
TheMakefile at the project root drives the entire build, sideload, and packaging workflow. All targets write output to the out/ directory, which is created automatically and excluded from version control.
make zip
Packages the channel into
out/GlobalTV.zip — no device required.make install
Sideloads the zip to a Roku in developer mode over the local network.
make pkg
Produces a signed
.pkg file ready for Channel Store submission.make screenshot
Captures a full-HD screenshot of the running channel on the device.
make check
Runs all Roku 2026 certification pre-flight checks locally.
make clean
Deletes the
out/ directory and all build artifacts.make help
Prints a usage summary with all targets and required variables.
make zip
Packages the channel source into a zip archive that the Roku developer portal accepts.
The zip includes the directories listed in
ZIP_SOURCES:
ZIP_EXCLUDE:
The Roku platform requires
manifest to be at the root of the zip, not inside a subdirectory. The zip target handles this correctly.make install
Sideloads the channel to a Roku device in developer mode. Internally runs make zip first, then POSTs the zip to http://<ROKU_IP>/plugin_install.
Example
_install_response.html:
make pkg
Generates a signed .pkg file for submission to the Roku Channel Store. Internally sideloads the app first, then requests a signed package from the device via http://<ROKU_IP>/plugin_package.
Example
make screenshot
Captures a full-HD screenshot of the currently running sideloaded channel. The channel must be active on the device at the time of capture.
Example
make check
Runs a series of local pre-flight checks against the source tree to verify Roku 2026 certification requirements. Does not require a device. Fails with a non-zero exit code if any check fails.
Example
Image files
Code checks
Deep link checks (in
source/main.brs)
Beacon check
OPTIONS key check
make clean
Deletes the entire out/ directory and all build artifacts inside it.
Example