postmake

module
v0.0.0-...-66e247a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2025 License: MIT

README

Logo

Go

Postmake

postmake is a tool made generate installer scripts Such as Unix Shell Scripts,Inno Setup Scripts and GitHub Actions from a lua script. Lastly a plugin system for any other installer formats not built in.

The postmake script is an lua script allowing you to make many installers using one script or use logic to your customized your installers.

Useage

your postmake.lua

local innosetup = postmake.loadplugin("internal/innosetup")

local InnoAppID = "###{INNOAPPID}###"

postmake.appname = "app"
postmake.appversion = "0.0.1"
postmake.output = "./output/install"

postmake.appinstalldir = "~/.app"

-- Short Hands
local all = postmake.allconfig
--local unix = postmake.foros("unix")
--local winodows = postmake.foros("winodws")
--local linux = postmake.foros("linux")
--local macos = postmake.foros("macos")

--- Configs
local win = postmake.newconfig("windows", "x64")
local gnu = postmake.newconfig("linux", "x64")
local mac = postmake.newconfig("macos", "x64")

local winsmainprogram = postmake.installdir() .. "./" .. postmake.appname .. ".exe"

win.addfile("main.exe", winsmainprogram)
gnu.addfile("main", postmake.installdir() .. "./" .. postmake.appname)
mac.addfile("main_macos", postmake.installdir() .. "./" .. postmake.appname)

all.addfile("License.md", postmake.installdir() .. "./License.md")

postmake.make(shellscript, { gnu, mac }, {});
postmake.make(innosetup, { win }, { AppId = InnoAppID, LaunchProgram = winsmainprogram, LicenseFile = "License.md" });

then run postmake build.

Install

Windows

Go to releases and download the and run the postmakeSetup.exe.

Unix(Mac or Linux)

bash -c "$(curl -L https://github.com/LostbBlizzard/postmake/releases/latest/download/install.sh)"

or go to releases and download the install.sh and run it in your shell.

GitHub Actions

Repository GitHub Marketplace

Docs

Documentation Command Line Tool Lua API

Other Notes

  • All Installation methods were all made using the program.
  • Your may use the postmake.lua at the project root for inspiration.
  • This Project is inspired by premake.

Directories

Path Synopsis
cmd
postmake command
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL