Archive for September 25, 2019

Wednesday, September 25, 2019

Patent for Even Thinner MacBook Keyboard

Malcolm Owen (Hacker News):

In a patent published by the US Patent and Trademark Office on Tuesday titled “Keyboard assemblies having reduced thickness and method of forming keyboard assemblies,” Apple seeks to do just that.

In Apple’s filing, the company suggests the use of a single membrane sheet adhered directly to the printed circuit board (PCB). A switch housing can optionally be affixed directly to the membrane layer or to the PCB, sandwiched between the two, and a dome switch coupled directly on top to the membrane layer.

Generally the membrane is not typically attached to the PCB, but is used to help facilitate the closing of a connection, to trigger the key press. By attaching the membrane completely across the PCB, this eliminates any wasted space and brings the components closer together.

This sounds like it would offer less travel and make repairs more difficult.

Chrome Updater Bug Prevents Macs From Booting

Tim Hardwick (Avid, Hacker News):

Variety reports this morning of a possible computer virus attack or critical software failure affecting Mac Pro workstations across Los Angeles.

According to social media chatter, Hollywood Film and TV editors discovered late on Monday that “trashcan” Mac Pros running older versions of macOS and AVID’s Media Composer software were refusing to reboot after shutting down.

Mr. Macintosh (Hacker News):

After further investigation it was found that AVID was not the problem!

[…]

After investigation from some of the top minds in the MacAmins Slack Chat #varsectomy channel it was found that the Google Keystone Updater was at the heart of the issue.

Google:

We recently discovered that a Chrome update may have shipped with a bug that damages the file system on macOS machines with System Integrity Protection (SIP) disabled, including machines that do not support SIP. We’ve paused the release while we finalize a new update that addresses the problem.

[…]

To recover a machine that has been affected by this bug, please boot into recovery mode, and then from the Utilities menu open the Terminal application.

In the Terminal application, you can run the following commands[…]

Rich Trouton:

The now-pulled Keystone update attempts to remove the /var symlink, which is usually protected by Apple’s System Integrity Protection (SIP) security feature.

On Macs where SIP was disabled, this protection did not apply and the Keystone update was able to remove the /var symlink. This symlink is not a directory itself, but points to another directory (/private/var) which contains software necessary for the operating system to boot and function correctly, so removing the /var symlink rendered the affected Macs unbootable.

Update (2019-09-26): Jeff Johnson:

Something fishy with Google’s latest comment. Seems to be shifting the blame. Why act as if the updater doesn’t have root?

John Gruber:

Why in the world would a web browser’s software updater be doing anything at all at the root level of the boot volume? The arrogance and presumptuousness here boggles the mind. This is like hiring someone to wash your windows and finding out they damaged the foundation of your house.

The other question is why in the world so many users would disable System Integrity Protection. The answer seems to be that it’s the only way macOS will let the AVID customers use third-party video cards.

See also: Hacker News.

Update (2019-09-27): Jeff Johnson:

People: Why does a web browser installer need to modify the system?!?

Me: $ lsbom /System/Library/Receipts/com.apple.pkg.Safari13.0.1MojaveAuto.bom | grep /System/

Jeff Johnson:

The Google Keystone bug isn’t a justification for System Integrity Protection. In fact, if SIP didn’t exist, Google would most likely have noticed the bug before shipping it. So in a sense, SIP is partially to blame for the disaster.

This is true, but it doesn’t mean SIP was a bad idea. Rather, SIP is treating the symptoms rather than helping to identify the causes. It certainly could do more of the latter, e.g. if it maintained an audit log. I don’t mean the gigabytes of console spew that we currently get for SIP and sandbox violations. Instead, there should be a friendly window that concisely shows what each app was thwarted from doing. The Chrome developer—or even Chrome users—would be able to see at a glance that it tried to delete the /var folder 39 times and would then be able to ask why.

Jeff Johnson:

Every app outside the Mac App Store has to roll its own software updater. This is how we get software update problems. Apple has left this gaping hole in the system forever. Why is there no system process and API for 3rd party app updates?

It’s a totally obvious idea that could have been done 20 years ago. And it would be more helpful today in that updating sandboxed apps is harder. But it’s also kind of a strategy tax. Making life better for directly sold apps (and their users) would cost services revenue and reduce the value proposition of the Mac App Store.

Update (2019-10-13): To be clear, the Chrome updater only asked for root access if you enabled the option to Automatically update Chrome for all users.

The Business Side of Apple Arcade

