why don't any linux distrubutions have common platform to install softwares? [closed]

I am new to Linux. I have been using Kubuntu for a while now. Any software that is built say in windows, has a executable/setup file. If you want to download any application. You just go to the official website of that application, download the relevant package and clicking on the .exe/setup file would open the package installer you just click next, next and install and thats it. The application would installed but that is not the case in linux distros, you have to open terminal and you have to install packages and in addition you also need to install some additional packages, patches, etc.. and there is no single executable file like in windows where it is easy to find and install. For installing any software,one usually has go to github copy the software package address and follow many procedures to get a software installed. So my question is why hasn't any linux distros built a common software installer like in windows? If not, is it possible in future to build one something similar to .exe/setup file where you can easily download and install without having to go through many procedures.

For eg, if you want to install a software of tplink wireless adapter, for windows it is very easy. There is a executable file, double click finish. but in linux just see this How do I get a TP-Link TL-WN823N V3 wireless adapter working?. And you will come to know what I am talking.


Solution 1:

You are ignoring the most important aspect of a Linux distribution: it is a distribution of multiple packages.

A Linux distribution guarantees that all packages that are part of that distribution work together. This is not at all the case with Windows: neither Microsoft nor Adobe nor Apple guarantee that PhotoShop and iTunes work well together, for example. (This is a stupid example, of course.) And I have observed plenty of cases in my almost 30 years of using Windows where installing one application broke another one.

Whereas in a Linux distribution, the distributor guarantees that all software packages that are part of the distribution work well together, including, for example, two packages from two different developers who don't even know that the other one exists.

Another difference is that Linux distributions support many more platforms than Windows does. At the moment, (consumer) Windows only supports two platforms: AMD64 and ARM64. And if you are using Windows on ARM64, you will already find that

You just go to their official website, download the relevant package and clicking on the .exe file would open the package installer you just click next next and install and thats it.

very often does not work because there is no ARM64 version.

Whereas a Linux distribution will guarantee that all packages which are part of the distribution are available for all platforms.

Just for comparison, Windows currently supports ARM64 and AMD64, Linux currently supports ARM 32-bit (multiple variants), ARM64, Alpha, Arc, IA-64 (Itanium), AMD64, x86, x32 (AMD64 with 32 bit pointers), ARC, C-SKY, Hitachi/Renesas H8, Motorola m680x0, Qualcomm Hexagon, Microblaze, MIPS (32 and 64 bits), OpenRISC, HP PA-RISC, PowerPC (32 and 64 bit), RISC-V, IBM S/390 (31 bit) and S/390x (64 bit), Super-H, SPARC, Xtensa, Andes NDS32, and Altera NIOS.

Now, of course, not all Linux distributions support all of those architectures, but Ubuntu for example supports AMD64, ARM64, POWER, and S/390x, that's twice as many as Windows. Other Linux distributions support even more: Debian supports AMD64, ARM64, armel (ARM 32 bit Embedded ABI for older ARM CPUs), armhf (ARM 32 bit with Hardware Floating Point support for newer ARM CPUs), x86, MIPS (32 and 64 bit), PowerPC 64 bit, S/390x. Gentoo supports AMD64, Alpha, ARM (32 and 64 bit), HP PA-RISC, IA-64, m68k, PowerPC (32 and 64 bit), RISC-V, SPARC, x86, and S/390(x).

For eg, if you want to install a software of tplink wireless adapter, for windows it is very easy. There is a executable file, double click finish. but in linux just see this How to install driver for TP-Link TL-WN722N on Ubuntu 14.04?. And you will come to know what I am talking.

That is a very special case.

First of all, note that the question is over seven years old. If you read the comments under the question, you will see that none of this is necessary any more. The driver ships with all current Linux distributions and the device just works out of the box.

The only reason why this looks so complicated is because the user that asked the question wants to use a brandnew device with an old version of the OS, and is trying to extract the driver from a newer version of Linux and make it work on an older version of Linux.

If they had simply waited for the next release of their OS and updated, they wouldn't have needed to do anything.

But to answer your question more generally: that is a question for the hardware vendor! If you want to know why TP-Link offers an installer for its driver on Windows but doesn't offer an installer for its driver on Ubuntu, then you have to ask TP-Link. Some for any other software: it is certainly possible to do what you are asking, but the vendors actually have to do it.

If a certain vendor chooses to publish installers for Windows but not for Linux, that is the responsibility of that particular vendor, not the Linux community.