Archive for February 3, 2020

Monday, February 3, 2020

Introducing Swift Crypto

Cory Benfield:

I’m thrilled to announce a new open-source project for the Swift ecosystem, Swift Crypto. Swift Crypto is a new Swift package that brings the fantastic APIs of Apple CryptoKit to the wider Swift community. This will allow Swift developers, regardless of the platform on which they deploy their applications, to access these APIs for a common set of cryptographic operations.

[…]

On Apple platforms, Swift Crypto defers directly to CryptoKit, while on all other platforms it uses a brand-new implementation built on top of the BoringSSL library.

[…]

With the exception of APIs requiring specialised hardware, it will always be the case that where an Apple CryptoKit implementation of an API is available, Swift Crypto will use it, but when such an API is not available it will be possible to use the Swift Crypto-based implementation. The core APIs will move in step with Apple CryptoKit, and our test suite is shared with Apple CryptoKit ensuring that both projects must pass each other’s test suites for the API, ensuring that both Swift Crypto and Apple CryptoKit will be completely compatible.

VMware Fusion 10 on macOS Catalina

Boy van Amstel:

Catalina requires apps to request permission for various tasks. Recording the screen is one of them. Apparently Fusion uses this feature, but neglects to ask for permission. Thus the screen stays black.

Some people found a way to get around this by granting permission manually. Here’s how that works.

macOS doesn’t let you add Screen Recording permission in System Preferences if the app hasn’t asked for it. VMware 11 asks; version 10 doesn’t, but it otherwise works fine on Catalina. The solution is to boot into Recovery (to get past System Integrity Protection) and then use SQLite to edit the TCC.db file to grant VMware the access.

There’s a similar problem where sometimes macOS fails to prompt for Automation access (or remember said access). The prompting is supposed to happen automatically—there’s no API that apps need to call. If it doesn’t work, there’s likely something wrong with the TCC.db file and you should probably reset it. Sometimes tccutil reset AppleEvents does the job. But sometimes the database is so messed up that you have to boot into Recovery and delete the file manually. There really should be a way to do that with tccutil.

0x00400000:

I managed to trigger the permission modal for VMware Fusion 10 on Catalina using library injection. After restarting VMWare Fusion 10 it seems to have done the trick.

I created a git repo with a script to trigger the modal.

Previously:

Update (2020-02-03): It’s not clear to me whether VMware is supposed to be calling a certain API to ask for permission or if macOS is supposed to (as with Automation) be noticing that it’s doing something that requires permission. But Catalina shouldn’t be breaking an app that was compiled with an older SDK.

Update (2020-02-06): John Cleary:

I’m still on v8 and just use the built in VNC and screen share to localhost as the VM just shows a black screen.

Google Maps Traffic Hack

Jason Kottke (Steve Crowley, Hacker News):

You’ve got to love little artistic hacks like this. Simon Weckert put 99 second-hand smartphones in a red handcart and walked around a few blocks in Berlin. Each phone was running Google Maps and being tracked for traffic measurements. Their presence and slow rolling around the streets caused Google to display a traffic jam.

Clayton Christensen, RIP

Tad Walch (via Hacker News):

Clayton Christensen, whose theory of disruptive innovation made him a key influence on Silicon Valley powerhouses like Netflix and Intel and twice earned him the title of the world’s most influential living management thinker, died Jan. 23 at age 67.

[…]

Christensen introduced disruptive innovation in the Harvard Business Review in 1995, but the theory and the term burst into the public consciousness in 1997 when he published “The Innovator’s Dilemma: When New Technologies Cause Great Firms to Fail.” Soon afterward, Intel CEO Andy Grove stood up with a copy of the book at COMDEX in Las Vegas and declared it the most important book he’d read in a decade. The two men appeared together on the cover of Forbes magazine in 1999 — and both Christensen and the business world were changed forever.

[…]

Grove told Christensen he mislabeled his theory. Instead of innovative technologies, Grove suggested, Christensen should have used “crummy technologies.”

“A disruptive innovation looks inferior,” Gilbert said, “but only to the incumbent organizations. Then it opens up the ability to consume something that never would have been possible without the innovation.”

See also: Efosa Ojomo, Tren Griffin (tweet), Exponent and The Talk Show.

