Archive for September 22, 2022

Thursday, September 22, 2022

Terminal and Full Disk Access

Jeff Johnson (tweet):

Many expert Mac users grant Full Disk Access to Terminal app, because the permissions dialogs quickly become very annoying when you try to do things in Terminal, as we’ve already seen above.

[…]

What you may not realize is that if you grant Full Disk Access to Terminal, you thereby provide Full Disk Access to every unsandboxed app on your Mac too! And how can this be? The reason is that unsandboxed apps can open executable shell scripts in Terminal, and those scripts will execute with the permissions not of the opening app but rather with the permissions of Terminal, i.e. Full Disk Access.

[…]

If you think the solution to this problem is simply to withhold Full Disk Access from Terminal: it’s not that simple! Every unsandboxed app effectively has all of the permissions of Terminal, whatever those permissions happen to be.

I don’t understand why Terminal executes shell script files in the first place. It doesn’t even prompt to confirm. Aside from the security implications—for what I think is not a commonly used feature, anyway—it also means that I sometimes execute a script by accident, double-clicking and expecting it (because of the icon) to open in a text editor.

Quinn the Eskimo:

MAC presents some serious challenges for scripting because scripts are run by interpreters and the system can’t distinguish file system operations done by the interpreter from those done by the script. For example, if you have a script that needs to manipulate files on your desktop, you wouldn’t want to give the interpreter that privilege because then any script could do that.

The easiest solution to this problem is to package your script as a standalone program that MAC can use for its tracking. This may be easy or hard depending on the specific scripting environment. For example, AppleScript makes it easy to export a script as a signed app, but that’s not true for shell scripts.

Sheldon15:

I find it’s a little backward approach to not have a robust way to test for FDA and instead handle errors resulting from the lack thereof. The problem is that sometimes you can’t distinguish errors resulting from the lack of FDA and other kinds of errors. Or you have a lengthy operation that you know will fail or will be incomplete without FDA and you want to tell the user in advance.

In my case, my app estimates size of a directory. Some subdirectories inside of it will not be counted due to the lack of FDA, and the overall size will not match Finder’s estimation. The scope of all folders protected from FDA is not clearly defined in the documentation, so I will not be able to detect when I have a lack of FDA or it’s a different kind of error. I can guess and recommend the user to add my app to FDA, but it’s confusing if he’s already done that and still sees the recommendation.

John Daniel (in 2019):

Full Disk Access isn’t very reliable either. You can do everything right and it still doesn’t work sometimes. You have to budget for this and provide documentation on how to remove an app, restart, re-add, and fallback to tccutil in the Terminal when all else fails.

Previously:

iOS 16 Lock Screen Widgets Roundup

John Voorhees:

Link HUB lets you put links on your iOS 16 Lock Screen. Links can be URLs that open websites or URL schemes that open and control apps.

[…]

Launcher is an app that’s been around for a very long time, helping iPhone users automate a long list of tasks by reducing more complex tasks into single-tap launchers. With the introduction of the app’s Lock Screen widgets, it can now launch apps, run shortcuts, play music, call friends and family, start driving directions, and a lot more directly from your Lock Screen.

[…]

Just Press Record has always been about quickly capturing audio, so having a button on the Lock Screen that starts a new recording is perfect.

[…]

With Overcast’s new Recents Lock Screen widget, I can resume an episode with a single tap, which I love. The other widget I like a lot is Playlist, which lets you pick one of your Overcast playlists, and with a tap, drop into it directly to start listening.

[…]

Countdowns does a fantastic job of matching glanceable information with thoughtful options. The app is perfect for widgets because it’s all about counting down the time before a big day you want to remember.

[…]

FitnessView, the health and fitness tracker from Funn Media, allows users to track a wide variety of metrics compared to Apple’s own Fitness app tracker.

I hope in a future version of iOS there’s way to add more or larger Lock Screen widgets, and to customize the buttons at the bottom, like with Control Center.

Previously:

Customizing iOS 16 Lock Screen Wallpaper

Federico Viticci:

The customization we have in iOS 16 includes wallpapers – and in fact goes above and beyond anything Apple ever offered for wallpapers on iOS – but that’s only one component of a larger system. A good way to think about it is the following: customizing the Lock Screen is now very similar to customizing your watch face on the Apple Watch.

[…]

For the first time in the iPhone’s history, Apple is also letting you create your own gradient-based Lock Screen background with the new Color wallpaper. As someone who’s constantly on the lookout for these types of images – I even made a shortcut to create colorful gradients for my devices – I am very happy with this wallpaper. By default, you can choose from a set of 18 colors with the ability to set a different intensity level via a slider. However, you can pick any color you want by accessing the system’s color picker.

Federico Viticci:

With iOS 16, Apple is also putting great emphasis on your photos as a means to turn the Lock Screen into a personal, beautiful space that is uniquely yours.

[…]

