2 Answers
2

There are two things which seem to fit the bill, Snap and Flatpak. The aim of both is to package up all dependencies to work across distributions and versions. Of the two Flatpak is more 'universal', whilst Snap is used quite heavily by Ubuntu.

Don't forget AppImage! I'd probably never use Snap, and I don't like Flatpack that much. To use an AppImage on any distro, the user doesn't need to install any "handling package" like one must with Snap and Flatpak. Simply drop the AppImage in dome directory, make it executable and run it. Done.
– Izzy♦Apr 18 at 19:25

makeself.sh is a small shell script that generates a self-extractable
compressed tar archive from a directory. The resulting file appears as
a shell script (many of those have a .run suffix), and can be launched
as is. The archive will then uncompress itself to a temporary
directory and an optional arbitrary command will be executed (for
example an installation script). This is pretty similar to archives
generated with WinZip Self-Extractor in the Windows world. Makeself
archives also include checksums for integrity self-validation (CRC
and/or MD5/SHA256 checksums).