LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Package tracker, installation tracker, program tracker for linux (https://www.linuxquestions.org/questions/linux-software-2/package-tracker-installation-tracker-program-tracker-for-linux-4175691307/)

andrewysk 02-28-2021 08:14 AM

Package tracker, installation tracker, program tracker for linux
 
I often have problem with uninstalling packages installed not by pamac and pacman.

The reason being:

eg1:
For example, i have OBS software installed, it runs good, but once it crashed, i can not launch the software anymore. Even when i uninstalled OBS and reinstalled, I still can't launch it.. This proved there are some settings stored on my pc that is not removed even when i uninstalled the software. But i can't find the setting to wipe out so that i can have a clean installation of the OBS software.

eg2:
I recently install grive2 package to access google drive.. After build it, i realized it does not have the function that i need. But there is no "uninstall" for grive2. Why should i keep all those junk on pc since i won't be using grive2 anymore..

Hence i think i need to install a installation tracker for all software installed on linux be it manual installation , build ....etc. This will facilitate "uninstallation" process in the future.


If anyone know one, please share with me.
Thanks.

Emerson 02-28-2021 08:30 AM

Your OBS. You haven't understood the structure and locations in filesystem hierarchy. Settings can be stored, yes, and configuration files may be not tracked by package manager. In short, systemwide configuration which applies to all users goes to /etc/* and is not user editable, root only manages that. User configuration for same application goes to his/her home directory, it can't be elsewhere, user has no write rights outside of home directory. When you ran your OBS it wrote into your home directory its setting and maybe also its status when exiting. Most applications put their conf into ~/.config/ - so this is the place to look first. See also 'man hier'.

Edit: You may also want to check the tmp directory, some cruft may be left there when an application crashes. Uninstalling and reinstalling is complete waste of time, it is an invalid approach, learned from that other operating system.

shruggy 02-28-2021 08:50 AM

Quote:

Originally Posted by andrewysk (Post 6225685)
If anyone know one, please share with me.

There are several, but all of them require some learning on your part in order to successfully use them.

To track changes in /etc I'm using etckeeper.

When I install anything to /usr/local (haven't done this in a long time), I do it using GNU stow.

Some use checkinstall for this (but I wouldn't recommend it to inexperienced users, and experienced ones don't need it, anyway).

There are tools that facilitate putting user home directory (or only dotfiles therein) under Git control (homesick, vcsh).

There are also tools like unburden-home-dir.

And so on.

andrewysk 02-28-2021 08:53 AM

Quote:

Originally Posted by Emerson (Post 6225692)
Your OBS. You haven't understood the structure and locations in filesystem hierarchy. Settings can be stored, yes, and configuration files may be not tracked by package manager. In short, systemwide configuration which applies to all users goes to /etc/* and is not user editable, root only manages that. User configuration for same application goes to his/her home directory, it can't be elsewhere, user has no write rights outside of home directory. When you ran your OBS it wrote into your home directory its setting and maybe also its status when exiting. Most applications put their conf into ~/.config/ - so this is the place to look first. See also 'man hier'.

Edit: You may also want to check the tmp directory, some cruft may be left there when an application crashes. Uninstalling and reinstalling is complete waste of time, it is an invalid approach, learned from that other operating system.


Thank you. Your info is super valuable to me, i will look into it.. Thank you.

Can you also tell me thing like grive2 (google drive sync cli tool), where could it reside in ? so that i can wipe it off ?
If i wipe it off , will it leaves behind something in system some where ? for example when i remove the executable file from my system, when i type "$grive" into my terminal, will it prompts something like "can't find executable file" (which means there are some cruft left..) ? which is something often happened in windows os when we remove the *.exe file manually ..

shruggy 02-28-2021 08:59 AM

Quote:

Originally Posted by andrewysk (Post 6225704)
when i type "$grive" into my terminal, will it prompts something like "can't find executable file" (which means there are some cruft left..) ?

That message doesn't necessary means there's some cruft left. It only means the shell cannot find an executable of the name you provided.

Emerson 02-28-2021 10:19 AM

andrewysk,

the standard location for applications you build from source is /usr/local/*, executable goes to /usr/local/bin/, your grive2 went there. You can safely delete everything you find there, it won't affect the normal operation of your distro, this location is not used by distro package manager.

computersavvy 02-28-2021 12:48 PM

Quote:

If i wipe it off , will it leaves behind something in system some where ? for example when i remove the executable file from my system, when i type "$grive" into my terminal, will it prompts something like "can't find executable file" (which means there are some cruft left..) ? which is something often happened in windows os when we remove the *.exe file manually ..
There are several places to look for user specific configs, and all are located in or under your $HOME.

Try .local/share, .config, .cache, and a dot file or directory with the name of the app. Beyond that you might need to search a little more but it will be there. Exactly where depends upon the app itself.

andrewysk 02-28-2021 02:05 PM

Thank you everybody. Appreciate your input. I will have to do my part now with all the info i got from you. Thanks.


All times are GMT -5. The time now is 12:01 AM.