Home Forums Software InstaDMG custom Office 2008 and iLife installs

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #372689
    benhur
    Participant

    Thanks to the info here and the webcast I have been able to make new images with a Leopard base OS, the Apple Updates, and the full Office 2008 and iLife 08 installs.

    I am wondering though how to go about cusomizing the installs for Office 2008 and iLife or any other apps already in package based format (iWork, etc.)

    For example, in the 2008 install I would normally deselect the proofing tools for all the languages except for English. In this workflow, is it as simple as removing those specific packages from the Office 2008 install package?

    #372703
    Patrick Fergus
    Participant

    Regarding Office ’08, in [i]theory[/i] you could use an InstallerChoices.xml with Leopard and the standard Office ’08 installer. Unfortunately, the current revision of InstaDMG doesn’t support InstallerChoices for CustomPKGs.

    You probably would be better off rolling your own package for Office ’08–more work unfortunately, but control over what the installer is doing. And once you are happy with your Office ’08 CustomPKG, you don’t have to touch it until Microsoft revises Office.

    – Patrick

    #372727
    benhur
    Participant

    I was afraid of that. I was wondering about the installerchoices.xml being used for other installs as well. Thanks for info, maybe iLife, iWork and Office will be supported in future versions.

    That was the nice thing about the former imaging process. You could very granular with your image and know exactly what you were getting, as long as you were willing to put in the time.

    I get the instadmg benefits. But I wonder about the level of detail I can get with this workflow.

    As evident with Office 2008, if the applications are in package format you may have to repackage it if you don’t want the full install. Still, it seems worth it as more people adopt this method and come up with solutions.

    I’m learning however and still have questions about “rolling your own.”

    What are the best practices and tools for this? Are there certain situations where you would use PackageMaker or is a program like Composer the best solution. To just snapshot and build a package seems like a certain way to get what you want in a package for that level of granularity that existed in the previous way of imaging. Thanks for all the help.

    #372728
    larkost
    Participant

    If you want to try something out, I think I have some code that will allow InstaDMG to use InstallerChoices.xml files beyond the OS level one. I do have to note that I have not checked the InstallerChoices sections as well at the rest, because I am not using InstallerChoices.xml files at this point. However, for the brave:

    first replace the lines:
    [code]
    install_system
    install_updates
    [/code]
    with
    [code]
    install_packages_from_folder “$UPDATE_FOLDER”
    install_packages_from_folder “$CUSTOM_FOLDER”
    [/code]

    then replace the “install_updates” and “install_custom” functions with this one:

    [code]# install packages from a folder of folders (01, 02, 03…etc)
    install_packages_from_folder() {
    GROUP_FOLDER=”$1″

    /bin/date “+$CREATE_DATE %H:%M:%S: Beginning Update Installs from $GROUP_FOLDER” | /usr/bin/tee -a “$LOG_FILE” “$PKG_LOG” >&3

    /bin/ls -A1 “$GROUP_FOLDER” | /usr/bin/awk “/^[[:digit:]]+$/” | while read ORDERED_FOLDER
    do
    if [ -h “$GROUP_FOLDER/$ORDERED_FOLDER/InstallThisOneOnly” ]; then
    FILE_LOCATION=`/usr/bin/readlink “$GROUP_FOLDER/$ORDERED_FOLDER/InstallThisOneOnly”`
    if [ “$OS_REV” -eq 0 ]; then
    CHOICES_FILE=”” # 10.4 can not use them
    else
    CHOICES_FILE=`echo “$FILE_LOCATION” | /usr/bin/awk ‘sub(/\.[^\.]+$/, “.xml”)’`
    if [ -e “$GROUP_FOLDER/$ORDERED_FOLDER/InstallerChoices.xml” ]; then
    CHOICES_FILE=”$GROUP_FOLDER/$ORDERED_FOLDER/InstallerChoices.xml”

    elif [ ! -e “$CHOICES_FILE” ]; then
    CHOICES_FILE=””
    fi
    fi

    if [ CHOICES_FILE != “” ]; then
    # With an InstallerChoices.xml file
    /usr/sbin/installer -verbose -applyChoiceChangesXML “$CHOICES_FILE” -pkg “$FILE_LOCATION” -target “$CURRENT_IMAGE_MOUNT” | /usr/bin/tee -a “$LOG_FILE” >&4
    /bin/echo ” Installed $FILE_LOCATION with XML Choices file: $CHOICES_FILE” | /usr/bin/tee -a “$LOG_FILE” “$PKG_LOG” >&3

    else
    # Without an InstallerChoices.xml file
    /usr/sbin/installer -verbose -pkg “$GROUP_FOLDER/$ORDERED_FOLDER/InstallThisOneOnly” -target “$CURRENT_IMAGE_MOUNT” | /usr/bin/tee -a “$LOG_FILE” >&4
    /bin/echo ” Installed $FILE_LOCATION” | /usr/bin/tee -a “$LOG_FILE” “$PKG_LOG” >&3
    fi
    else
    /bin/ls -A1 “$GROUP_FOLDER/$ORDERED_FOLDER” | /usr/bin/awk ‘tolower($1) ~ /\.(m)?pkg$/’ | while read UPDATE_PKG
    do
    CHOICES_FILE=`/bin/echo “$UPDATE_PKG” | /usr/bin/awk ‘sub(/\.[^\.]+$/, “.xml”)’`
    if [ “$OS_REV” -eq 0 ]; then
    CHOICES_FILE=”” # 10.4 can not use them

    elif [ ! -e “$GROUP_FOLDER/$ORDERED_FOLDER/$CHOICES_FILE” ]; then
    CHOICES_FILE=””
    fi

    if [ “$CHOICES_FILE” != “” ]; then
    /usr/sbin/installer -verbose -applyChoiceChangesXML “$GROUP_FOLDER/$ORDERED_FOLDER/$CHOICES_FILE” -pkg “$GROUP_FOLDER/$ORDERED_FOLDER/$UPDATE_PKG” -target “$CURRENT_IMAGE_MOUNT” | /usr/bin/tee -a “$LOG_FILE” >&4
    /bin/echo ” Installed $GROUP_FOLDER/$ORDERED_FOLDER/$UPDATE_PKG with XML Choices file: $CHOICES_FILE” | /usr/bin/tee -a “$LOG_FILE” “$PKG_LOG” >&3

    else
    /usr/sbin/installer -verbose -pkg “$GROUP_FOLDER/$ORDERED_FOLDER/$UPDATE_PKG” -target “$CURRENT_IMAGE_MOUNT” | /usr/bin/tee -a “$LOG_FILE” >&4
    /bin/echo ” Installed $GROUP_FOLDER/$ORDERED_FOLDER/$UPDATE_PKG” | /usr/bin/tee -a “$LOG_FILE” “$PKG_LOG” >&3
    fi
    done
    fi
    done
    }[/code]

    #372757
    benhur
    Participant

    I would love to give this a try. I may give it a shot here this week and will post my results.

    thanks

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.

Comments are closed