Amanda Farough (via Dave Mark):

As it turns out, Apple is fronting development costs. This makes the relationship closer to a traditional publisher/developer deal. And Apple stepping in means these weird, interesting, oddball mobile games that might not have had a chance anywhere else have been given a platform that has the potential to house almost half of the world’s mobile market.

[…]

When a developer agrees to launch their never-released game on Arcade, Apple covers development and marketing costs, as well as providing technical expertise. This is part of how Arcade’s compensation works for developers, although Apple hasn’t provided any additional clarity as to the details of that revenue share or agreement. But we’ve learned that Arcade’s payment structure is consistent with how Apple approaches compensation with music, television, etc.

The most important thing that a developer needs to know is that because Apple doesn’t consider itself a publisher for Arcade (even though they do functionally act as a hybrid of platform holder, distributor, and publisher), developers retain the rights to their own games.

Eli Schiff:

Toxic Apple. If you cancel @AppleArcade free month trial subscription, you lose access the instant you cancel.

Unlike other apps which all let you continue access until the period is over, despite canceling.

Apple News+ does this, too.

Previously:

Update (2019-09-26): scott:

It’s absolutely unbelievable how many indie devs whose projects I’ve been following for years have had those games move to Apple Arcade.

Someone at Apple is doing amazing work, I’m actually a little jealous this is someone’s job.

Benjamin Mayo:

Apple’s marketing describes the Arcade library as a collection of “groundbreaking” titles that “redefine” games. I don’t get that feeling. The games are not really innovative, they are pretty standard. It’s almost like putting the Steam indie catalogue on your phone. I haven’t seen any Arcade game so far that surprised me with an innovative premise. I don’t care. I like that the games are new releases, offering new content, and I like that they are fun. Being “groundbreaking” is not what interests me.

Update (2019-09-27): Juli Clover:

Less than two weeks later, Google announced its own gaming service called Play Pass, which also offers unlimited access to games. In our latest YouTube video, we went hands-on with both services to compare them.

Both Apple Arcade and Play Pass are priced at $4.99 per month. Apple offers a one-month free trial while Google offers a 10-day free trial, but for the first year, Google is offering a deal that drops the price of Play Pass to $1.99 per month.

Update (2019-10-13): Michael Love:

The big question is if they’ll be able to keep up this pace - 200-300 new titles a year - long term, or if they’re just flushing out launch titles and the rate will drop once they’ve released their initial slate.

If Apple can release 5 new games every week forever then Arcade will potentially swallow almost the entire iOS gaming market.

And honestly that’s not inconceivable; 10 million subscribers = $600M/year, which could easily bankroll 200 games. 100 million = $6B/year and with that kind of money you can pretty much fund any talented developer who wants to make an iOS game.

watchOS 6 Review

Alex Guyot:

This is a year for iteration, and Apple has been iterating on all cylinders. watchOS 6 is a quiet giant, adding or redesigning more first-party apps at once than we’ve seen in years, dropping the largest batch of new watch faces since watchOS 1, providing a new way to track fitness over time, and kicking off a nascent foray into Apple Watch independence.

Previously:

iOS 13 Full Access Keyboard Extensions Bug

Apple (Hacker News):

Third-party keyboard extensions in iOS can be designed to run entirely standalone, without access to external services, or they can request “full access” to provide additional features through network access. Apple has discovered a bug in iOS 13 and iPadOS that can result in keyboard extensions being granted full access even if you haven't approved this access.

Previously:

Update (2019-09-27): Mark Gurman:

iOS 13.1.1 is out: restore, battery life, Siri, Safari search, Reminders bug fixes + repairs the third party keyboard security issue.

iOS 13 and 13.1

Federico Viticci:

For the first time since I started reviewing Apple’s annual iOS updates, it feels like the company is now keenly aware that a new iOS version has to cover an array of themes that can’t be pushed back for scheduling reasons.

[…]

As a result, there’s something for everyone in iOS 13 and all the recurring themes of Tim Cook’s Apple are touched upon this time around.

[…]

From this standpoint, there are two sides to iOS 13: on one hand, an underlying tide that raises all platforms, featuring a distillation of themes Apple comes back to on an annual basis; on the other, a fork in the road, opening a new path for the iPad’s next decade.

Samuel Axon:

Apple hasn’t tempered expectations for iOS 13 this year, so users might be expecting a big leap forward. iOS 13 does bring a new look to the software that runs on iPhones, overhauls a few oft-criticized first-party applications, and puts additional emphasis on user privacy. Most of all, it adds new, powerful interactions for power users—some of which we thought we’d never see in Apple’s mobile software.

