d6d5f60be0eb8ff5ff3b076a2beec48eb9635571
c64-tools
CI/CD templates for Commodore 64 (ACME + VICE) game projects, in the same spirit as tic80-tools.
example-makefile.make— project Makefile: local dev targets (deps,build,run,clear,rebuild,rebuildrun) plus the Woodpecker pipeline targets (ci-version,ci-build,ci-artifact,ci-update).example-woodpecker.yaml— Woodpecker pipeline: version → build (Debian,apt install acme) → artifact (scp to the droparea) → update (calls the teletypegames/updateendpoint withplatform=c64).example-metadata.json— catalog metadata; theversionfield drivesci-version, the rest (name,title,author,desc,site,license) is whatSoftwareUpdater::C64Servicewrites into the DB.example-tasks.json— VS Code.vscode/tasks.jsonwrapping the local make targets.
Usage in a game repo
- Copy
example-makefile.maketoMakefile, setPROJECT(andTARGETif the .prg name differs from$(PROJECT).prg). - Copy
example-metadata.jsontometadata.jsonand fill it in;namemust matchPROJECT. - Copy
example-woodpecker.yamlto.woodpecker.yamland add thedroparea_ssh_password/update_secret_keysecrets in Woodpecker. - Copy
example-tasks.jsonto.vscode/tasks.json.
The pipeline uploads $(PROJECT)-$(VERSION).prg and
$(PROJECT)-$(VERSION).metadata.json to the droparea, then triggers
/update?platform=c64&name=$(PROJECT)&version=$(VERSION), which
creates/updates the Software row and a Release with cartridge_path.
Languages
Makefile
80.2%
Dockerfile
19.8%