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) 1 week ago
..
bin punk-runtime list/use stop offering support files as runtimes (punkshell 0.27.3) 1 week ago
tools punknative generator: nav index, per-form arg tables, terminal-black backdrop, integer row pitch 3 weeks ago
wrappers
AGENTS.md G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
README.md
argsrecord.tcl
argsrecord.txt
dtplite.tcl doc: restore 'dev doc.validate' - wrap tcllib dtplite as bin/dtplite.cmd 3 weeks ago
dtplite_wrap.toml doc: restore 'dev doc.validate' - wrap tcllib dtplite as bin/dtplite.cmd 3 weeks ago
example.sh
example.tcl
example_wrap.toml
fetchruntime.bash
fetchruntime.ps1 scriptapps misc 1 month ago
fetchruntime.tcl
fetchruntime_bits.ps1 scriptapps misc 1 month ago
fetchruntime_old.ps1 scriptapps misc 1 month ago
fetchruntime_wrap.toml scriptapps misc 1 month ago
getpunk.bash
getpunk.ps1
getpunk_wrap.toml
kettle.tcl
punk-bits.pl G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-bits.ps1 G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-bits.sh G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-bits_wrap.toml G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-create-localmachine-selfsigned-cert.ps1 G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-selfsign.ps1 G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-selfsign_wrap.toml G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-tclargs.tcl G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk-tclargs_wrap.toml G-097: bin utility naming sweep - punk-bits, punk-runtime, punk-tclargs, selfsign 2 weeks ago
punk.tcl scriptapps misc 1 month ago
tcltm.tcl scriptapps misc 1 month ago
wrapfiletofile.tcl

README.md

Create multishell scripts from your .tcl .sh and .ps1 scripts that are stored here.

Use the deck scriptwrap commands to generate a multishell .cmd file from your scripts. This .cmd is a 'polyglot' script - it should run when called from any of the target interpreters.

A multishell .cmd file is a cross-platform script that can easily be run on Windows and unix-like platforms.

The .cmd extension is primarily a convenience so that it can be run easily by name on windows but it is ok to either leave it as that on other platforms, or rename it appropriately.

On unix-like platforms it can be called with a bourne shell such as sh or bash.

On windows, it can also be called with sh or bash if they are available - but the usual method would be to run it under cmd.exe initially just by opening a cmd prompt and running it. This will run some windows batch script to automatically generate a corresponding .ps1 file and execution will switch to powershell 5 or powershell 7 (pwsh) if available. Subsequently the command can be run directly from powershell.

Whether called from Bourne shell, or cmd.exe or powershell - the usual payload would be your wrapped Tcl code - but it's also possible for powershell or sh/bash to be the primary payload script. Any of these languages could easily be used to detect and launch other scripts/utilities that you may distribute with your app.