Skip to content

Instantly share code, notes, and snippets.

@mathiasbynens
Forked from subtleGradient/appify
Created November 12, 2010 13:46
Show Gist options
  • Select an option

  • Save mathiasbynens/674099 to your computer and use it in GitHub Desktop.

Select an option

Save mathiasbynens/674099 to your computer and use it in GitHub Desktop.
appify — create the simplest possible Mac app from a shell script
#!/bin/bash
if [ "$1" = "-h" -o "$1" = "--help" -o -z "$1" ]; then cat <<EOF
appify v3.0.1 for Mac OS X - http://mths.be/appify
Creates the simplest possible Mac app from a shell script.
Appify takes a shell script as its first argument:
`basename "$0"` my-script.sh
Note that you cannot rename appified apps. If you want to give your app
a custom name, use the second argument:
`basename "$0"` my-script.sh "My App"
Copyright (c) Thomas Aylott <http://subtlegradient.com/>
Modified by Mathias Bynens <http://mathiasbynens.be/>
EOF
exit; fi
APPNAME=${2:-$(basename "$1" ".sh")}
DIR="$APPNAME.app/Contents/MacOS"
if [ -a "$APPNAME.app" ]; then
echo "$PWD/$APPNAME.app already exists :("
exit 1
fi
mkdir -p "$DIR"
cp "$1" "$DIR/$APPNAME"
chmod +x "$DIR/$APPNAME"
echo "$PWD/$APPNAME.app"
@Inthenew

Copy link
Copy Markdown

don't do /Users/--------/Desktop/appify.sh: Permission denied
instead do sh /Users/--------/Desktop/appify.sh

@mgdmdz

mgdmdz commented Jul 28, 2022

Copy link
Copy Markdown

Hi, is there an option to run the app as hidden?

@80N35

80N35 commented Aug 3, 2022

Copy link
Copy Markdown

This is the only "appify" script that is working on Catalina. Thanks, friend. Do you want to fork Conky-Mac with me. I have great configs but really haven't done serious code since the 90's in LA.

@craigfrancis

Copy link
Copy Markdown

On an ARM64 Mac, it kept prompting me to install Rosetta; adding the LSArchitecturePriority to the /Contents/Info.plist seems to work (although this is cached somehow, so I had to change the CFBundleIdentifier to get Rosetta to check again):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleExecutable</key>
	<string>run</string>
	<key>CFBundleIdentifier</key>
	<string>com.testing</string>
	<key>LSArchitecturePriority</key>
	<array>
		<string>arm64</string>
	</array>
	<key>LSRequiresNativeExecution</key>
	<true/>
</dict>
</plist>

@janbill292-ctrl

Copy link
Copy Markdown

Creating lightweight Mac applications from shell scripts is an efficient way to simplify software distribution and improve the user experience. As developers continue building tools for the Apple ecosystem, providing clear installation methods becomes equally important. Resources explaining Direct Install Delta Executor iOS help users understand how compatible iOS applications can be installed quickly, complementing the broader goal of making software deployment faster and more accessible across Apple devices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment