Skip to content
Public template

About

ABBS Door Template

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ABBS Door Template

validate

A GitHub template for building small A-type ARexx doors for ABBS / ABBS for All on classic AmigaOS.

It distills the reusable integration, validation, installation and Aminet packaging lessons from ABBS Last Callers without carrying over Last Callers-specific logic.

Included

  • minimal working DoorName.abbs
  • native ABBS A-type ARexx integration
  • Shell-mode smoke-test path
  • 80-column-safe baseline output
  • conservative ABBS host RC handling
  • per-node NodeXConfig / NodeXMenu documentation
  • host-side source checks
  • GitHub Actions CI
  • reproducible Aminet .lha packaging
  • release checklist
  • MIT license

Quick start

  1. Create a repository from this template.

  2. Rename DoorName.abbs.

  3. Edit scripts/config.sh.

  4. Replace the example door body.

  5. Update README, Aminet metadata and docs.

  6. Run make check.

  7. Shell-test on AmigaOS:

    rx YourDoor.abbs

  8. Install as an ABBS A-type door and validate locally.

  9. Validate from a remote Telnet caller before a stable release.

  10. Run make aminet-check.

Core ABBS model

The script detects an inherited ABBS node ARexx host with:

currentHost = UPPER(ADDRESS())
doorMode = LEFT(currentHost, 11) = 'ABBS NODE #'

In door mode it outputs through WRITETEXT + OUTIMAGE. Outside ABBS it uses SAY for Shell testing.

Do not add a hard-coded ADDRESS statement to the normal A-type path without evidence that your door requires it.

Nonzero ABBS host RC values are terminal by default. A derived door may handle an exact nonzero RC locally only when official documentation for that specific command defines it as a normal informational result. Unknown nonzero RC values, carrier loss, and transport-style failures remain terminal, with no later host calls. See AGENTS.md for the authoritative rule.

The baseline WRITETEXT / OUTIMAGE path continues to exit on every nonzero RC unless official documentation for those exact calls establishes otherwise. It does not retry or continue output after carrier loss.

Commands

make check
make aminet
make aminet-check
make clean

Customize before release

Search for and replace:

DoorName
ABBSDoorTemplate
REPLACE-ME
YOUR NAME
YOUR EMAIL

See docs/TEMPLATE-CHECKLIST.md.

Validation

Host CI runs the source checks and validates reproducible Aminet package construction with make aminet-check. It is not AmigaOS/ABBS runtime validation. A derived project must perform its own AmigaOS Shell, local ABBS and remote Telnet validation.

Contributing

Reusable template improvements are welcome; door-specific functionality belongs in repositories created from this template. See CONTRIBUTING.md for the contribution guide and AGENTS.md for the permanent ABBS design contract.

License

MIT.

About

ABBS Door Template

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages