Do application installs need to be tracked to prevent OS damage?

I'm a soon-to-be recovering Windows user. That is, I plan to purchase Zorin Pro soon and install it and begin using it (rather than Windows 10) for daily use.

I have decades of experience with Windows. One thing a Windows "power user" learns to do is track application installs, in order to be aware of drivers / services / space-wasting garbage that applications install, and whose "uninstallers" never completely remove.

The users who don't track such things are the ones who need to reinstall / repair Windows every 6 months.

Is it the same under Zorin? For example, if I try new software and quickly decide I don't like it, do I need to manually track that it didn't leave drivers or something else behind? If so, how is this done?

You can Purge the Software the same way you installed it via the terminal, Some Software leave behind configuration files and some other junk which can be removed by rm-rf commands. You should Search the web to find the perfect uninstallation Commands/Methods. Software Related to WiFi can cause internet problem if config left unchanged after Software is Uninstalled. The Software you leave behind will just feed on your resources nothing more.

1 Like

No way am I working solely by CLI. Surely it can be done by UI as well.

Sounds like the same problems exist. OK, so on Windows I use a utility called "Total Uninstall" which tracks installations and makes removing leftovers easy to do via UI.

It's not just a matter of removing the stuff, it's knowing that it's there in the first place. This is of course what makes tracking it necessary.

Is there a similar utility that works under Zorin?


sudo apt install bleachbit

Bleachbit Should work as a good disk cleaner, But I suggest you to start getting familiar with terminal if you are using Linux. It's Not that Difficult. Ask for more help if you, want we are Always here :smile:

BleachBit? I tried and dumped that utility on Windows years ago. It fills a different use case.

You can certainly use a GUI to manage your packages.

In my experience I've never had issues with leftover files or dependencies. The package manager used in Linux works really well.

But if you are still concerned about this you can install a lot of programs using a packaging format called Flatpak. Basically it's bundle of the executable along with every dependency it needs to run, and it runs isolated from the rest of the system. In fact some preinstalled apps in Zorin are flatpaks.

As usual there are pros and cons to this, with many in favor or against, and it's a big topic in general. Here's a video that explains a bit of the history and use of these packaging formats AppImage and Snap being the other two most popular.


I encourage you to rethink this...

What valid and reasonable reason would you have to make such a statement?
My story is similar to yours. I used Windows OS exclusively for over a decade and a half. Had never used Linux until Zorin OS.
Now, I use the Terminal (CLI) for all installs and removals. It is far faster, easier and more efficient.
Let's say I decide to do not want a package that I installed:
I simply use the remove --purge parameter. No need for tracking. The removal takes care of it.
About once a week, I run

sudo apt clean && sudo apt autoremove

And this clears the APT cache and removes any installed dependencies I no longer need.
With this you get Less Bloat and more control.
For GUI management, I highly recommend switching from the default Software store to using Synaptic Package Manager.
Synaptic can seek and destroy leftovers in the same way that the terminal can, using the in-built GUI buttons.
It can also help isolate and remove Broken packages.

(I see that @zenzen has made the same recommendation).

It is inevitable that if switching to a new Operating System, you may need to address doing things in an unfamiliar way. Just because you have always done things a certain way does not mean it is the only or even best way.
Expanding your horizons and enjoying the power returned to you may enable you to find better ways of managing your machine.

This must come with the warning that due to that isolation, many apps do not work, since the isolation means that they cannot properly interact with and communicate with essential files.


I think the reason a lot of people go back to Windows from Zorin is because they can't get their head around using the terminal .... coming from Windows where there was a program for everything or anything you wanted to do there was no reason to have to learn to use a terminal .... M$ did everything for you including think ..... and in each version of windows it gets worse and worse ....

In Zorin there is a terminal but some people never use it .... you don't have to .... Zorin will work just fine for everyday life .... BUT .... if you want to unleash Zorin to it's full potential the terminal is the way to go .... it is faster and more reliable than .... I feel .... any other method especially if you want to customize the OS ....

When I first started with Zorin one of the things I vowed was never to learn to use the terminal .... I saw no need in it after all M$ did all my thinking for me so why not let Zorin do the same .... but I soon (with the help of others here on the forum) found this was not the case and like a baby I took tiny steps one at a time to begin using the terminal ....

