Packaging Maya 2025

LaszloTarnai
New Contributor II

Hi,

I would like to create a deployment for Maya 2025 based on the topic for 2024:
https://community.jamf.com/t5/jamf-pro/packaging-autodesk-maya-2024-with-redundant-license-servers/m...

I've found a .app installer in the Contents of the installer:
/tmp/maya2025/AdskIdentityManager/AdskIdentityManager-Installer.app 

This app opens an installation wizard. How can I execute this (after the PKG installs) in silent mode?

Thank you.

1 ACCEPTED SOLUTION

LaszloTarnai
New Contributor II

My solution is the following (only the installation part):

pkgpath="/tmp/InstallMaya2025.app"

installMaya() {
	for PKG in $(find "$pkgpath" -name "*.pkg"); do
		echo "Installing $PKG"
		installer -pkg ${PKG} -target /
	done
	echo "Maya 2025 installed"
	
	sleep 3

	# Run the AdskIdentityManager-Installer.app in silent mode
	"$pkgpath"/Contents/Helper/Packages/AdskIdentityManager/AdskIdentityManager-Installer.app/Contents/MacOS/installbuilder.sh --mode unattended
	echo "Autodesk Identity Manager installed"
}

View solution in original post

8 REPLIES 8

RaGL
New Contributor III

In general to execute an installer silently you can use:

installer -pkg /tmp/maya2025/AdskIdentityManager/AdskIdentityManager-Installer.app -target /

LaszloTarnai
New Contributor II

Unfortunately no luck with this command.

installer: Error - the package path specified was invalid: '/tmp/InstallMaya2025.app/Contents/Helper/Packages/AdskIdentityManager/AdskIdentityManager-Installer.app'.

I believe the installer commands the XCLI version of the installer.app GUI and as such will only work with .pkg type files; if what you are attempting to install is a .app it could in theory, be opened with the CLI vi the 'open' command, but then you'd still have to deal with its GUI prompts. 

Been awhile since I felt with Maya, but if the installer doesn't come packaged as a .pkg, run the installer, and then use composer to package Maya as a .pkg, then the JAMF native options or the above command would work. 

As I saw that, AdskIdentityManager-Installer.app writes files inside Maya.app, so maybe it's not the best approach to create a PKG from my installation.

Is it a possibility to run "Install Maya 2025.app" in silent mode via Jamf?

I guess I've found a solution, but I'm gonna test via Jamf:

sudo /Volumes/Install\ Maya\ 2025/Install\ Maya\ 2025.app/Contents/Helper/Packages/AdskIdentityManager/AdskIdentityManager-Installer.app/Contents/MacOS/installbuilder.sh --mode unattended

cgeorge
New Contributor III

AdskIdentityManager doesn't install the full Maya software, only a component. I'm working to update the 2024 script for 2025 today.

cgeorge
New Contributor III

this has successfully tested for me:

 

#!/bin/sh

#Application Info (For each AutoDesk app, change the app/year/pKey/package)
app="Maya"
year="2025"
pKey="#####"

#Location where the application file is going to sit (REMOVE THE SPACES IN NAME)
pkgpath="/private/tmp/InstallMaya2025.app"

#For Redundant Servers, have a space between them rather than a comma ex: networkServer="IPaddress1 IPaddress2 IPaddress3"
networkServer="##.##.##.###"

#Identify where the license file will be generated at
licPath="/Library/Application Support/Autodesk/AdskLicensingService/${pKey}_${year}.0.0.F"
licFile="licpath.lic"

#All packages that exist within the Package Contents, conduct install
runInstaller ()
{
for PKG in $(find "$pkgpath" -name "*.pkg"); do
	echo "Installing $PKG"
	installer -pkg ${PKG} -target /
done
}

#Creates and appends servers identified into 'new' license file, 'for each' server that exists, write to file
createLicenseFile ()
{
    /bin/mkdir -p "${licPath}"
    /usr/bin/touch "${licPath}/${licFile}"
    for server in ${networkServer}; do
        echo "Accounting for server $server"
        /bin/echo "SERVER ${server} 000000000000" >> "${licPath}/${licFile}"
    done
        /bin/echo "USE_SERVER" >> "${licPath}/${licFile}"
        /bin/echo "_NETWORK" >> "${licPath}/${licFile}"
}

#Append the license servers to the products installed, 'ls' is list servers based on @IP,@IP... distinction
LicenseHelper ()
{
	### based off Onkstons's terrific work (I think they we're the first?) but simplified for 2023.
	### see also, addl details at the end of script for alternative 'legit' licensing method.
	licPath="/Library/Application Support/Autodesk/AdskLicensingService/${pKey}_${year}.0.0.F"
	/bin/mkdir -p "${licPath}"
	/usr/bin/touch "${licPath}/licpath.lic"
	/bin/echo "SERVER ${networkServer} 000000000000" > "${licPath}/licpath.lic"
	/bin/echo "USE_SERVER" >> "${licPath}/licpath.lic"
	
	/Library/Application\ Support/Autodesk/AdskLicensing/Current/helper/AdskLicensingInstHelper change --pk "${pKey}" --pv "${year}.0.0.F" --lm NETWORK --ls "${networkServer}"
}

#All files leveraged during installation will be cleaned from system package path and temporary files

cleanUp ()
{
     /bin/rm -rf "{$pkgpath}"
}

#Run script (1st Pass)
echo "Starting 1st Pass"
runInstaller
createLicenseFile
LicenseHelper

#Run script (2nd Pass), the licensing portion doesn't always install/engage during first run
echo "Starting 2nd Pass"
runInstaller
LicenseHelper

#Cleanup Files
echo "Executing Cleanup"
cleanUp

#################################################

### Verify license details - not required, but kind of nice to see.
/Library/Application\ Support/Autodesk/AdskLicensing/Current/helper/AdskLicensingInstHelper list
echo "Autodesk network licensing complete"


##################################################

 

LaszloTarnai
New Contributor II

My solution is the following (only the installation part):

pkgpath="/tmp/InstallMaya2025.app"

installMaya() {
	for PKG in $(find "$pkgpath" -name "*.pkg"); do
		echo "Installing $PKG"
		installer -pkg ${PKG} -target /
	done
	echo "Maya 2025 installed"
	
	sleep 3

	# Run the AdskIdentityManager-Installer.app in silent mode
	"$pkgpath"/Contents/Helper/Packages/AdskIdentityManager/AdskIdentityManager-Installer.app/Contents/MacOS/installbuilder.sh --mode unattended
	echo "Autodesk Identity Manager installed"
}