rexxw: bootstrapping wrapper for rexxfile projects #18
Labels
No labels
bug
dependencies
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
rust
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
navicore/patch-rexx#18
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?
Summary
A
rexxwwrapper script (analogous to Gradle'sgradlew) that projects can vendor so that./rexxfile buildworks without requiringrexxto be pre-installed.Motivation
A
rexxfileis a shebang-executable REXX script that serves as a task runner (likejustfileorMakefile). The problem:#!/usr/bin/env rexxrequires the interpreter to already be installed. This is a bootstrapping problem — especially for patch-rexx itself, where you can't userexxto buildrexx.Gradle solved this elegantly with
gradlew— a small shell script checked into the project that downloads/installs the build tool on first run. Arexxwwrapper would do the same for REXX-based task runners.Proposed Design
A
rexxwshell script that:rexxis already available in$PATHcargo install patch-rexx(fallback, requires Rust toolchain).rexx/bin/rexx)rexxinterpreter, forwarding all arguments to therexxfileUsage
Projects would vendor
rexxwalongside theirrexxfile:Prerequisites
.rexx-versionfile or a variable inrexxw)Open Questions
rexxwbe a POSIX shell script, or also provide a.bat/PowerShell variant for Windows?~/.rexx/bin/(user-global) vs.rexx/bin/(project-local)?.rexx-versionchanges?rexxwitself be generated by arexx initcommand?