I soon discovered that if I wanted to use different packages .... DE's or even some programs the terminal was the only way to go ..... ex. ..... I use NordVPN and it has to be used within the terminal .... no big deal .... everyday when I fire up my laptop I open the terminal and type "nordvpn c us8262" and connect to a server in the US .....

Installing programs is so much easier in the terminal than going to a website and downloading say a .deb file .... opening it and installing it ..... on the same website find the terminal command ..... copy it .... paste it in the terminal and hit enter and wala your program is installed ....

These are just a few of the reasons I use my terminal everyday .... but like I said you really don't have to and many people don't .... the choice is yours .....

1 Like

A point: A GUI application will only include the commands that they have buttons for. Whereas the terminal makes use of any logical command. This makes reliance on GUI apps very limiting in what you can do.

So I will also echo the above that you reconsider using the terminal.
That said most applications in the software center are now flatpak or snaps, which are installed inside containers, so when you remove them all files get removed. there maybe tempfiles in ~/.cache but these get cleared out often and can accessed with any filemanager.
I do recommend you install flatseal as they gives you a lot of options for flatpaks normally only available to cli.

I stated 2 options in the unofficial manual for Zorin 15.
The principal installer uninstaller with a GUI should be Synaptic Package Manager.
With that you can install a package of your choice.
In the left hand pane is a list of different Groups:
Amateur Radio
Embedded devices
Gneme Desktop Environment
GNU R statistical sytem .... and so on.
Select a heading then all the apps are listed in the top right pane. Click on an App and a description of what that app is and does appears in the bottom right-pane. You check mark the box to the left of the app in the top right-pane by left clicking and a drop-down menu appears. If not installed the only option in the drop-down is 'mark for installation'. After you have done this, click on the Apply button near the top. You can remove packages by marking for removal - this may not remove everything but you do have the option to mark for 'complete removal' which will get rid of any other dependencies that got installed.
The other GUI application is useful when trying to install 3rd Party .deb packages - Gdebi Package Manager. This will tell you if the application you are trying to install has unmet dependencies. It is safer not to install such applications because they may well have not been updated to meet the latest Gnome DE or Linux Kernel.
I avoid Flatpak, snapd, and AppImages completely.
Give me Synaptic or the CLI anytime over these disastrous elements - they were only designed for Windows migrants and to make programming easier for devs to allow their apps to run Cross-Platform. For me there can only ever be one platform, GNU/Linux!

1 Like

First, I am not opposed to using a CLI. I have worked in IT for decades. I used to be a software engineer. I do a lot of my own scripting. I just don't want to use a CLI exclusively. I have health issues and limited energy. I used the word "solely". I don't want to solely rely on a CLI.

Also, I did not intend to ask how to uninstall applications. What I was getting at had mostly to do with what are known under Windows as drivers and services.

For example, many applications used under Windows install driver files under the Windows system directory, and they get left behind after the application is "uninstalled". Then you're left with a driver that runs even though you want nothing more to do with it.

What I am asking is if something similar happens under Zorin, and if so, how it can be dealt with.


In Simple Words, The Story is Entirely Different, No we do not have that problem on Linux/Ubuntu even a .exe or .bat malware has no power here :joy:

Every Time we run an uninstallation Command ,Our system removes all the drivers/files. Sometime there is a need of rm-rf commands only for configuration files, But for basic user Interface everything is fine. If something feels wrong, raise a topic here :wink:

I had the same concern, so I started using Timeshift snapshot to restore the system after a couple of install / uninstall procedure. It's worth or it's just a waste of time?

I would consider this overkill, myself...

No, what you describe in this post is not how APT works in Zorin OS.
In Zorin OS, the only software that can carry a lot of bloat, drivers, etc that can be left behind in significant quantity is Flatpak packaging.

Let's take this back a step for clarity to benefit all readers:

In Zorin OS and across Linux Distributions, there is a standardized packaging system. For Debian - Ubuntu based systems, that is the Advanced Packaging Tool: APT.
We use apt to communicate with APT. You might install with sudo apt install software-example and remove with sudo apt remove software-example
If dependencies are needed, these are often installed along with the software.
These are automatically installed packages and are removed with sudo apt autoremove.
The sudo apt remove --purge command will also remove any residual config and cached package files.

