A Universal standard for removing software in linux!
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
A Universal standard for removing software in linux!
Hallo... I actually posted this, with a poll, over at the Gentoo forums and it's had a few replies and quite a few +ve votes. I'll simply cut and paste the first message:
Quote:
Okay, I've seen topics about removing software in the past and I've also wondered about it myself. Portage is an excellent system, but we all need to install software from source every once in a while (some more-so than others). Now, how do you remove that software?
Well, at the moment, you have to hope that the developer included the make uninstall function which allows you to remove the installed software. This actually means keeping the entire source directory (or the Makefile and config.mak from the source dir). This is tedious.
This thread is to see really, how many people think there should be a standard where devs can start to implement a feature which, when running make install, will also copy the Makefile and config.mak to a unique directory, say, somthing like: /usr/share/remove/softwarename, for example.
It wouldn't be hard for them to implement and would be pretty useful. I just wanted to know how many people thought this would be a good idea and hopefully one day, implemented by linux software developers?
I just wanted to know what more people thought about the idea. Another poster at the boards suggested that instead of copying the Makefile and config.mak to another directory, a script could be placed there instead. I like this idea. What do you think?
I'd like your idea of a directory somewhere else with all uninstall scripts. I don't keep most source directories but get them and configure them to make uninstall after that.
well that's the point... keeping the source directories (if one was inclined to) takes disk space. Having the remove files available in a set place where the user could simply run the script to remove the software would make life easier (more-so than downloading the source files again and having to re-configure - as well as having to remember the install path if you changed it from the default).
If you use Slackware packages, Debain packages or RPM's, then checkinstall is the solution. It replaces the make install step of compiling from source and creates a package that you can easily remove with the normal tools. However, I'm unfamiliar with Gentoo's package system so I don't know if checkinstall will work for Gentoo users. For me, it has been the perfect solution. I don't install from source without it.
Well gentoo has a package management system called Portage. It's all source based though, as in, it downloads the source, configures for you and then compiles. This system is brilliant for most things, even having the ability to remove or upgrade installed software.
But this is in regard to manually compiling and installing software downloaded from the internet and also keeping it as a standard as something that software developers themselves would implement. This idea is only in regard to source based software.
I'm not sure about slacks system, but both RPM and Debian packages are binary based, but share similarities with Gentoos portage system.
In some cases you need more files than makefile and config.mak to uninstall don't you?
You could also use ./configure --prefix /opt/programname everytime you install a program, then you can easily do a 'rm -r /opt/programname' on it .. ..
I have heard that the major linux distributions are going to join together and share a universal directory structure among other things. This is a step in the right direction. But having the Makefile install / create a script that will remove ALL references to installed software, including libs that came and are only needed for that piece of software.
I just think it's a sound idea and would benefit many users who install most or all software from source. The script could even give installation information such as version numbers, install date etc and the ability to remove or upgrade - all in one nifty little file.
Nobody has yet said anything negative about the idea and it also should be very easy to implement on a basic level. Each script or file can be read in an editor and if someone wished, a simple console front end could polish the look.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.