Amazon SNS makes implementing Apple Push Notifications (APNs) a breeze. This might seem like a longer article but it’s really not as many steps as it seems (although buttons on web pages move around a lot so ymmv for specific words in button names). There’s a few main steps that we’ll go through: creating a cert in Keychain, generating a Push Notifications cert with the appropriate bundle ID and team ID, and adding an application instance. Notice that these are different for Mac and iOS so if doing both use iOS and if doing one for each, use the appropriate entry. Create a Cert in Keychain First, we’ll create a…
-
-
Can’t Schedule Reboots in Ventura: Mac Observer’s Gotcha
I was talking to Jeff Butts at Mac Observer yesterday and he mentioned something I hadn’t noticed: macOS Ventura removes the option to schedule an automatic reboot from the graphical interface. I actually went back a version and couldn’t find it there. I guess since I don’t have servers I hadn’t noticed this oversight. Or I guess it’s more emblematic that it’s not an oversight, it’s how the use of the Mac has shifted over the years. The old power management system preference features are still there – Jeff wrote an article how to use pmset to set the automatic reboot feature at https://www.macobserver.com/tips/how-to/how-to-schedule-your-mac-to-shutdown-or-reboot-in-macos-ventura/. Around 13 years ago, I wrote…
-
Simulmatics: Simulating Advertising, Data, Democracy, and War in the 1960s
-
Inverse Case Insensitive Multiple Matching for grep
The apropos command is used to show man pages that exist on Linux, Mac, and Unix. It’s useful to, let’s say, look for a command that includes a given word in the description. It can also be used to show all commands that have man pages (and some that don’t). To see all commands for a machine, simply run apropos with a wildcard (*): apropos * This will take a while. Not all commands can actually be used. Constrain output (which takes no less runtime) by piping the output to a grep command. The -i option can be used to make grep parsing case insensitive. This means that if we…
-
Run A Script (eg build/test automation) From Xcode
We’ve all been there. Write some code. Commit. Edit some code. Commit. Run the build automation. I had a little script I ran – so open terminal and run. Now there’s an easy button. Commit, use a keystroke to invoke the script without leaving Xcode. To set it up, open Xcode and click on Behaviors under the Xcode menu. Under there, click Edit Behaviors… Click the plus sign in the lower left corner of the screen and then in the list of options, scroll all the way down to the Run option Click Show Script… Select the preferred script and click OK You can also assign a keystroke – so…
-
Create API Keys for Apple’s App Store Connect
Apple’s App Store Connect is where we upload software to get it into one of the distribution channels so it shows up on the App Store. This might be to upload apps directly to an App Store for review and publishing or it might be Test Flight once we’ve managed to get an app to “Archive” in Xcode. Manually moving apps has always been a pain and the keys that people need access to a bit much. We can now create workflows in Xcode that hook directly into other distribution technologies, like a Jenkins. Those will require an API key. Apple allows the Account Owner (and only the owner) of…
-
Facebook Accounts As Memorials – Proactively and Reactively
My grandmother passed away about three years ago. Since then people post on her wall on her birthday – those who knew her often post sweet memories and those who didn’t wish her a great day. This year I finally set it to a memorial page. It still looks similar, except it says Remembering by her name. People can still share memories of her on her wall or tag her in photos but her friends won’t be reminded it’s her birthday and she won’t be recommended as a friend to those she isn’t already linked up with. There’s a Tributes section in her timeline though, which is far more appropriate.…
-
Use UTM To Run Virtual Machines of macOS from macOS
UTM is a virtualization tool available on the Mac App Store at https://apps.apple.com/us/app/utm-virtual-machines/id1538878817?mt=12 with a GitHub at https://github.com/osy. UTM uses the new virtualization framework (documented here) from Apple, so runs the most modern virtualization stack currently available on a Mac. It also emulates via the QEMU system emulation. It can run guest operating systems in Windows, Linux, etc – emulating RISC, ARM, Intel, etc. Installation from the App Store is easy. Once installed, open the UTM app and click on the plus sign to create a new virtual machine. Here, there are options to Virtualize or Emulate. Given that we’ll be installing a beta OS from Apple for this example,…
-
3d Printable Model of the IBM 1401 and
Just posted 3d printable stl models for two of the more iconic IBM mainframe models. The first is the 701 ( https://www.thingiverse.com/thing:5487484 ). And the second is the 1401 ( https://www.thingiverse.com/thing:5482403 ).
-
Model of the Digital Equipment PDP-1
Easily downloaded at https://www.thingiverse.com/thing:5474754.