On any OS, installation can and will result in leftover files and for good reason. Having the configuration files remain after a removal allows a faster and more efficient user experience.
This is true on Windows OS as much as on Linux, even though there is much less left behind on Linux.
Taking a step forward: We examine Snap and Flatpak packaging, both of which were more recently developed and introduced and seek to emulate how Windows OS does package management.

Snap was introduced by Canonical, the Ubuntu company. Flatpak was introduced by the Gnome Foundation.
Both of these systems carry all dependencies, even the ones you already have, with the package. That software itself is isolated and sandboxed, running in its own container. So it cannot communicate with the essential files on the system. It must bring copies of all dependent files, whether you already have them or not.
With Flatpak, removing the software with flatpak remove does not remove the dependencies and additional bloat it carried along. it only removes that specific software. Anything else that came with it remains in case it is needed for some other software that you install with Flatpak. Flatpak will hold more of these software extras than Snap, in general. Both do it, but Flatpak takes Top Dog in holding onto bloat.
There are advantages to this.
And there are disadvantages to this.

Personally, I avoid Flatpak and snap entirely. I remove snapd and flatpak upon any new installation of Zorin OS. Completely.
My own reasons are:
They have both shown stark security holes. They both carry a lot of unnecessary bloat. Packages are much less stable due to their isolated sandboxed nature, causing many applications to simply not work. They are also less stable because they tend to be rolling, not Long Term Stable packages.
And because both management applications have repeatedly violated what FOSS stands for on more occasions than I find tolerable.
For example, Canonical promised that Snap would not replace apt to the users, then broke this promise and replaced apt with Snap. They reverted this change after user outcry. But trust was already broken.
I moved to Linux to get away from corporations telling us one thing, then sneakily doing another.

On Linux, there is no Registry.
With APT and using apt to communicate with the package management, you should see significantly less retained package files after an uninstall - which is easily remedied with sudo apt clean && sudo apt autoremove. If you prefer a GUI manager, Synaptic will perform that Same Command with one button.
Ubuntu-Cleaner or Bleachbit will also perform that cleaning. So one needs not open the terminal if they prefer GUI.
The terminal is just a powerful utility that users should be well-practiced with and not fear and avoid is all.


So both snap and flatpak install their own dependencies that aren't removed when uninstalling the main application. What about Appimage? For what I read this format contains all the necessary inside the file.

Appimage also contains all the necessary things to run an application. There are differences between appimage and Snap or Flatpak:

  • Appimage acts as a Stand Alone Application.
  • Appimage is not necessarily sandboxed by its own programming. Flatpak and Snap both end up double-sandboxed. It is noteworthy that on Linux, all system apps are sandboxed in the system, which is why Snap / Flatpak end up doubled.
  • Appimages tend to be smaller.

Appimages may not adhere to a uniform system theme. They tend to be preferred for stand-alone apps that are lightweight and portable.
Removing the appimage will remove everything included in it.


Very good to know, as I thought this was precisely one of the benefits of using them. I also tend to avoid them but I've been liking AppImage recently, and I already use a few programs in this format. But knowing this now I think it's officially my preferred package format (behind .deb of course).


It is...
Here we see:

How we perceive these depends on our use case and how we perceive them.

The realtor was trying to sell a property and outlining all its selling points to the buyer.
The buyer spoke up, "Wait... isn't that place right by the train tracks?"
Glancing at her notes, the realtor promptly responded, "Yes. Close to transportation."

Retention means: Not having to get the packages again.
This is why all package managers, whether apt with apt-cache or flatpak or Windows, retains the configuration files. With Flatpak, it is considered an advantage that it retains all the dependencies, so that you do not have to install them again.
After a few Flatpak installs, you have gathered up many dependencies, and each flatpak install after needs less bandwidth to download files, less time to get everything going.
What is "close to transportation" for one user, may be bloat to another.
Granted: apt keeps a few small config files and Flatpak retains massive dependency files...

Part of my take on this is the lack of necessity for this. Flatpak and Snap introduce confusion to many new Linux users. They do not replace APT, though Gnome Foundation had hoped it would. And there can be inter-system communication problems causing the apps to not work. Indeed, any flatpak user really should have Flatseal along with it.
While these problems with Flatpak can be addressed, as with Flatseal, the primary question is "why bother?" The lack of real necessity for Flatpak is its Achilles heel.


I'm essentially heartbroken over how difficult it is to be heard. No one understands what I am saying. I think I give up.