You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Julian Noble 176f2ad702 punk-runtime list/use stop offering support files as runtimes (punkshell 0.27.3) 4 days ago
..
README.md punk-runtime list/use stop offering support files as runtimes (punkshell 0.27.3) 4 days ago

README.md

runtime Tcl Executables are installed here under the appropriate os_architecture folder. e.g windows 64bit binaries under win32-x86_64 windows 32bit binaries under win32-ix86 linux 64 bit binaries under linux-x86_64

What belongs in a platform folder

A platform folder is a store TIER: it holds runtime executables FOR that platform. The folder need not match the machine you are on - a tier for another platform is a first-class thing to populate, because the kit build reads each kit's tier from that kit's target platform rather than from the driving tclsh (see src/AGENTS.md).

Everything in the folder that is not recognised as a support file is treated as a selectable runtime by bin/punk-runtime.cmd list and use. Support files are recognised by extension and are tolerated beside the runtimes without appearing as candidates:

docs/text .txt .md .html .htm .pdf .url config/meta .toml .json .xml .yml .yaml .ini .cfg dev leftovers .tm .tmp .log .bak .old checksums .sha1 .sha256 .asc .sig archives .zip .tar .gz .bz2 .xz .7z

plus any name containing _BUILDCOPY. That covers what legitimately accumulates here: active.toml (which runtime run launches - per-machine, not versioned), a runtime's <rootname>.toml artifact-metadata record, a cached sha1sums.txt, a downloaded checksum or signature, notes about where a runtime came from, and a build-request file such as the .cfg a Lean Undroidwish Construction Kit build is reproducible from.

Anything else - including a stray binary that is not a Tcl runtime - WILL be offered as a runtime, so keep unrelated executables out of these folders. If a new kind of support file starts appearing here regularly, extend the recognised set in BOTH payloads (src/scriptapps/bin/punk-runtime.ps1 and .bash - see the shared PunkRuntimeSupportExt / is_punk_support_name definitions) and re-wrap; the two listings are required to agree byte-for-byte.

The folders themselves are not versioned (the bin/* ignore globs cover them), so nothing here is a place to keep anything you cannot re-fetch or rebuild.

The bin/punk-runtime.cmd cross-platform script can be used to download prebuilt Tcl binaries. e.g ./bin/punk-runtime.cmd fetch This will detect the platform and architecture, creating the containing folder as necessary.

To see existing installed runtimes: ./bin/punk-runtime.cmd list Or to compare local runtimes with those available on the artifact server: ./bin/punk-runtime.cmd list -remote

An installed runtime can then be used to call the src/make.tcl file.

e.g - initial check ./bin/punk-runtime.cmd run src/make.tcl check

e.g - to build (or just copy with latest version number from src if build not required) modules to projectdir/modules ./bin/punk-runtime.cmd run src/make.tcl modules for libs & modules ./bin/punk-runtime.cmd run src/make.tcl packages