iOS 13 is successful at most of what it sets out to do, even though it leaves some things that users have wanted to see overhauled—like the home screen—relatively untouched.

Apple (Hacker News, video):

Part of the magic of iPad is that almost anything can be done with Multi-Touch using simple, intuitive gestures. And now iPadOS makes it easier and faster to select and edit text using just your fingers.

Copy, paste, undo, and more with simple new gestures.

Lauren Goode:

Something atypical for Apple is iOS 13’s notably buggy rollout.

John Gruber:

13.0 is really buggy — I’ve been using it on my iPhone 11 review units.

[…]

Best theory I’ve seen so far as to why Apple is going ahead with a wide 13.0 release instead of just waiting until next week for 13.1 — Apple Watch Series 5 requires iOS 13 on the iPhone it’s paired with. So people getting new watches tomorrow need to update their iPhone to iOS 13 tomorrow. This raises the question of why Apple didn’t delay the release of the Series 5 watches until iOS 13.1 was out.

Lauren Goode:

iOS 13.1, the next (and presumably more stable) version of the software will ship September 24, not September 30 as previously expected & reported.

Marco Arment:

Software quality is not important enough to delay the release of the iPhone.

It’s not the way we may want it to be — and not the way THEY probably want it to be — but that’s the way it is.

Buck:

I wish they would uncouple iOS releases from iPhone releases - at least occasionally - so we could have a longer cycle of focusing on fixing existing issues. Each new release just starts over a new round of “never really fixed” problems.

See also: Steve Troughton-Smith.

Marcel Weiher:

Well that was special: my SE with fresh install of iOS 13 just drained its battery from 100% to 20% in about 8 minutes, so 10% per minute. Impressive!

You could basically watch the percent indicator go down.

Marcel Weiher:

Wow! Apple’s Reminders app was always pretty useless. In [iOS 13], it is actively hostile, “upgrading” the calendars, and thus deleting them from every other app.

Mattt Thompson:

Although the lion’s share of attention has been showered on the aforementioned features, not nearly enough coverage has been given to the rest of iOS 13 — and that’s a shame, because this release is among the most exciting in terms of new functionality and satisfying in terms of improving existing functionality.

So to mark last week’s release of iOS 13, we’re taking a look at some obscure (largely undocumented) APIs that you can now use in your apps.

Josh Centers:

Personal automations let you do things like start playing a particular playlist whenever you open a certain app, dim the screen brightness when Low Power Mode turns on, or turn off your cellular data connection when you connect to your home Wi-Fi network.

[…]

iOS 13.1’s new audio sharing feature lets two pairs of AirPods listen to audio from a single device. (This feature also works with Beats earbuds and headphones powered by Apple’s W1 or H1 chip.) The “broadcast” device needs to be relatively recent, like an iPhone 8 or later. While one iOS 13.1 device is playing audio, place another iOS 13.1 device paired with a second set of AirPods or the like nearby to see an option to share audio.

[…]

Even after the release of iOS 13.1, some promised iOS 13 features are still missing and continue to be promised for later this year, perhaps in iOS 13.2 or later.

Jeff Hunter:

Guess what, the navigation bar / search controller bug introduced in the iOS 13.1 betas has not been fixed in 13.1 GM!

I’m waiting for at last another release.

Max Seelemann:

Xcode 11 GM2 broke localization of static take view cells in storyboards. 😞 (FB7302304)

Anybody know when this is traditionally going to be fixed? Also when do we get iOS 13.1 Simulators? Anybody ever test this?

Marcin Krzyzanowski:

How fucked up must be the schedule, that something like this goes in the release. Release that is already delayed.

Previously:

Update (2019-09-26): Daniel Terhorst-North:

Ok now I’m cross. #iOS13 update has broken all kinds of things on my iPhone XS. The worst, the absolute worst, is it has removed all my contacts’ numbers and placed a note in each contact saying:

none = [the deleted number]

[…]

Update: and also copied some phone numbers to other contacts, so now the phone can’t tell who is calling. You couldn’t make these bugs up @Apple !!

Chris Liscio:

PSA: If you lost stuff in your iCloud Drive during the Catalina / iOS 13 betas, get yourself over to http://icloud.com/settings, and use the “Restore Files” link (under Advanced) to get your stuff back. I was ~10 days away from losing almost 800 files, myself!