Qbs Manual | List of Modules | Module ib

Qbs 1.10.1

# Module ib

The `ib` module contains properties and rules for building Interface Builder documents, storyboards, asset catalogs, and icon sets.

This module is only available on Apple platforms.

## General Properties

Property | Type | Since | Default | Description
--- | --- | --- | --- | ---
warnings | bool | 1.1 | `true` | Whether to print warnings when compiling. Does not apply to icon sets.
errors | bool | 1.1 | `true` | Whether to print warnings when compiling. Does not apply to icon sets.
notices | bool | 1.1 | `true` | Whether to print warnings when compiling. Does not apply to icon sets.
flags | stringList | 1.1 | undefined | Additional flags to pass to the underlying tool (ibtool, actool, iconutil).

## Properties Specific to NIBs and Storyboards

Property | Type | Since | Default | Description
--- | --- | --- | --- | ---
ibtoolName | string | 1.3 | `"ibtool"` | Name of the ibtool binary used to compile NIBs and storyboards. This should not normally need to be changed.
ibtoolPath | string | 1.3 | `ibtoolName` | Directory where the ibtool binary is located. This should not normally need to be changed.
flatten | bool | 1.1 | `true` | Compiles XIBs and storyboards into flattened (non-wrapper) files. Set to `false` to preserve editability of the resulting nib and storyboard bundles in Interface Builder. This property should not normally need to be changed.
module | string | 1.3 | `undefined` | Sets the name of the module that the nib or storyboard is a part of. Requires Xcode 6 or newer.
autoActivateCustomFonts | bool | 1.3 | `true` | Instructs the ibtool compiler to add custom fonts to the application's Info.plist when compiling XIBs and storyboards, which will cause the fonts to activate upon application launch. Requires Xcode 6 or newer.

## Properties Specific to Asset Catalogs

Property | Type | Since | Default | Description
--- | --- | --- | --- | ---
actoolName | string | 1.3 | `"actool"` | Name of the actool binary used to compile asset catalogs. This should not normally need to be changed.
actoolPath | string | 1.3 | `actoolName` | Directory where the actool binary is located. This should not normally need to be changed.
appIconName | string | 1.3 | `undefined` | Name of the resource in the asset catalog that will be used as the application's icon. Used to generate the partial Info.plist which will be merged into the resulting app. If this property is `undefined`, no application icon will be specified.
launchImageName | string | 1.3 | `undefined` | Name of the resource in the asset catalog that will be used as the application's launch image. Used to generate the partial Info.plist which will be merged into the resulting app. If this property is `undefined`, no launch image will be specified. Only applies to iOS applications.
compressPngs | bool | 1.3 | `true` | Whether to compress PNG image files when building asset catalogs.

## Properties Specific to Icon Sets

Property | Type | Since | Default | Description
--- | --- | --- | --- | ---
iconutilName | string | 1.3 | `"iconutil"` | Name of the iconutil binary used to compile icon sets. This should not normally need to be changed.
iconutilPath | string | 1.3 | `iconutilName` | Directory where the iconutil binary is located. This should not normally need to be changed.

## Relevant File Tags

Tag | Auto-tagged File Names | Since | Description
--- | --- | --- | ---
`"assetcatalog"` | `*.xcassets` | 1.3 | This tag is attached to directories that will be compiled into compiled asset catalog archives (.car files) on supported platforms, or a collection of loose resource files. The resulting files will be automatically tagged `bundle.input`. If the current product is a bundle, the files will be included in the bundle's resources directory.
`"iconset"` | `*.iconset` | 1.3 | This tag is attached to directories that will be compiled into Apple ICNS files. The resulting files will be automatically tagged `bundle.input`. If the current product is a bundle, the files will be included in the bundle's resources directory.
`"nib"` | `*.nib`, `*.xib` | 1.1 | This tag is attached to "NIB" and "XIB" files that will be compiled. The output may be a flat file or a bundle (directory structure). The resulting files will be automatically tagged `bundle.input`. If the current product is a bundle, the files will be included in the bundle's resources directory.
`"png"` | `*.png` | 1.9 | This tag is attached to PNG files that may be converted into multi-resolution TIFFs. Source files should adopt the @2x naming convention in order to be properly grouped. The resulting files will be given the `tiff` file tag.
`"storyboard"` | `*.storyboard` | 1.3 | This tag is attached to storyboard files that will be compiled. The output may be a flat file or a bundle (directory structure). The resulting files will be automatically tagged `bundle.input`. If the current product is a bundle, the files will be included in the bundle's resources directory.