The point is not to have the script directly install the program (e.g. getting the binary, putting it where it needs to be, and making a desktop file), but to have the script be used as a wrapper for any of the methods you mentioned above. This would allow for a more consistent installing experience, and in the future, a unified CLI. It would also be better for the reasons mentioned in my post.