Autodesk 2017/2018

Autodesk 2017/2018

juillet 26, 2017 Add Comment
If you've not been introduced to the trial-by-fire that are the AutoDesk installers, then look no further. AutoDesk products have always been a challenge to deploy and sticking with that theme the 2017/2018 products don't disappoint. Through some historical knowledge and cooperation with other admins, I was able to deploy most of the Autodesk apps to a lab of Macs.

AutoCad Install

I started off deploying AutoCAD, which in itself wasn't the main problem. Stephen Warneford-Bygrave shared his script for installing AutoCAD 2017, which provided a good start for me.
https://macadmins.slack.com/files/wegotoeleven/F62TCT17Z/autocad2017.sh 
The "Install Autodesk AutoCAD 2017 for Mac.pkg" installed fine on a system without a user logged in on one of my systems, but failed on all my other tests. After many failures to install I finally found that it checks for the system locale during a postflight. For whatever reason, this value wasn't set on my lab systems (Skipped Reg, CreateUserPkg admin). The only system that worked was one that had run through the setup assistant to create the admin account. I was able to overcome this by setting the AppleLocal manually:

wait defaults write .GlobalPreferences AppleLocale -string "en-US" 

After this discovery, I encountered a few AutoCAD updates which provided me more issues. Both the HotFix1 and Combo updates would fail to install silently/without a user logged in. I finally gave up on these and just repackaged them. I'd be interested to hear from anyone who has gotten them to work.

Maya Install

We modeled off Neil's install script for Maya, which runs the setup tool to install the app.

See his script here: https://macadmins.slack.com/files/neilmartin83/F3YAJPE3X/maya_2017_install_script.sh

MudBox Install

Installing MudBox is fairly simple. Mount the DMG, Install the Pacakges, create the Network license files, and run adlmreg.

/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Mudbox2017.mpkg" -target /
/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Additional Items/adlmapps12.pkg" -target /
/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Additional Items/adlmflexnetclient.pkg" -target /
/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Additional Items/AdSSO-v2.pkg" -target /
/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Additional Items/clmv4.1.1.pkg" -target /
/usr/sbin/installer -pkg "/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/Mudbox/Additional Items/adlmframework12.pkg" -target /

mkdir -p "/Library/Application Support/Autodesk/CLM/LGS/498I1_2017.0.0.F/"

// License Server File
cat > "/Library/Application Support/Autodesk/CLM/LGS/498I1_2017.0.0.F/LICPATH.lic" << EOF
'SERVER $MUDBOX17_SERIAL_NUMBER 000000000000 $MUDBOX17_LICENSE_SERVER_PORT
USE_SERVER
END_OF_FILE' 
EOF

# License Server File 2
echo '_NETWORK' > "/Library/Application Support/Autodesk/CLM/LGS/498I1_2017.0.0.F/LGS.data"

# License Server File 3
echo 'done' > "/Library/Application Support/Autodesk/CLM/LGS/498I1_2017.0.0.F/nw.cfg"

# Register with adlmreg
"/tmp/Autodesk_Mudbox/Install Mudbox 2017.app/Contents/Resources/adlmreg" -ih N 498I1 498I1 2017.0.0.F "$MUDBOX17_SERIAL_NUMBER" /Library/Application\ Support/Autodesk/Adlm/PIT/2017/MudboxConfig.pit

SketchBook Install

SketchBook is about the same as MudBox, except that we expand the package to get the adlmreg tool.

/usr/bin/hdiutil attach -quiet -nobrowse -mountpoint "/tmp/Autodesk_SketchBook" "/tmp/Autodesk_SketchBook.dmg"

/usr/sbin/installer -pkg "/tmp/Autodesk_SketchBook/Autodesk_SketchBook_for_Enterprise_2018_Multilingual_MAC_OSX.pkg" -target /

/bin/rm -Rfd "/tmp/Autodesk_SketchBook_expand"
/usr/sbin/pkgutil --expand "/tmp/Autodesk_SketchBook/Autodesk_SketchBook_for_Enterprise_2018_Multilingual_MAC_OSX.pkg" "/tmp/Autodesk_SketchBook_expand"

/usr/bin/hdiutil detach -force "/tmp/Autodesk_SketchBook"
rm "/tmp/Autodesk_SketchBook.dmg"

mkdir -p "/Library/Application Support/Autodesk/CLM/LGS/871J1_2018.0.0.F/"

# License Server File
cat > "/Library/Application Support/Autodesk/CLM/LGS/871J1_2018.0.0.F/LGS.data" << EOF
'SERVER $SKETCHBOOK18_LICENSE_SERVER 000000000000 $SKETCHBOOK18_LICENSE_SERVER_PORT
USE_SERVER
END_OF_FILE' 
EOF

# License Server File 2
echo '_NETWORK' > "/Library/Application Support/Autodesk/CLM/LGS/871J1_2018.0.0.F/LGS.data"

# License Server File 3
echo 'done' > "/Library/Application Support/Autodesk/CLM/LGS/871J1_2018.0.0.F/LGS.data"

/tmp/Autodesk_SketchBook_expand/sketchbookpro2018.pkg/Scripts/adlmreg -ih Network 871J1 871J1 2018.0.0.F "$SKETCHBOOKPRO18_SERIAL_NUMBER" "/tmp/Autodesk_SketchBook_expand/sketchbookpro2018.pkg/Scripts/SketchBookforEnterpriseConfig.pit"

