Mac apps often do various things on your computer. Just because you dragged it to Bin, doesn't mean there are no leftovers on your computer. I'd prefer proper uninstaller any day.
> Mac apps often do various things on your computer. Just because you dragged it to Bin, doesn't mean there are no leftovers on your computer. I'd prefer proper uninstaller any day.
I think I know what you're talking about. There are likely files inside the ~/Library/Application Support/ or ~/Library/Caches/ folders for example.
What is the proper, Apple way to make sure these get deleted when we delete apps? Because I fear there is no universal solution here. There are some files that an app creates that some of the time I would probably want to persist uninstalls. But then these files should be in a user home directory, not in application support according to XDG, right? I feel like the OS should detect dragging of an app to the trash can and clean up its app support folders? I don't think it does this today but I think it should.
It wouldn't be hard to display "remove configuration and cache files?" modal during uninstall/trashing process. But it would be hard to go against own simplicity of platform usage idea - that's the problem.
KDE's Discover after you uninstall a flatpak application shows small infobar (still really easy to miss) saying "appname is not installed but it still has data present." with "Delete settings and user data" button.
But then, all sort of software even on Windows leaves some kind of traces of own presence.
In a perfect world we'd have a standardized application uninstall procedure - either by dropping icon on trash (which is something still many people do - especially on Windows) or by bringing similar to mobile solution with "x" on longer click. All of this controllable by options for advanced users including optional configuration and cache files removal.
This problem has been around for decades. An application installer doesn't just copy some files to a few directories. It may put them in hundreds of different places. In addition, it adds entries to the registry or other system files. Even the best uninstallers or cleaners miss something when deleting the app.
This is one of the many issues my side project is designed to address. Imagine if installing every application meant just dropping it on the computer. The software 'package' was just a list of data objects the comprised all the files, config settings, etc. Needed to run the app. All these objects would be copied to the storage drive(s).
Imagine further, that the operating system did not have a central registry. Instead, all configuration was managed via a set of configuration objects, spread all over (preferably in the app folders). The configuration manager was just a program that could find every configuration object and make them appear to the user (and the OS) like they were in a unified file.
If a configuration object was copied anywhere in the system, it looked like its contents were just appended to the configuration store. If you deleted an object, all its settings just disappeared.
Uninstalling an application would mean just deleting all the objects in its package. The files would be gone and any configuration settings with them.
This is just one of the features my 'file system replacement' project is designed to handle.
> Uninstalling an application would mean just deleting all the objects in its package. The files would be gone and any configuration settings with them.
Applications developers of the world. Please always make "keep configuration" an option with your uninstallers! I don't like the mobilification of PCs. For example, because of some issues, I wanted to try a different version of Thunderbird. I had the Snap version. Uninstalling it meant losing all its mails. I wasn't expecting that. Like at all!
The is actually what Windows App Sandboxing does for Win32, the registry is virtualised and all writes kept track from, however this needs to be explicitly enabled, e.g. using msix packages, or the application management tool.
They certainly can clean everything after them. And I'm pretty sure that many of them do. When macOS user drags application folder to the Bin, application does not have a chance to clean after itself.
Just because some Windows uninstaller are bad doesn't mean that all of them are bad, or that uninstaller concept is bad.
Now I'd welcome for operating system to be built in a way to let user to delete everything related to the application. Maybe android or ios are built this way, but not macos.
Sorry an advantage over what? What desktop operating system in common use _hasn't_ had decades of development of pet projects on obvious problems like system cleanup? Literally every operating system has these kinds of things
Yeah. But mac is still and I mean BY FAR the cleanest of all operating system when you got to uninstall stuffs.
Windows is as bad as Linux, leftovers everywhere without any sense whatsoever. Some company use a directory, other use another, makes no sense.
On Linux, at least there is some kind of uniformity but since all apps install with sudo permissions, they get put everywhere and you never really know where.
On macos, you got 2 folders to look for, all in the user directory (app, application support) and that's it.
If you are aware of this not hard to manage. Grep. rm -rf. Done. Usually its pretty tiny folders at least. Heavier stuff usually software makes a directory under Documents. Kinda nice in a few cases having it set up like this. For example I can delete the app but preserve my config. Drop the app right back again and no setup its turnkey and works.
You can check these things out periodically. Probably a good exercise to understand parts of the OS if any of it seems unfamiliar. At least they are there, standardized locations where these sorts of tools might leave these sorts of crumbs behind. There are reasons why things go where they do. Seems byzantine until you write your own tooling and realize a lot of it is convenience functionality.
Sorry for being nitpicky about the exact tool, my broader point is that "Foo" or "corporation" isn't always obvious and is sometimes someone/thing you've never heard of before and would never think to search off the top of your head.
But like where would it be found? People are saying gotchas to me but they are saying things like host files or other directories where one might find services stored on macos. These aren't in some cryptic areas is what I am saying. If you are familiar enough with the OS to understand the concept of launchd and background services you know about these directories and what they might contain. These things are where you kinda ought to put these sorts of services if you are to write that sort of service for macos.
And really, this is better than what I've seen in linux where everyone wants to be cute with their own hidden directory paradigms.
What's new with Pearcleaner? I don't see a comparison chart in the GitHub repo, and I don't care for features other than completely uninstalling an app.
Haiku package system has an unparalleled installstion, deletion, boot into previous states, data integrity (read only packages) and dealing with conflicting library policy. Its a technical crime that other systems are not copying Haiku packages … they’re several decades behind. IOS is half way there …