Branding the Omnis runtime
This guide explains how to change the icon, name, version, copyright, company and other identifying information in the Omnis runtime to match your app.
These instructions are written for Omnis Studio 10.0 or later but may be adapted to previous versions.
- Icon: Requirements
- Icon: macOS
- Icon: Windows
- App Name, Copyright, and Version: macOS
- App Name, Copyright, and Version: Windows
Where possible this guide will use tools built-in to the operating system or free tools. However, customizing the Windows runtime requires a resource editor, and a commercial tool may be required to produce the desired results.
This guide will use Resource Tuner 2, but an alternate resource editor may work.
If you want to automate these tasks then consider licensing Resource Tuner Console. Many of these steps can be programmed into a script that Resource Tuner Console can use to brand new Omnis runtimes.
For both macOS and Windows you will need your application icon in a number of resolutions. You can use a single large icon and convert it to smaller sizes, or create individual sizes with varying levels of detail.
In all cases it’s best to use a PNG file.
Using a single file
Using individual files
- 48x48 (Windows only)
The application icon is managed through a
.icns file which contains the icon in numerous sizes. There is a built-in
iconutil command that can make a
from a folder containing individual files at different sizes. This folder is called an iconset.
Start by creating the iconset folder as
omnis.iconset on your Desktop using either the Finder or the Terminal:
Put your icons in the
omnis.iconset folder using these names and sizes:
If using a single image, copy it into
firstname.lastname@example.org. You can then run these commands in the terminal to create the additional sizes:
sips -Z 512 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_512x512.png cp ~/Desktop/omnis.iconset/icon_512x512.png ~/Desktopfirstname.lastname@example.org sips -Z 256 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_256x256.png cp ~/Desktop/omnis.iconset/icon_256x256.png ~/Desktopfirstname.lastname@example.org sips -Z 128 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_128x128.png cp ~/Desktop/omnis.iconset/icon_128x128.png ~/Desktopfirstname.lastname@example.org sips -Z 64 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_64x64.png cp ~/Desktop/omnis.iconset/icon_64x64.png ~/Desktopfirstname.lastname@example.org sips -Z 32 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_32x32.png cp ~/Desktop/omnis.iconset/icon_32x32.png ~/Desktopfirstname.lastname@example.org sips -Z 16 ~/Desktopemail@example.com --out ~/Desktop/omnis.iconset/icon_16x16.png
You should end up with a folder that looks like this:
You can now make your
omnis.icns file using the
iconutil -c icns ~/Desktop/omnis.iconset
This will produce a
omnis.icns file you can use to brand your runtime.
This file should be placed in your runtime under
Contents/Resources/omnis.icns and will change the icon on the runtime.
There are three locations on Windows that need the icon updated:
- Icon 2033 in your iconset
omnisdat.dll need to be modified with Resource Tuner or another resource editor. These require a
.ico file containing various sizes of your icon.
The iconset icons can simply be replaced on disk using the appropriately-sized PNG files.
An easy way build the
.ico file is a web-based tool that resizes and packages a
.png into a
.ico, such as icoconvert.com. To use icoconvert.com upload a PNG of your icon that is at least 256x256.
Under the icon format choose Custom sizes, then Multi-size in one icon. Check these sizes:
Click the Convert ICO button, then download your icon.
To apply the icons, open
omnis.exe with Resource Tuner. Navigate to Icon Group, then 5: English (United Kingdom). Right-click on this entry and choose Resource Tools then Add or Replace Icon within Icon Group.
Click Open on the dialog that appears and select the
.ico file you downloaded. Choose the Swap all option and click OK.
Save your changes in Resource Tuner.
Repeat these steps in Resource Tuner to change the icons in
omnisdat.dll. If you are deploying both 32-bit and 64-bit runtimes, you will need to apply these steps to these two files for each architecture.
The final icon to customize is the one appearing in the top left corner of the Omnis application window. This is managed with the Omnis iconsets introduced in Studio 8.0 through the icon with ID 2033.
To customize this icon you need to replace these PNG files in the studio iconset with files containing your icon:
App Name, Copyright, and Version: macOS
There are four places to rename the Omnis runtime to have your app’s name, company, copyright, and version:
- The main
InfoPlist.stringsfile for each bundled language
Localizable.stringsfile for each bundled language
Rename the app bundle to have your application’s name by as changing the application name in the Finder.
Info.plist and InfoPlist.strings
Info.plist file is found inside the app bundle at
Contents/Info.plist and can be edited with a text editor or Xcode. There is an
InfoPlist.strings file in
Contents/Resources/[language].lproj/ for each language you support in your application. For English, the path is
Contents/Resources/English.lproj/InfoPlist.strings. For French, it would be
Contents/Resources/French.lproj/InfoPlist.strings, and so on.
You must retain the primary
Info.plist file and folders for each language you wish to support. If you do not plan to support all included languages, you can remove the corresponding folder from
Contents/Resources. You should always retain
English.lproj since that is the primary language used when developing Omnis Studio.
Each of these files contains one or more keys you need to adjust to contain your application’s branding. The keys listed in this table link to Apple’s documentation on that specific key.
||A string with the copyright notice for the bundle. Apple replaces this key with
||A unique identifier for your app used by the OS (*see note below)|
||The short name of the bundle, less than 16 characters|
||Your app’s version followed by the copyright|
||Your app’s version (** see note below)|
CFBundleIdentifier should be formated as a reverse DNS string identifying your company and the bundle. For example, an app called Coffee Picker from Acme, Inc. might have a bundle identifer of:
Note the bundle identifier should only include alphanumeric (A-Z,a-z,0-9), hyphen (-), and period (.) characters per Apple’s specifications.
CFBundleVersion uses three non-negative, period-separated integers with the first integer being greater than zero—for example, 3.1.2. See Apple’s documentation for details on the meaning of each number.
This file is located at
Contents/Resources/English.lproj/Localizable.strings and can be edited with a text editor or Xcode. Adjust these entries:
||Application name. This affects the application menu entries|
||The folder under
App Name, Copyright, and Version: Windows
There are two locations to customize the Windows runtime with your application name:
omnis.exe file to use your app’s name. This can be accomplished in Windows File Explorer.
Edit your exe file with a resource editor like Resource Tuner. There are several entries to edit with your application name under Version 1:
||Your version formatted with 4 numbers. Use a 0 for extra numbers, such as 184.108.40.206 for version 3.1|
||Your version without extra formatting|
||Your company’s name|
||Your application’s name followed by the architecture and “core executable”|
||Your application’s name|
Also set the File Version and Product Version data. In Resource Tuner this is available after selecting Version 1 in the lower left-hand corner under Object Inspector. These values should match the
You need to rename the
omnisdat.dll file using a specific convention based on your custom name for
omnis.exe. Use the first 8 characters from your renamed
omnis.exe file name, then add
dat.dll to get the new name for
For example, if you rename
Coffee Picker.dll change the
omnisdat.dll file to
Edit your renamed
omnisdat.dll file with a resource editor like Resource Tuner. There are two entries to change under String Table.
|1||1||Your application’s name|
|32||499||The folder under