A Mac sysadmin, documenting useful code, ideas, & guides.

Introduction Grocery Delivery (GD) is a ruby gem that helps keep cookbooks, roles, and data bags in sync between a source control repo and your chef server. This allows administrators to keep their entire chef code in source control with continuous integration, peer reviews, and any other checks they can think of. Once the code has been checked and merged into the master branch the grocery-delivery binary takes the place of knife upload.

python2 and tls

For your Friday viewing pleasure I present the following cartoon. Credit: https://xkcd.com/356/ Background In case you do not know Apple deprecated the usage of OpenSSL in favor of Common Crypto, back with the release of OS X Lion (10.7) in 2011. On Apple’s latest operating system macOS Sierra (10.12) OpenSSL is currently at version “0.9.8zh” with very little indication that it will get updated. Now this is a specific build that Apple created and it does have a few back-ported fixes however this version doesn’t support TLSv1.

So lets start with I’m not a developer. I won’t pretend to be one but I do find development work quite interesting. One thing I’m trying to get into is Swift but even the small steps lead me to realize how large the Apple ecosystem is. Cocoa, Swift, Xcode, System frameworks, finding the right documentation, etc. The process of connecting the dots takes a bit of time as you might imagine.

Intro Before I get into the material of this post I want to refer you to an article written last week by Sal Soghoian, click here. The information that he provides regarding user automation is exactly what makes the process described in this post possible. In case you are not aware, Zendesk is a web-based helpdesk application that is cloud hosted and quite popular. They have an email API that allows agents to create a ticket with a simple email.


Apple has some pretty nice energy savings options built into macOS. Most of these options are tucked nicely inside of the Energy Saver pane of System Preferences. The above settings get written to the com.apple.AutoWake preference and looks like: defaults read /Library/Preferences/SystemConfiguration/com.apple.AutoWake { RepeatingPowerOff = { eventtype = shutdown; time = 1020; weekdays = 127; }; RepeatingPowerOn = { eventtype = wakepoweron; time = 420; weekdays = 31; }; } Weekdays Some of these values are a bit opaque once they are written to the preferences domain.

OPMA 3306 SAP Help

Java! Currently, I am taking an Operating Management class which uses an Enterprise Resource Planning (ERP) application. The instructions given to my peers consistents of: Download this file Download one of these two other files (no notes on how to use either config file) Open this jar file and a PS note that you need the Java SDK installed Okay fine I can deal with bad setup instructions…then I got an error message and gave up.

Adobe CC Oops

I ran into the following error earlier this year and have yet to write about it. Adobe has the correct solution in another knowledge base article however the error messages are different. Since the errors looked to be different I never would have attempted the solution until Karl gave me a poke. Basically I would launch Adobe’s Creative Cloud Packager (CCP) tool and nothing would work. Luckily the fix is really simple:

Intro Microsoft Office 2016 for Mac had a rough start for sure. With that being said things have gotten better and quite rapidly. This post will focus on where Office 2016 for Mac currently stands, commonly asked questions, best practices, and solutions for updates. This post should serve as a overview of the changes to Office 2016 (O2016) for Mac from about November 2015 to Present (January 14th). Before we can get too far into this post it needs to be noted that none of this would be possible without the hard work and support of the following individuals.

Hack The Mac 2015

I almost missed Hack the Mac this year but luckily Twitter let me know once it had already started. Since I showed up late, I missed the first project overview and needed to go back to the video on demand to review what was said. While I was watching I thought it might be useful for others if I compiled a short overview with video links. All three projects were already brought to my attention before the event but here is my take away after watching the event:

Slack rsync

With a little push from @groob, I have created a simple python script that runs a rsync command and sends a summary of the run to Slack. Slack was not created to be a storage vault for server logs however it does great for short sms style messages. If you are using a log collection service like logstash you could extend on this script to include the link to your uploaded log or if an error occurs you could automatically create a helpdesk ticket for you to investigate the issue.