Creating Package Sources

A package source allows you to view and edit attributes of a package (such as files, scripts, privileges, and localizations) before it is built. Once a package source exists for a group of files, you can make modifications and build the package as many times as necessary.

There are several ways to create a package source:

  • Take snapshots—Composer takes before and after snapshots of the file system and creates a package source based on the changes. This method allows you to monitor installations in all locations on the drive. If necessary, you can also quit Composer or log out/reboot during the installation process.

  • Monitor the file system—Composer uses the File System Events (FSEvents) framework to monitor any changes that are made to the file system during the installation process. Next, Composer creates a package source based on the changes. This method does not allow you to quit Composer or log in/reboot during the installation process. In addition, an excess of file system activity can cause FSEvents to miss changes.

  • Use pre-installed software—You can use software that is pre-installed on your computer to create a package source based on package manifests. This method allows you to create package sources without monitoring the installation process.

  • Use user environment settings—Package manifests can also be used to capture settings configured on your computer, such as Dashboard, Display, and Global Preference settings.

  • Drag contents from the Finder—A simple drag-and-drop process allows you to create a package source from files already installed on your computer.

  • Use an existing package—Composer allows you to make modifications to an existing package or convert between the PKG and DMG package formats.

Taking Snapshots

If the files you want to package are not already installed on the drive, Composer can take a snapshot of the file system before and after the files have been installed and create a package source based on the changes.

Composer can take two kinds of snapshots:

  • Normal snapshots—These snapshots capture any new files on the drive. These snapshots can take anywhere from ten seconds to several minutes depending on your hardware and the number of files on the drive.

  • New and modified snapshots—These snapshots capture any new files on the drive, as well as any files that have been modified. These snapshots can take longer than normal snapshots, since Composer records the modifications date of each file while performing the snapshot.

There are several benefits to using the snapshot approach:

  • Composer monitors installations in all locations on the drive.

  • You can quit Composer during the installation process.

  • You can log out or reboot during the installation process.

  • If you delete a file while making modifications to a package source, it may be possible to restore the deleted file. For more information about restoring deleted files, see Adding Scripts to Package Sources.

  1. Open Composer and authenticate locally.

  2. In the toolbar, click New images/download/thumbnails/49217938/C_New.png .

  3. Under the Monitor Installation heading in the sidebar, select Snapshot.

  4. Select Normal Snapshot or New & Modified Snapshot and click Next.

    images/download/attachments/49217938/Normal_Snapshot.png
  5. Enter a name for the package and click Next.
    images/download/attachments/49217938/Package_Name.png

  6. Install and configure your software, and then click Create Package Source to initiate the “after” snapshot.

    images/download/attachments/49217938/Create_Package_Source.png

Monitoring the File System

When creating a package source using file system monitoring, Composer uses the File System Events (FSEvents) framework that is built into macOS to monitor any changes that are made to the file system. Each time a change is made, FSEvents receives a notification. After your software is installed, Composer analyzes the changes and creates a package source based on the results.

The following limitations should be taken into consideration when monitoring the file system to create a package source:

  • You cannot quit Composer during the installation process.

  • You cannot log in or restart during the installation process.

  • It is possible for FSEvents to miss events if there is too much file system activity.

  1. Open Composer and authenticate locally.

  2. In the toolbar, click New images/download/thumbnails/49217938/C_New.png .

  3. Under the Monitor Installation heading in the sidebar, select Snapshot.

  4. Select Monitor File System Changes and click Next.

    images/download/attachments/49217938/Monitor_File_System_Changes.png
  5. Enter a name for the package and click Next.
    images/download/attachments/49217938/Package_Name.png

  6. Install and configure your software, and then click Create Package Source.

    images/download/attachments/49217938/Create_Package_Source.png

Creating Package Sources From Pre-Installed Software

You can create a package source from software that is currently installed on your computer if Composer contains a package manifest for the software.

Note: If there is software you would like added to the package manifest options in Composer, email your recommendations to diffs@jamf.com.

  1. Open Composer and authenticate locally.

  2. In the toolbar, click New images/download/thumbnails/49217938/C_New.png .

  3. Under the Package Manifests heading in the sidebar, select Pre-Installed Software.
    Composer scans the file system and displays icons for the software it can package.

    Note: To view package manifests for software that is not installed on the computer, click the disclosure triangle next to Pre-Installed Software and select Not Installed.

  4. Select the items you want to create a package source from and click Next.

    images/download/attachments/49217938/Software.png

Creating Package Sources from the User Environment Settings

You can create a package source that captures the look and feel of your computer’s interface, such as Dashboard, Display, and Global Preference settings. If Composer contains a package manifest for the setting you want to capture, you can create a package source from it.

To determine which of your current settings Composer can package, select User Environment under the Package Manifests heading. Composer scans the file system and displays icons for the settings that it has package manifests for.

Note: If there is a setting you would like added to the package manifest options in Composer, email your recommendations to diffs@jamfsoftware.com.

  1. Open Composer and authenticate locally.

  2. In the toolbar, click New images/download/thumbnails/49217938/C_New.png .

  3. Under the Package Manifests heading in the sidebar, select User Environment.

  4. Select the items you want to create a package source from and click Next.

    images/download/attachments/49217938/User_Environment.png

Creating Package Sources by Dragging Contents from the Finder

If you already know which item you want to package, you can bypass the snapshot or monitoring process by dragging items from the Finder to the Sources list in Composer.

There are a few ways Composer handles these items:

  • If the item is a package (DMG, PKG, or MPKG), it is listed in the sidebar under the Packages heading.

  • If the item is a folder, the root of the folder is used as the root of the package if it is one of the following directories:
    /Applications/
    /Developer/
    /Library/
    /System/
    /Users/
    /bin/
    /private/
    /sbin/
    /usr/

  • Any other items are copied to their current location.

Note: This is the equivalent of a PreBuilt package in earlier versions of Composer.

Creating Package Sources from Existing Packages

Composer allows you to rebuild an existing package (PKG, DMG, or MPKG) by converting it to a package source. After converting it to a package source, you can make changes to its contents and save a new copy of the package.

  1. Open Composer and authenticate locally.

  2. Drag the package you want to convert from the Finder to the sidebar in Composer.
    The package appears under the Packages heading.

  3. Select the package and click Convert to Source.

    images/download/attachments/49217938/Convert_to_Source.png

    When the conversion is complete, a new package source is listed in the sidebar under the Sources heading.

    images/download/attachments/49217938/New_Package_Source_Location.png

Related Information

For related information, see the following Jamf Knowledge Base video:

Building a Package Using Snapshots in Jamf Composer

For related information, see the following sections in this guide:

Copyright     Privacy Policy     Terms of Use     Security
© copyright 2002-2020 Jamf. All rights reserved.