Installation Q & A
Q
Are there known issues in Installer.app?
A
Yes, here is a list of some of the issues you may encounter when using Installer.app:

User Experience

  • Installer.app does not handle the current user's home domain correctly (FB7469742)

    Description:

    According to the Distribution XML Reference documentation, it's possible to indicate what domains the packages inside a distribution may be installed into.

    The issue is that when you indicate that the only possible domain is the current user's home directory, Installer.app user experience is buggy (or to be more descriptive: fucked up):

    • In the Destination Select step, the Install for me only row is selected by default BUT the Continue button is disabled and an error message indicates that "You cannot install xxxxx in this location. The xxxxx installer does not allow its software to be installed there."
      Incorrect
      Fig.A - Destination Select state - OS X 10.10
      Incorrect
      Fig.B - Destination Select state - macOS 10.14
    • If you click the Install for me only row, the Continue button is enabled and the error message is replaced by an informative message which indicates that "Installing this software requires …. You have chosen to install this software in your home folder. Only the current user will be able to use this software."
      Correct
      Fig.C -Destination Select state after clicking on the already selected row

    Steps to reproduce:

    1. Start up your Mac. (*)
    2. Log in. (*)
    3. Create a distribution that only enables the current user to install the distribution in his/her home directory.
    4. Open the distribution in Installer.app. (*)
    5. Click Continue until you reach the Destination Select step. You may need to click on Change Install Location…" at the Installation Type step in some cases.(*)

    * If you don't know how to perform this step, you're probably the Apple employee who reviewed this Radar/Feedback issue and you should require the assistance of one of your colleagues in the Apple Support team.

    Related issue(s):

    -

    Environment:

    Mac OS X 10.7 | OS X 10.8, 10.9, 10.10, 10.11 | macOS 10.12 10.13, 10.14, 10.15

    Simple sample:

    FB7469742.zip




Installer Plugins

  • InstallerSection shouldLoad method is not called (or taken into account) in macOS Catalina (FB7746101)

    Description:

    According to the InstallerSection documentation, the shouldLoad method can be overriden to determine if a section will be further loaded, i.e. if it will be displayed.

    /*!
    	@method     shouldLoad
    	@discussion Called when a section is first about to be fully loaded.  By default this method
    				returns YES.  A Subclass can override this method and determine at runtime if the
    				section makes sense.  Return NO and the section will not be further loaded.  sections are
    				never fully unloaded.
    */
    @property (NS_NONATOMIC_IOSONLY, readonly) BOOL shouldLoad;
    

    The issue is that starting with macOS Catavista, the value returned by this method is either not taken into account or this method is not called anymore. This is what normal individuals call a regression.

    Incorrect
    Fig.D - Now, you see me - macOS 10.15
    Correct
    Fig.E - Now, you don't - OS X 10.10

    Steps to reproduce:

    1. Start up your Mac.
    2. Log in.
    3. Create a distribution with an Installer plugin that subclasses the InstallerSection class and override - shouldLoad to return NO.
    4. Open the distribution in Installer.app.

    Related issue(s):

    -

    Environment:

    macOS 10.15

    Simple sample:

    FB7746101.zip




Reporting

  • Fake Package Authoring Errors are reported by Installer.app (FB7741762)

    Description:

    In macOS 10.14 and later, Installer.app is a little liar when it comes to the background element of the Distribution XML file of a .pkg distribution.

    Whether the background element exists or not in the XML file, Installer.app will complain about the MIME type of of some attributes:

    Jun 23 19:40:42 macpro Installer[1460]: @(#)PROGRAM:Install PROJECT:Install-1000
    Jun 23 19:40:42 macpro Installer[1460]: @(#)PROGRAM:Installer PROJECT:Installer-934.2
    Jun 23 19:40:42 macpro Installer[1460]: Hardware: MacPro6,1 @ 3.70 GHz (x 8), 12288 MB RAM
    Jun 23 19:40:42 macpro Installer[1460]: Running OS Build: Mac OS X 10.14.6 (18G71a)
    Jun 23 19:40:42 macpro Installer[1460]: Env: TMPDIR=/var/folders/tx/t93c7m9d0m3g7l1v41zl7n100000gn/T/
    Jun 23 19:40:42 macpro Installer[1460]: Env: __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0
    Jun 23 19:40:42 macpro Installer[1460]: Env: SHELL=/bin/bash
    Jun 23 19:40:42 macpro Installer[1460]: Env: HOME=/Users/stephane
    Jun 23 19:40:42 macpro Installer[1460]: Env: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.DwgSbtrt1t/Render
    Jun 23 19:40:42 macpro Installer[1460]: Env: SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.ORvtxY8Taz/Listeners
    Jun 23 19:40:42 macpro Installer[1460]: Env: PATH=/usr/bin:/bin:/usr/sbin:/sbin
    Jun 23 19:40:42 macpro Installer[1460]: Env: LOGNAME=stephane
    Jun 23 19:40:42 macpro Installer[1460]: Env: XPC_SERVICE_NAME=com.apple.installer.29308
    Jun 23 19:40:42 macpro Installer[1460]: Env: USER=stephane
    Jun 23 19:40:42 macpro Installer[1460]: Env: XPC_FLAGS=0x0
    Jun 23 19:40:42 macpro Installer[1460]: testFakeErrors Installation Log
    Jun 23 19:40:42 macpro Installer[1460]: Opened from: /Volumes/Beta OS/Users/stephane/Desktop/testFakeErrors/build/ testFakeErrors.pkg
    Jun 23 19:40:42 macpro Installer[1460]: Package Authoring Error: <background_scaling> has an unsupported MIME type: X-NSObject/NSNumber
    Jun 23 19:40:42 macpro Installer[1460]: Package Authoring Error: <background_alignment> has an unsupported MIME type: X-NSObject/NSNumber
    Jun 23 19:40:42 macpro Installer[1460]: Package Authoring Error: <layout-direction> has an unsupported MIME type: X-NSObject/NSNumber

    ...

    Steps to reproduce:

    1. Start up your Mac.
    2. Log in.
    3. Create a simple distribution with no background image.
    4. Open the distribution in Installer.app.
    5. Choose Window > Installer Log.
    6. Choose Show All Logs in the Detail Level popup button menu.

    Related issue(s):

    -

    Environment:

    macOS 10.14, 10.15




Installation options

  • The Overwrite Directory permission flag is not taken into account in macOS 10.14, 10.15. (FB7709612)

    Description:

    Description forthcoming.

    Impacted Mac OS X/OS X/macOS versions:

    macOS 10.14, 10.15

Revision History
06/23/20Added Fake Package Authoring Errors bug
06/22/20First version

Site Map

Copyright 2020 Stéphane Sudre. All rights reserved.