Why Not Install Software Packages From The Internet
Hello, avid Linux readers! Someone from the Internet has told you not to execute random scripts you find on the Internet and now you’re reading why we shouldn’t install software packages from the Internet. Or more specifically, the aim of this article is why it’s wise to stick to distribution maintained packages and not those latest software packages we find out there on the Internet even if it’s distributed by the official brand’s page.
However, it’s okay to download software packages that are not available on the distribution repository but not vice versa. Read on below to learn more about why.
What software are we talking about?
The two most popular ways software is distributed are:
- As packages through distribution repositories.
- Through the Internet.
The first option is much safer than the second. However, there are two variations again for installing software downloaded from the Internet.
That is one requires an admin (or root) password and the other doesn’t. For instance, if you download the Firefox web browser from the Internet, you can install and run it on your home directory directly. Whereas, if you try to install hplip (HP’s printer, fax & scanning software) from the Internet, it requires modifying your system files by asking your root password during installation. Such software are prone to breaking your system even if it are distributed by the original manufacturer. And they are the main topic in the discussion here.
Installing software from the Internet breaks your system
Your system breaks the moment you install that downloaded software package from the Internet. Because your new software configuration files and the distribution maintained software configuration files don’t match anymore. And yes, of course, you won’t notice any sign that your system is broken just that it may respond well with the new software.But the day you decide to switch back to the repository version or upgrade your system to the next major release version, you’ll realize that your system is broken. And then spend countless hours googling around the Internet looking for a fix. That’s tedious and time-consuming.
So what breaks the system?
You just installed a new software package from the Internet and what happens after that is the new software overwrites your previous configuration file(s). When you later decide to switch back to the distribution maintained software, the repository program that replaces that downloaded-from-the-Internet program does not understand what the new configuration file is saying. So it spits out lots of error messages. Let’s assume you encountered the above situation and were able to solve the problem by deleting the overwritten software’s configuration files. That way, when you launch the program, it writes new configuration files again since it doesn’t detect one for loading and hopes the program to run successfully.
Well, if you’re lucky the program obeys you 😛 but otherwise the program would most likely still continue to fail to run!!! If that’s the case then it’s not only the configuration files that’s the culprit for breaking the system but the library files too. That’s where things get more complicated because we cannot know for sure which library file is causing the program to fail unless we are technically intelligent.
If we had been more careful and consciously aware of our actions, we would first purge all the software packages that are about to be replaced and then reinstall the software packages from the repository.
And it’s difficult to fix it back
Staring at those error messages printed on the terminal program, we’d copy an error message and search it online using search engines. The process takes a long time depending on how we understand what geeks are saying. Some use complicated technical jargons that would likely leave us clueless. And if we’re lucky we might encounter our solution at first mouse click. Otherwise, this is a reference to reference read more posts and articles work.
However, nothing in Linux is unfixable, so fret not there is always a fixable solution to a problem 😉
Software in repo aren’t unusable
Software in distribution’s repositories may be outdated lacking new features but they aren’t unusable. It’s just that they lack the new updated feature(s). And in case if you’re wondering why distribution maintainers don’t update/upgrade that particular software keeping in sync with the original developer’s version, it’s because the maintainers have varying specifications for their development cycle for the Linux distribution.
Usually, most Linux distributions employ the term “freeze state”, which just means that new features for the software aren’t updated anymore instead updating only it’s security vulnerabilities and applying bug fixes. This ensures the user gets better stability over features that might break the system unexpectedly. The best example Linux distro which employs this “freeze state” model is Debian.
Switch Linux distro instead
Well, you must have already known there are literally hundreds of Linux distros out there that meet different needs. So yes there is a Linux distro (oh, in fact, various Linux distros) that provide the latest cutting-edge software firsthand to the users. Fedora is the best example that suits our case.
So it’s wise to switch Linux distro instead of breaking your existing system and making it unnecessarily complicated to maintain. That way the Operating System won’t get in your way when you need your work done the most.
Conclusion
It’s not wise to install software packages from the Internet however with the exception of some software packages that are not found on your distribution software repository. For example Opera web browser, Google Chrome, IntelliJ, etc. Then again if you need the latest software maybe because you have new hardware that does not work on your existing OS. Switch Linux distro to one that would meet your needs instead. Sure it may take some time to get used to it but it’ll be worth the effort. Hope you enjoyed reading this post. And I’d love your feedback in the comment section below too.