MAKESH(1)

πŸ’– MAKESH(1) β€” like, the manual page but make it cute πŸ’–

okay bestie, so this is makeSH, which lives in the General Commands Manual section 1 (you know, the "commands you type at a shell" section, iykyk). Buckle up, it's giving build-tool fairy godmother 🧚✨


✨ NAME ✨

makeSH β€” a .SH script maker πŸŽ€


🌸 SYNOPSIS 🌸

makeSH files

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea: makeSH looks at one or more scripts and spits out a .SH file that, when you run it under sh, will literally recreate the original script. Like a photocopier but for scripts. Iconic behavior honestly πŸ‘‘

The .SH script it produces has two sections, and both of them contain code that's destined for the output. Here's the difference, and it matters:

  • The first section gets variable substitutions done on it β€” taking values from config.sh πŸ’…
  • The second section does not. No substitutions, no notes. Just vibes.

Now, makeSH has no idea which variables you actually want substituted (it's not a mind reader, bestie 😭), so it just throws the whole script into the second section. Every last line. It's up to you to go in there and insert any variable substitutions you want in the first section, for any values you want pulled from config.sh. That's your job, not its job. The way that division of labor is so real.

🫢 Pro tip from the page itself: you should run makeSH from within your top-level directory, and use the relative path to the file as an argument. Why? So that the "Extracting ..." line printed while running the produced .SH file later on will give that same path. Consistency is the moment. Periodt.

πŸ‘‘ AUTHOR πŸ‘‘

Larry Wall <lwall@netlabs.com> β€” yes, that Larry Wall, the legend himself 🌈⭐


πŸ”₯ SEE ALSO πŸ”₯

Go read those too, they're all part of the same little ecosystem and honestly the lore runs deep πŸ§šπŸ’œ


πŸ’€ BUGS πŸ’€

Okay so, not me exposing the author but here's what the page literally says: it could assume that variables from metaconfig's Glossary need to be initialized in the first section... but the author says they're too lazy to make it do that πŸ™ˆ

So like. That's the whole bug report. We respect the honesty. No cap. πŸ“


and that's the whole page, bestie β€” written by Larry Wall, part of the LOCAL collection, and yeah, no version number or date on this one, she's timeless πŸ’–βœ¨πŸŒΈπŸ¦‹πŸŽ€πŸ’…πŸ«Ά

πŸ“¦ where this page comes from