I mean, what else would double-clicking a .tar.gz file or an appimage do than install it (yes, I know, look into the archive, but really - how often is that the desired thing to do)?
Personally, I open tarballs quite often. Why? Just wanna know what’s inside them.
Double click translating to install on tar.gz is not wise since anything can be packed in a tarball, a gzip archive or a gzipped tarball.
And then you have a similar problem with tar.xz (it’s becoming more and more popular from what I can see). It doesn’t use gzip to compress the archive, it uses LZMA, so you have to use xz instead of gzip to decompress the tarball.
Basically, it boils down to how UNIX used to work. Mind you, back in the day there were no package managers, it was all done with .tar.zip or make install. This really was hell to be honest… keeping track of what app installed what libraries and versions of it… yes it really was a PITA. This is the real reason why package managers were invented (thank god!) and why having only one package manager on a system is the preferred way to handle apps/software. Otherwise, you’ll soon be in dependency hell. Shared libraries are at the core of any UNIX based OS. Yes, Flatpaks/Snaps/AppImages and package managers like nix circumvent this problem, but in no way is the problem gone. It’s still there, we just don’t mess around with it.
So, basically the idea of having an “installer” came quite late into the game. Plus, having to check on all dependencies and making an install script that worked on every single distro out there was just so complicated, that no one would ever want to go through with it. Sure, there are install.sh scripts in some pacakges out there, but they basically check nothig, it’s more or less “copy this here, that there” which of course could be done by hand anyway… and then run the app and pray it has all of the dependencies it needs 😬… which it never does 😂.
Personally, I open tarballs quite often. Why? Just wanna know what’s inside them.
Double click translating to install on tar.gz is not wise since anything can be packed in a tarball, a gzip archive or a gzipped tarball.
And then you have a similar problem with tar.xz (it’s becoming more and more popular from what I can see). It doesn’t use gzip to compress the archive, it uses LZMA, so you have to use xz instead of gzip to decompress the tarball.
Basically, it boils down to how UNIX used to work. Mind you, back in the day there were no package managers, it was all done with .tar.zip or make install. This really was hell to be honest… keeping track of what app installed what libraries and versions of it… yes it really was a PITA. This is the real reason why package managers were invented (thank god!) and why having only one package manager on a system is the preferred way to handle apps/software. Otherwise, you’ll soon be in dependency hell. Shared libraries are at the core of any UNIX based OS. Yes, Flatpaks/Snaps/AppImages and package managers like nix circumvent this problem, but in no way is the problem gone. It’s still there, we just don’t mess around with it.
So, basically the idea of having an “installer” came quite late into the game. Plus, having to check on all dependencies and making an install script that worked on every single distro out there was just so complicated, that no one would ever want to go through with it. Sure, there are install.sh scripts in some pacakges out there, but they basically check nothig, it’s more or less “copy this here, that there” which of course could be done by hand anyway… and then run the app and pray it has all of the dependencies it needs 😬… which it never does 😂.