Guidelines

How the project is organised

Short by design. The rules below apply to every repository under the organization.

One organization for everything

  • Infrastructure repositories keep their upstream names: common, fab, buildtasks, inithooks, confconsole, tkldev, webmin, tklbam, keel.
  • Appliance repositories carry the keel- prefix: keel-core, keel-wordpress, keel-odoo, keel-moodle, keel-lamp, keel-lapp, keel-nginx-php-fastcgi, keel-redis, keel-ejabberd.

Issues

  • Issues live in the repository they concern. There is no global tracker.

Tests and coverage

  • Every repository has tests.
  • Coverage is measured on every pull request in GitHub, and the check is required.
  • At least 90 percent for any repository; 95 percent for code the project writes.
  • A pull request that fails tests or the threshold cannot be merged.

Conventions

  • IPv6 in every example and default, for instance [2001:db8:4b1::10]:443.
  • English in commits, code and documentation.
  • History is never rewritten.
  • System containers only.

Upstream

  • Forks keep TurnKey Linux as an upstream remote.
  • Changes are offered back upstream where they apply.