At the top of the picker, you’ll find an Albums tab, a search bar that supports the same search features of the main Photos app, and a strip of filters for the kind of content that looks great as a Lock Screen wallpaper. You can filter your photo library by people, pets, nature, or cities. Note that these filters won’t show you all matching items from your library in chronological order: they will show you a subset of featured photos for those categories.

[…]

The third way to use photos on the Lock Screen is also one of my favorite features of iOS 16. With the photo shuffle mode, you can make your Lock Screen shuffle through a set of photos on a regular interval during the day. This way, you won’t have to pick a single wallpaper for the Lock Screen, and you can treat yourself to multiple wallpapers without having to create multiple Lock Screens.

I was excited to have rotating photos on my Lock Screen, but in practice it’s been really frustrating. The interface is confusing and does not work well.

First, it seems strange (and watchOS-like) that you have to pick the type of wallpaper (Photos, Photo Shuffle, Emoji, Weather, etc.) first and then can’t change it. If you start with Photos and add some widgets to customize it, you cannot go back and change to Photo Shuffle or a color. Instead, you have to create a new wallpaper and then manually recreate your widget layout.

Photo Shuffle doesn’t seem to actually shuffle on the chosen schedule, and it’s clunky to set up. What I want to do is designate an album in my iCloud Photo Library and then periodically update it from the Photos app. Instead, it’s limited to 50 photos, and I have to manually select them. There is a way to change the 50 later, by removing some of the photos and then adding more. The button to remove photos is a trash can, which seems like it would delete them, moving them to Recently Deleted, which is like iCloud’s trash. However, fortunately, it only removes them from the list of selected photos. Whether or not I change the selected photos, each time I edit the wallpaper it takes a while to save, as if it’s processing all the photos again. Since the shuffling doesn’t work, and it feels like a lot of taps to remove an old photo and select another when I simply want to add a new photo that I just took, I’ll probably just switch to the Photos wallpaper (which always shows a single photo, despite its plural name). Then I can more easily manage the selection myself.

Ged Maheux:

Why does iOS 16 force you to create an all new wallpaper set when you want to make a simple change to the Lock or Home Screen?

Why does it treat these two screens as linked at the hip?

Andy Runton:

It’s infuriating. You also can’t add just dynamic home screens like weather without changing the lock screen. The UI constraints are baffling. The same is true with Watch OS 9. You can’t duplicate faces and you can only adjust a few colors. It makes zero sense.

Lee Bennett:

At least (as I’ve discovered) I don’t have to wait for those LONG spinner icons to finish rendering the previews. If I’m not changing the home screen wallpaper, I can go ahead and tap the button to accept the lock screen changes.

Previously:

Update (2022-09-26): Nick Babich:

With all the UI changes that Apple introduced in iOS 16, including the Dynamic Island that got a lot of media attention, one subtle change hugely impacted almost everyone. Apple increased the font size of the clock display on the iPhone lock screen. Now it’s 82pt bold typeface.

[…]

The new font size doesn’t match the overall aesthetics of the iOS 16. The clock in the new design looks like an alien object to other UI elements of iOS 16; that’s why people are so bothered about this change.

I meant to write about this in my original post, but now Babich has and has included screenshots, too. I’m disappointed that there are now multiple font choices but that they all, in my opinion, look worse than the old font. I really wish I could make it smaller or less bold.

Update (2022-10-14): Josh Centers:

When you first install iOS 16, you’re given only the regular default Lock Screen, which cannot be customized, though it does pick up your existing Lock Screen wallpaper.

[…]

If you find the wallpaper selection Screen confusing, you’re not alone. Along the top is a horizontally scrolling list of buttons for the main types of Lock Screen wallpapers: Photos, People, Photo Shuffle, Emoji, Weather, Astronomy, and Color. Below that is a vertically scrolling gallery of Lock Screen wallpapers, some preconfigured with widgets. Confusingly, the Collections category is available only in the gallery, not among the buttons.

[…]

If you don’t see the third-party widgets you expect, it’s not your fault—there are bugs Apple has yet to stamp out. Many users and app developers are reporting that they do not see newly added widgets.

Alan Forkosh:

After you create the new lockscreen, you can delete the inflexible one.

I am disappointed by two issues:

The inability to use an existing lockscreen as a template for a new one ( a duplicate command would make this possible).

Treating the lockscreen and home screen wallpaper as a tandem set. I have a wallpaper, not necessarily related to the lockscreen that I wish to use with every lockscreen. Having to search out and crop the photo that forms that home screen is a pain. (The wallpaper is a double waterfall cropped so that the two falls lie between columns of apps).

Gordon Meyer:

In my case the Lock Screen image I’ve had for years is no longer present in Photos, but still shows up on the Lock screen. I love it, for sentimental reasons, and don’t want to lose it by deleting that screen, so I’m stuck.

And I completely agree about how odd it is that the Home wallpaper and Lock wallpaper are linked/paired. Makes no sense to me, and as you said, makes for extra work.