That's not quite true. No package operation should remove user data, ever, under any circumstances.
The reasoning for this is simple: The application doesn't own the data. You do.
Firstly, as an aside, other than the Ubuntu login screen, if an application asks you to log in, then your data is almost certainly not on your machine. The log in process is most likely related to an online authentication mechanism to provide access to your data stored somewhere else. Android and iOS have a (limited) ability to sync small amounts of user and configuration data for applications with "cloud" servers, but that doesn't necessarily disappear after uninstalling an application either.
All OSs (including Windows* and Android) are dependent on removal scripts. These presume that you want the software to go away but keep the configuration so that you can install it again later. The --purge
option to apt
merely removes configuration files.
If you're making modifications outside your own data (/home) then we assume you know what you're doing so your system continues to behave to your configuration. It's easy to rm -R
the config files yourself, it's not so easy to get your specific customised version of things back the way you had set them up. So these scripts tend to err on the side of caution.
These scripts make various assumptions about what was installed and they are frequently written by humans who can make mistakes. Sometimes the software does something special, particularly when the software has dependencies.
We (Ubuntu developers) do do tests on test systems. We install the software into a clean installation of Ubuntu, and then we run apt remove
and apt --purge remove
and verify that the system returned to the expected (pre-installed) state.
If you do see a situation where a package is installed, no modifications are made to the config, and the package is then removed but files remain, then please file a bug against that package.
An alternative is to use snap
, which houses the application entirely in its own environment.
*(in fact, this is one of the top ways Windows applications install malware, by "piggybacking" malware onto applications you choose to install, and then not removing them when you uninstall them.)
purge
instead ofremove
.