Best upgrade practices

How do folks prepare to upgrade to new versions of the same Linux distro? How do you keep track of installed apps and their settings?

I realize that old versions of apps may not successfully carry forward compatibly. We all hope that newer versions of those apps will be available and will work well.

Is there an inventory checker to report on apps which aren't in the official Zorin distro? Is a text file where we have to remember to note our actions the 'best practice' ?

Where would apps on Linux commonly store their settings? (I'm used to on Windows some old apps using .cfg or .ini files. Some use the Registry, and that's tougher to migrate to another machine, too.) In work environments some apps settings get stuffed into local/roaming profiles. Is the Linux equivalent of that the folder /home? Can that be successfully preserved and restored?

Do most folks create separate partitions on disk which don't get touched by the upgrade process? How would you tell your apps to look over there?

Sorry if this is all commonly well known stuff. If you know of other write ups about this please point me to them.


1 Like

Settings for apps are normally stored in the /home partition anymore, though a few apps will use /usr/share, /etc and even rarely anymore /var. Your safe bet is to have a separate partition for /home mounted at boot (setup during installation of the OS). Then, after the app is installed, all your settings and files are already there for it to recognize.

This may help you understand recommended partitioning for any dual-boot or single OS installation:

There are more resources online how to partition your hard drive for linux. Swap partitions aren't as necessary anymore, and sometimes included with the OS root partition on certain distros.

Unfortunately there is no specific command that will give you all the installed applications on your system. Sure there is apt list installed, and possibly snap list installed, but there are other ways to install applications and there is no telling which way you used, unless you remember or wrote down every app and procedure you implemented. Some are included with distros and others may not be...This would be on you to find (either by commands or through the Application menu button for your distro) and desktop shortcuts. This does not include any terminal applications you installed, such as inxi or development kits. Once you do have the setup you are interested in keeping, backup everything to a "storage" partition of either exFat, Fat32 or NTFS. I say those, because every distro and windows can access all three. Then you will only have to Install a distro, the apps, and unpack a backup in order to get back all that you had.

These are the "best practices" that I know of, though you may find some online that are more specific to your particular needs. I'm sorry I couldn't be of more help with an exact process. I hope this is helpful none the less.

1 Like

You are completely right. However, there are commands that will show all apps installed through APT, which would be the vast majority.

apt-cache pkgnames gnome | less

apt list --installed

This will list packages including those installed from a .deb:
Search a specific package:

apt -qq list program_name --installed

General search:

apt -qq list --installed

For snap packages, you can check with

snap list


flatpack list

The Software channel App has a button on the toolbar for "Installed". While this is not much help for making a list easily, like the terminal commands above which can easily be copied to a .txt file, it does help sometimes for fast GUI daily checking things.

In your home folder, settings are stored in ~/.config. 337harvey's post about Partitioning to install while keeping your home partition will also keep all configuration and settings stored in ~/.config as well as ~/.local/share.
Shorthand - ~/ means your Home Folder.

After installing the new OS, open terminal and run:

sudo apt full-upgrade

to upgrade installed packages if upgrades are available. You *may need to install the appropriate repositories for some packages that you initially installed from a repo.
You can get your repo list easily with sudo apt update and copy the results to a .txt file, save in your ~/Documents.

No, but Linux is Open Source and it is not necessary to stick with only the Zorin Repository. In fact, Zorin OS also uses the Ubuntu Repository Main Server by default. If you want an app that is not available in the current repo list, just run a google or duckduckgo search for that app name repository. For example; if you want to install unetbootin, search unetbootin repository. It usually will point you to where to go.

1 Like

@337harvey Minor detail, Do you mean
Settings for apps are normally stored in the /home partition [anymore]

1 Like