How to Submit

Host the release, describe it, open a pull request.


This page is a stub.
Contributions to this page are welcome!

Read the rules first.

Host the Release Yourself


The repository stores a pointer, not your IPK. Publish the IPK and its manifest together in one release, reachable over HTTPS. A GitHub release works well.

webosbrew-toolbox-gen-manifest from dev-toolbox-cli writes the manifest from a built IPK. It records:

FieldFrom
id, version, type, titleYour appinfo.json
iconUri, sourceUrlYou supply them
rootRequiredtrue, false or optional
ipkUrl, ipkSize, ipkHash.sha256The IPK itself

The hash and size describe one exact IPK, so generate a fresh manifest for every release.

Package File


Fork apps-repo and add one file, your-package-name.yml, under packages/.

# Display name of your application
title: Homebrew Channel
# Publicly accessible HTTP/HTTPS URL, or data uri to icon image.
iconUri: https://raw.githubusercontent.com/webosbrew/webos-homebrew-channel/main/assets/icon160.png
# Publicly accessible manifest file of your application
manifestUrl: https://github.com/webosbrew/webos-homebrew-channel/releases/latest/download/org.webosbrew.hbchannel.manifest.json
# Category for your application
category: system
# If this is an open source application, use main, otherwise non-free
pool: main
# Long description for your application, in Markdown format
description: |
  Description in markdown format, we suggest you to add some screenshots to help users understand
# Sponsor information, like .github/FUNDING.yml
funding:
  github: [ your-name ]

Point manifestUrl at a URL that survives a new release, such as a releases/latest/download/ path. Then a new release reaches users without another pull request.

Fields

Anything outside this list is rejected.

FieldRequiredNotes
titleYes30 characters at most
iconUriYesHTTP, HTTPS or a data: URI
manifestUrlYesShould always resolve to your newest version
categoryYesOne of the categories below
poolYesmain must be open source, non-free may be closed source
descriptionYesMarkdown or HTML
manifestUrlBetaNoSame as manifestUrl, for a beta channel
shortDescriptionNoOne line tagline, 80 characters at most. Overrides appDescription from the manifest
detailIconUriNoHigher resolution icon for the detail page
requirements.webosReleaseNoMinimum release, from /etc/starfish-release
requirements.deviceSoCNoSoC list, from /etc/prefs/properties/machineName
funding.githubNoGitHub usernames, as in .github/FUNDING.yml

Categories

CategoryFor
multimediaPresenting, creating or processing audio and video
gameA game
systemSystem tools, such as a log viewer or network monitor
utilitySmall utilities, accessories
screensaverA screen saver
launcherAn alternative home screen
amblightAmbient light, such as Hyperion
internetStreaming, social networks and other internet services

Check Before You Submit


  • webosbrew-toolbox-ipk-verify reports which firmware releases the app should run on. It reads the package without running it, so it is a strong hint, not proof. See Check Compatibility
  • Install the IPK on a real TV from a clean state and launch it
  • Test the oldest webOS release you claim to support. See Can I Use
  • Set requirements.webosRelease if your app needs a minimum release. The repository checks compatibility against the releases you name, rather than against all of them

Submit


Open a pull request against apps-repo. Maintainers review and test the app, then merge. Your app reaches users shortly after.