Open ezekg opened 3 years ago
Would like to add a slug
to products, to make these URLs prettier. E.g. like GitHub repos or something. Verbiage like "Unique URL-friendly identifier for your product."
https://bin.keygen.sh/<account>/<product>
Related to #84.
May be easier to just recommend customers add their custom domain, or set up a redirect from one of their own domain to get.keygen.sh
.
We could house this under e.g. update.keygen.sh
. Make is super easy to plug-and-play for Electron and other Squirrel-compatible upgrade frameworks (Tauri).
Depending on platform, filetype could default to e.g. darwin => zip
.
GET https://electron.keygen.sh/:account/:product/:channel/:platform/:version
{
url: artifact.url,
name: release.name,
notes: release.description,
pub_date: release.created_at
}
Defaults to bin
filetype?
GET https://tauri.keygen.sh/:account/:product/:channel/:platform/:version
{
url: artifact.url,
name: release.name,
notes: release.description,
pub_date: release.created_at
}
Even better would be generating a unique URL slug for each account/product/platform/channel combo, so it could end up being something simple like this:
GET https://update.keygen.sh/utAsCd8icu1VGhJw/:version
Let’s put the engine
on the release? Then we can add subdomains, e.g. npm.keygen.sh
, which lists releases of a specific engine in the engine’s required format.
keygen new ... --engine SPARKLE
Use pkg.keygen.sh
?
Use Satis for generating static composer repo?
Open source package manager for reference: https://github.com/go-gitea/gitea/blob/3ae997614ad4125d0ef40a528157dba01522c8e0/routers/api/packages/api.go#L484
Gitea Rubygem docs: https://docs.gitea.io/en-us/usage/packages/rubygems/
Starting with pypi
may be the easiest. We'd need to set up an endpoint that essentially just lists available artifacts via an HTML page. For more info, see this page on hosting a simple Python package repository.
Related to #478, #489, #490, #491. Foundation implemented in #679.
Add unique subdomain for each engine, e.g. Composer
https://composer.pkg.keygen.sh
.sparkle
squirrel
electron
(alias forsquirrel
)tauri
: #753 and #860npm
: #489unity
(alias fornpm
?)gems
: #491composer
(requires subdomains)docker
(OCI): #911pypi
: #679wp
: https://github.com/keygen-sh/keygen-api/issues/904homebrew
raw
: #892