Build keel-version and keel-sysinfo as Keel packages #13
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/tracker#13
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Decision by the maintainer, 2026-09-28: Keel builds and owns these two
packages itself, rather than wrapping or diverting TurnKey's. A distribution
cannot claim to be sovereign while the commands that state its identity come
out of somebody else's archive.
This supersedes the open question in #12 about what to do with the
turnkey-*commands a Debian package owns.
Measured on the
wordpress-democontainer, 2026-09-28turnkey-version/usr/bin/turnkey-version, python modulesysversionturnkey-sysinfo/usr/bin/turnkey-sysinfo,/usr/bin/turnkey-detect-virt, python modulelibsysinfo(disk,memstats,virt),/usr/share/turnkey-sysinfo/contrib/motdReverse dependencies, on a real appliance:
turnkey-version— exactly one,turnkey-sysinfo.turnkey-sysinfo— none.The pair is a closed set. Replacing both breaks no other package in the
archive, which is what makes this doable now rather than later. Note
turnkey-detect-virt, a third command in the family that #12's table missed.What has to be true
keel-versionandkeel-sysinfo, built from Keel source packages in theKeel-Linux organization, published to our own archive, signed like everything
else.
keel-versionandkeel-sysinfo; theturnkey-*names keep working, per the policy in decision 0015.
sysversion,libsysinfo) must keepimporting. Decide whether the Keel package ships those module names directly
or ships Keel-named modules with compatibility shims, and say why.
Provides,Replaces,Conflictsagainst the TurnKey names, so that an upgrade of anexisting appliance converts cleanly and a fresh build never installs both.
An upgrade path that leaves both installed, or that loses a file to the other
package's ownership, is the failure to design against.
keel-versionreads/etc/keel_versionfirst and falls back to/etc/turnkey_version, per decision 0014. It must not print"TurnKey GNU/Linux".
keel-sysinfokeeps every system fact the TurnKey one reports — load, memory,processes, swap, usage of /, addresses per interface — and says nothing about
TKLBAM or the Hub. What it says about backup instead is decided in 0014.
Coordination, which matters more than the code here
Two changes are in flight that touch the same surface:
and is writing decision 0014.
writing decision 0015.
This work must reuse what those two produce, not write a second copy of it.
In particular: if #6 puts sysinfo logic into a keel-core overlay library, this
work moves that logic into the
keel-sysinfopackage and the overlay stopscarrying it. Two implementations of the same banner is exactly the duplication
this project keeps paying for. Start by reading what #6 and #12 actually
landed.
Order
Land the packages and publish them to the archive first; the layer chain
rebuild that puts them on an appliance is a separate, deliberate step, because
keel-core is the parent of all eleven layers.