Archive for February 17, 2023

Friday, February 17, 2023

iOS Betas Tied to Apple ID

Filipe Espósito (MacRumors):

Whereas previously installing an iOS beta required a special profile, that process will now be tied to the developer’s Apple ID.


“Your iPhone or iPad must be signed in with the same Apple ID you used to enroll in the Apple Developer Program in order to see this option in Settings.”

This is touted as making it easier for developers to install betas, since they can just go to the new Beta Updates menu in Software Update, without having to install a configuration profile. However, it seems like this will cause problems since many people use a separate Apple ID only for development, with their apps and iCloud data owned by a different Apple ID.


Update (2023-02-17): Rob Jonson:

This is nuts. Of course my company Apple ID (which purchases the developer program) isn't the same as my personal id...


This reminds me of when Apple started requiring 2FA for developer Apple ID accounts. It was initially clunky to add a second iCloud developer account on your personal account’s iPhone (for the 2FA codes), but then it got easier and better. Hopefully they will come around on this.

Or maybe it will use that same system, which many developers have already set up. I had forgotten about that, and didn’t see it in Settings anymore. It turns out that now, instead of adding the developer Apple ID under Settings ‣ Passwords & Accounts, you are supposed to go to Settings ‣ Mail ‣ Accounts ‣ Add Accounts ‣ iCloud.

Homecoming for Mastodon 2.0

Jeff Johnson:

As before, when you’re viewing a Mastodon page in another instance, clicking the extension icon in Safari’s toolbar opens that page in your own instance. On the other hand, when you’re viewing a Mastodon page in your own instance, clicking the extension icon in Safari’s toolbar opens that page in the original instance.


Returning to motivation, why would you want to open a Mastodon page in its original instance when you’re already reading it in your instance? The answer is that a Mastodon instance is a kind of island. It can only show you the data stored locally. Unlike a centralized network such as Twitter or Facebook, Mastodon is decentralized and distributed: no individual instance has a copy of all the data encompassing the federation of Mastodon, only a subset of the data. Every Mastodon instance has gaps in its data, blind spots. An instance stores all of the posts of its local accounts, and it downloads new posts of anyone followed by its local accounts, as notified by the ActivityPub protocol, but your instance doesn’t download old posts from other instances. This is why when you view someone else’s account profile in your instance, you might not see their older posts (unless someone else on your own instance was already following that account).

The data gaps are especially problematic on smaller Mastodon instances with fewer accounts, because on a smaller instance it’s less likely that another account on your instance was already following someone you’re interested in.

This is a great new feature, since the built-in Open original page menu command is not in a convenient location. It’s also useful for finding the RSS feed of a user.

Unfortunately, there is no way to assign keyboard shortcuts to extension buttons in Safari. So I wrote an AppleScript to click the button:

tell application "System Events"
    tell application process "Safari"
        set _items to entire contents of toolbar 1 of window 1
        repeat with _item in _items
            if _item's class is button and _item's description is "Homecoming for Mastodon" then
                click _item
            end if
        end repeat
    end tell
end tell

and used FastScripts to assign the script a keyboard shortcut.

Unfortunately, the script has yet to work for me when run from FastScripts, even though I gave Accessibility access to both FastScripts and FastScripts Script Runner. It always fails with:

Error Number: -1719

System Events got an error: Can’t get toolbar 1 of window 1 of application process "Safari". Invalid index.

I assume this is some sort of TCC issue since the script sometimes works from Script Debugger but sometimes fails with a similar error.


Update (2023-02-21): Jeff Johnson:

Homecoming for Mastodon version 2.1 is now available in the Mac App Store.

What’s New: Control-Command-M keyboard shortcut!

Creating a Personal Mastodon Instance

Jim Carroll:

People also need to understand they can do their own instance and avoid all this server migration stuff in their Mastodon home going down or becoming unstable.

Having a domain-name-related instance that belongs to you negates any of the down-the-road hassles of migrating. Also, your Mastodon handle today might look like a Hotmail or AOL address down the road.


Also, I control the configuration - so my software is up to date, and my character count is set at 1,500, though I rarely use that.

He’s written up the details here. It seems like this should be “right” thing to do, but at the moment I don’t want to be responsible for the hosting and maintenance. Also, the user experience (with the Web interface) is definitely better when interacting with people who are on the same instance. Otherwise, various actions require extra clicks, and sometimes posts don’t auto-load.

I assume that hosting and migration will get easier in the future, so I don’t feel too bad about starting out with a shared instance. And having the posts partitioned between two instances makes less of a difference when there’s no full searching, anyway.

Adam Chandler:

4 Weeks of usage history running my own Mastadon instance. Following about 45 people and followed by 25 with a few photos. Media Storage is something you should be aware of if running your own server. Your instance will cache media from the federated timeline and people you follow. There are admin server settings for media retention which I set to 2 days. My toots and media are not purged (although you can enable that).


Finding Open Files

Sveinbjörn Þórðarson (Hacker News):

Sloth is a native Mac app that shows all open files and sockets in use by all running processes on your system. This makes it easy to inspect which apps are using which files and sockets.

It’s open-source.

See also: What’s Open and lsof.