5 ms·
> It's a workaround for the new permissions system in Catalina being a complete mess from the get go. I fucking hate it. Programs can write to my user dir and
by heydabop 7y ago
> It's a workaround for the new permissions system in Catalina being a complete mess from the get go.
I fucking hate it. Programs can write to my user dir and folders within it freely, but god forbid they touch my sacred Downloads, Documents, and Desktop folders! Better ask me first!
It's like it was made by the iOS dev team but also the iOS dev team has never used a computer before.
I had to add ruby to full disk access to get emacs to work, because emacs is launched by a ruby script and it was insane that I couldn't ls my Downloads folder from it.
- deleted 7y ago[deleted]
- jaredklewis 7y agoIt’s not perfect but I think there is sound logic to to the way it works. My wife is a fairly average computer user, and she has not added any files outside those folders that are in the user directory by default (Downloads, Desktop, Documents, Pictures, etc...). I think it seems pretty logical that Documents or Pictures for most users will include more personal data that needs protecting than ~/.config or whatever.
- shakna 7y ago~/.local on the other hand will frequently include information that under a tighter permission system should not be accessed without approval. Things like my complete shell history can be found there.
- dylan604 7y agoThe fact that you are worried about your shell history proves you are not one of the average users.
- shakna 7y agoAnd? How is that relevant to the permission system? The average person doesn't need to care whether a file is executable or not.
- comex 7y agoYep. But authorizing things on a file-by-file basis would be a terrible UX, while granting programs blanket access to all of ~/.local wouldn't be very secure, since lots of programs need something from there. It's the same situation as ~/Library for macOS-specific code. App Sandbox avoids this problem by giving each app its own virtualized home directory, so that data sharing between apps becomes opt-in instead of opt-out. It still exists... too bad nobody wants to adopt it.
- tarsinge 7y agoI disagree. Yes Documents directory is sacred for me and a lot of users, and the legacy Unix permissions don’t account for that.
- ISL 7y agoIf you're going to require permission to write to Documents, it makes sense to ask permission to write to ~/ .
- comex 7y agoThere are a lot of hardcoded paths within ~/, including macOS-specific (~/Library/Application Support, ~/Library/Caches, etc.) and Unix-inherited (dotfiles). Essentially all applications need to access at least some of those, so you'd have to grant permission to every application you open. In contrast, hardcoding paths within Documents or Downloads is uncommon and considered an antipattern; thus, most applications only access Documents and Downloads when the user manually chooses a file within one of those directories. If the application is using a standard OS file open/save dialog, it automatically gets permission to only the files the user chose, without having to grant it blanket Documents and Downloads permission. In theory you could make the permission correspond to "everything in ~/ except dotfiles and Library", but that would be more confusing. That said, the whole thing is a hack. The "proper" solution is/was App Sandbox, where the whole home directory is virtualized, and apps get a whitelist of what they can access rather than a blacklist. Much more secure! Too bad nobody adopted it.
- geofft 7y agoGiven how absolutely terrible "real" computers are at having a meaningful security model (see also https://xkcd.com/1200/ https://xkcd.com/1200/), I am entirely in favor of letting the iOS dev team, who have implemented a meaningful security model, design things while making sure they never hear about how "real" computers work.
- realusername 7y agoThe problem with that is iOS is only a consumption device, not an actual computer, their security model makes no sense if you are using the device like a computer.
- hoseja 7y agoDon't think, just consoom product.
- geofft 7y agoI use my iPhone like a computer. (I think. I mean, I don't spend a bunch of time cleaning up malware on it or reinstalling my Python environment because something got screwed up one day, does that mean I don't use it like a computer?)
- realusername 7y agoYou can but it's not really designed for that usage, hard to access files, unability to create a folder hierarchy, a lot of use-cases are outright forbidden by Apple...
- Fnoord 7y agoOn the other hand, they're easy to open and repair, and it is the user who decides what software they are allowed to run on their computer, unlike anything that iOS dev team got involved with. (Oh, and don't forget that basically all older iOS devices contain a local vulnerability which cannot be fixed.)
- 7y ago
- sgjohnson 7y agoReason for that is, those directories are synced to your iCloud Drive.
- Wowfunhappy 7y agoOkay, so if I turn off iCloud Drive syncing—because, for instance, the free iCloud Drive storage space is a pitiful 5GB—why can't I also turn off these special permissions? (You can add individual apps to full disk access but it needs to be done manually for every new app you install.)
- ksec 7y ago>It's like it was made by the iOS dev team but also the iOS dev team has never used a computer before. I have had the same thought for at least three years now. Apple has managed to pull itself back in 2019 with Qualcomm Settlement ( Finally admitting they were dump enough to start the fight in the first place ) iPhone 11, Mac Pro and MacBook Pro 16". Not perfect, late, slow but at least they reacted on the Hardware side. ( And Apple Store is getting some love too ) But Software is taking a beating. And it has been for a few years in a row already, especially on macOS. Swift adoption and future is also not very clear. It seems sticking to Objective-C for another year would be safe bet. Catalyst and Swift UI maybe another blow to macOS as well[1], they may be good, but I have doubt whether they will be great. [1] https://mjtsai.com/blog/2019/12/16/catalyst-and-cohesion/ https://mjtsai.com/blog/2019/12/16/catalyst-and-cohesion/