/bin/rm -Rfd "/tmp/Autodesk_SketchBook_expand"

Flame Install

Finally, we're pushing Flame instead of Smoke this year. Installing is simple and it's registered as a standalone license. In addition to the install, Flame likes to set up "/etc/exports" and the Apache web service to open you up for vulnerabilities. We disable them as well. Not sure if that effects the tools, but no complaints yet. We'd likely lock down firewalls if they were required to run.

wait /usr/bin/hdiutil attach -quiet -nobrowse -mountpoint "/tmp/Autodesk_Flame" "/tmp/Autodesk_Flame.dmg"

# Install Package
wait /bin/bash -c "/usr/sbin/installer -pkg /tmp/Autodesk_Flame/Install\ Flame\ Educational\ Edition.app/Contents/Resources/dist/Installer-Flame-2018.0.0-436.x86_64.mpkg -target /"

# Register the product
wait /bin/bash -c "/opt/Autodesk/flame_2018/bin/adlmreg -ih Network C14J1 C14J1 2018.0.0.F {parameter "FLAME18_SERIAL_NUMBER"} /opt/Autodesk/flame_2018/bin/res/adlm/Flame-EducationConfig.pit"

# Eject Disk Image
wait /usr/bin/hdiutil detach -force "/tmp/Autodesk_Flame"
delete "/tmp/Autodesk_Flame.dmg"
# Remove exports
rm "/etc/exports"
# Disable apache
/bin/launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

I have hope that AutoDeskworks to improve these installers, document the official process, or at least doesn't make it worse. As always, remember The Commandments of Packaging! Have fun out there and be safe!
Cover blurbs!

Cover blurbs!

juillet 16, 2017 Add Comment
So I got a couple of fricking awesome blurbs in for the Survival Guide:


“The post- post- modern Victorian fables that comprise Hal Duncan’s The Scruffian Survival Guide inhabit a unique dark fantasy world – a feral dream. The language is mad genius.” -- Jeffrey Ford




"Hal Duncan's cheeky and charming Scruffian stories hide a steely shiv of inspection that digs uncompromisingly into the ribs

Sample Sunday: "The Wonderful WonderWoods"

juillet 16, 2017 Add Comment
The Wonderful WonderWoods, the fifth and final part of the "TOONS" series, is now available on Amazon. Here's a sample:

At that moment, the president stepped through the curtain and onto the stage. His footsteps echoed across the raised, wooden platform, drowned out by the thunderous applause of his executive staff. The elves in trench coats remained silent.



The Masked Executive acknowledged the applause with a wave of his hand as he took his place behind the podium at the center of the stage. "Good afternoon, gentlemen. I trust you all slept well, so let's get down to business, shall we?"

The audience chuckled and leaned forward as one. Some got their notepads and pens ready.

The Masked Executive shuffled through his notes. "At this point in our fiscal year, I believe it would be most prudent to begin the reorganization of our management positions to more clearly define our goals. I shall now begin by reading our previous financial records and contrast them with our projected income."

After a moment of silence, the audience burst into gales of laughter. Elves slapped each other on the back, wiped tears from their eyes, and rolled in the aisles. The Masked Executive watched this spectacle with a blank expression, even considering the fact he had a mask over his head.

When everyone quieted down, and crawled back in their seats, chuckling to themselves, Jingles frowned, stood up, and said, "I don't get it."

The Masked Executive blinked. "What do you mean, 'You don't get it?'"

Jingles glanced over at the other executives for support. "I mean, I don't get it. Maybe if you told the punchline again, slowly, so we get the full effect--"

"You fools! That wasn't a joke! It was the introduction for my financial report!"

"Oh." Jingles scratched his head. "Well, when do you get to the jokes?"

The Masked Executives threw his papers to the floor. "There aren't any! This is a corporation, not a comedy club! Let me make this very clear. You will enjoy yourselves on your own time! From now on, you are here to work!"

Download it today!

"My name is Timothy McGill, and I'm a time travel addict..." Time Junkie, now available in paperback and ebook formats!
Pre-Orders Open for A Scruffian Survival Guide

Pre-Orders Open for A Scruffian Survival Guide

juillet 09, 2017 Add Comment



As the title says, pre-orders are now open over at my Bandcamp merch stall for the fancy dan lettered first edition hardback and the signed trade paperback edition of the new chapbook... A Scruffian Survival Guide.

Urchins scrobbled down the centuries from yer poor and persecuted. Foundlings Fixed in imperishable waifhood by the Stamp and sold to rich groanhuffs as child labour. Hellions with
A Scruffian Survival Guide: Scruffianisation

A Scruffian Survival Guide: Scruffianisation

juillet 02, 2017 Add Comment




Orphans, foundlings, latchkey kids. Urchins, changelings, live-by-wits. Rascals, scallywags, ruffians, scamps. Scoundrels, hellions, Scruffians STAMP!





With the last word the girl or boy playing hopscotch would come down hard with both feet, and the rest would all stamp a foot. Made it all like some... war-dance. Weird. And some of them was a bit old for hopscotch surely.





Orphans,