MacBook Pro 16 Has a Fan Problem

Om Malik (Hacker News):

Every time I awake the device from its slumber, within just a few minutes, the fans come on. And they stay on. The noise they make is very loud, especially in my quiet living room, where I usually work. I am not the only one with this problem. There are multiple comments on this thread on Apple’s message boards, where longtime Apple users are screaming in frustration. It is a problem that is big enough to merit its own complaint thread on Macrumors.

Some mention that external monitors make the fans go wild. Well, this $7,000 Apple xPro Display on loan from Apple is supposed to showcase the marital bliss between MacBook Pro 16 and the new screen. Oops! […] Some suggest an SMC reset. I did that but to no avail.

[…]

Earlier this morning, the problem really got my goat. I had only three applications running on the machine: Apple Mail, Apple Messages, and Apple Safari. All native Apple apps, and yet, the fans were running like afterburners on Dom Toretto’s 1970 Dodge Charger.

I’m using a 16-inch MacBook Pro without an external display and have not seen this problem. However, sometimes there is a short burst of very loud fan activity when powering on the Mac. This also happened with previous MacBook Pros.

Previously:

macOS Display Problems

Lloyd Chambers:

After every reboot, the LG 5K display goes to maximum brightness.

John Gruber:

Is this the worst bug in the world? Not even close. It’s a paper-cut bug. No data loss, no crash, not something sort of thing where something doesn’t even work — just an annoyance. But no one wants to use a tool that gives you half dozen paper cuts every day. And MacOS 10.15 is chockablock with paper-cut bugs.

I don’t have an LG 5K, but I’ve been having problems with multiple external displays ever since getting a USB-C Mac. Sometimes the Mac sees the external display, and puts windows on it, but the display itself shows only black (yet isn’t asleep). Rebooting the Mac doesn’t help. Shutting down the Mac and unplugging/replugging the display doesn’t help. Rebooting the Mac without the display and then shutting down and plugging it in doesn’t help. The only thing that seems to help is swapping the display to another USB-C port—thankfully, I have more than one. Then, a while later, the problem repeats and I have to switch back to the first USB-C port.

Craig Hockenberry:

My 16” MBP is waking itself up hundreds of times overnight, probably with the display on. Catalina is draining about 1/4 of the battery because of it.

Maxwell Swadling:

The strangest bug with Apple’s USB-C stack is power saving will happily put the display to sleep, which disables USB hub power, causing force ejection of any external drives you have, potentially corrupting them.

Simon Wolf:

Any chance this is why external monitors cause a watchdog panic and reboot when my iMac sleeps under Catalina? I’ve heard that external drives can cause it too.

John Gruber:

I didn’t even mention it in my post, but I’d say about 1 in 10 times I open my 16-inch MBP, the built-in display contrast is waaaaay off. Way too much contrast. I can fix it either by moving brightness all the way down then back up again, or by closing and reopening the lid.

Peter Steinberger:

The LG 5K is C U R S E D

We bought 10 for the company and it was the single dumbest hardware purchase decision I ever made.

Howard Oakley:

An external display can be a good way of adding more USB-C ports to a Mac, but a strange bug can cause a lot of trouble with this otherwise excellent solution.

As I wrote back in November last year, letting an external display sleep can precipitate a kernel panic or other problem when the display goes to sleep, or the Mac tries to wake it up.

Lloyd Chambers:

But it is much worse than I realized: when I reboot after some time, Crapalina 10.15.3:

  • Reverses the Arrangement of the displays left vs right.
  • Moves the menu bar to the wrong display.
  • Makes 2560 X 1600 resolution unavailable on my NEC PA302W—I have to reboot a 2nd time, which somehow retains the menu bar and Arrangement and I can then use 2560 X 1600.

Previously:

Update (2020-02-18): Collin Allen:

Catalina bug: Coming out of sleep or screensaver, my whole display (except for the mouse cursor!) is washed out. Closing and re-opening the lid fixes it. A reboot makes it go away for a few days. 🤷‍♂️

Update (2020-02-26): John Gruber:

For me (16” MBP), more commonly, the problem is over-saturation, not under-saturation. But I’ve seen both, and in both cases you can “fix” it by either closing/reopening lid, or by sliding the brightness slider all the way down and then back up.