Created
July 5, 2011 20:05
-
-
Save demonbane/1065791 to your computer and use it in GitHub Desktop.
Create a Fluid-style app launcher for single-window Chrome instances on OSX
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
echo "What should the Application be called (no spaces allowed e.g. GCal)?" | |
read inputline | |
name="$inputline" | |
echo "What is the url (e.g. https://www.google.com/calendar/render)?" | |
read inputline | |
url="$inputline" | |
echo "What is the full path to the icon (e.g. /Users/username/Desktop/icon.png)?" | |
read inputline | |
icon="$inputline" | |
chromePath="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" | |
appRoot="/Applications" | |
# various paths used when creating the app | |
resourcePath="$appRoot/$name.app/Contents/Resources" | |
execPath="$appRoot/$name.app/Contents/MacOS" | |
profilePath="$appRoot/$name.app/Contents/Profile" | |
plistPath="$appRoot/$name.app/Contents/Info.plist" | |
# make the directories | |
mkdir -p "$resourcePath" "$execPath" "$profilePath" | |
# convert the icon and copy into Resources | |
if [ -f "$icon" ] ; then | |
sips -s format tiff "$icon" --out "$resourcePath/icon.tiff" --resampleHeightWidth 128 128 >& /dev/null | |
tiff2icns -noLarge "$resourcePath/icon.tiff" >& /dev/null | |
fi | |
# create the executable | |
cat >"$execPath/$name" <<EOF | |
#!/bin/sh | |
exec "$chromePath" --app="$url" --user-data-dir="$profilePath" "\$@" | |
EOF | |
chmod +x "$execPath/$name" | |
# create the Info.plist | |
cat > "$plistPath" <<EOF | |
<?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>$name</string> | |
<key>CFBundleIconFile</key> | |
<string>icon</string> | |
</dict> | |
</plist> | |
EOF | |
@nhodges, THANK YOU!
Thank you! Just what I was looking for. Now I can use WhatsApp web as an 'application'.
I've used this script to make a GUI: https://github.com/victor-torres/quickwebapp.
Is there a way to get notifications & app name in the menubar working ?
Ditto both these questions.
- Click on the 'Raw' button. Download and save the file to your Desktop.
- Open Terminal.app
- In terminal prompt, make the file executable by running the following command (copy paste the command and hit return key)
chmod +x ~/makeapp.sh
- Execute the script
~/makeapp.sh
Great script! But how do I prevent links to open in that new app instead of the standard chrome profile? If all links I open in my new Gmail app open there instead of my browser that kind of defeats the purpose of such an app. Any ideas? Can I force links to open in my standard Chrome profile?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@lkingsella Open your app, press CMD + N (or CTRL + N on Windows) to open a new window with the same profile, then install the 1Password extension.