Can’t we get an easier & handy software installation process in Ubuntu?

After eying the title of this post, you must be astonished –  why on earth I am saying that Ubuntu needs an ‘easier‘ and ‘handy‘ software installation process! Software Installation in Ubuntu is already a breeze. All one have to do is just heading to the Ubuntu Software Center, find/choose what software one needs and then hit the install button. Or one can download the .deb package and double click it to install the program. The installed program is ready for one in no time. Anyone have to admit that it is really pretty easy, even easier than Windows (where you have to click lots of ‘Next’ buttons during the installation process).

This whole procedure is easy if the computer is connected to the internet. What if the computer is in offline? You’re probably wondering who doesn’t have internet now a days! Actually there are a lots of them. Such as in my country Bangladesh, internet is not available to the majority of the computer users. Even though the minority gets the benefit of internet, they don’t have blazing fast speed. An average home user gets 10 kbps to 15 kbps download speed. Which is quite a low speed for downloading. And obviously majority users are using Windows. As there is a scarcity of internet and proper download speed, people download  necessary software installer from some online computers and then use that downloaded installer to several other offline computers to install the program.

Now compare the scenario with an Ubuntu installed offline PC. Probably the easiest way to install a software in an offline Ubuntu computer is using the Keryx. It can keep track of the source ppa and dependencies, which is quite awesome. But still not easy enough to handle for a newbie. How? Well… firstly, using a third party software to install programs is a bit ‘scary‘. Secondly, if any one wants to share the downloaded file with others then it will be a problem. Suppose I have an offline Ubuntu computer and I want to install some program. So I take my flash drive (which have Keryx inside it) and connect it to a computer which has the internet connection. Then I download the desired program with the Keryx, and install it in my offline computer. It is easy. But what if I want to install that same downloaded program to another offline Ubuntu PC? There are sure chances that the dependencies in the second PC will be conflicted. Because it downloads the dependencies according to the first PC, so the second PC will suffer from dependency issues. And that is a nightmare for an average computer user. So as a result, previously mentioned “download with one computer and install in several different computers” theory does not work here smoothly.

To be frankly, the average users don’t give a damn about the dependencies. They don’t want to search the web to find out which libraries (and which versions) are required to install a specific program. They need the system to be ‘just worked’. I’ve seen many users who are very much afraid to use Ubuntu as they don’t have internet connection in there home. And they don’t want to jumble themselves with the dependency hell.

My point is to find out that whether it is possible to implement a more easier and handy software installation process for the offline computers (like MacOSX may be). All the dependencies will be packed in a single package for a certain program. (Please don’t be confused with the projects like portable linux apps. I am talking about a complete software installation.) The user just need to download that file and drag-n-drop that file (like MacOSX) to some places (may be in the Application lens) or double click the file (like the .deb files) for installation. Or may be we can figure out a smarter way to accomplish this. Thus it would be much more handy for the newbie users as well as the offline users.

I am not sure if I made my point clear. In recent days, Ubuntu emphasis on the looks-n-feels for the users. I think it is also important to simplify the software installation process for the newcomers as well as for all the offline users. To my view it is one of the important bottle neck. May be it is a dumb idea. Some of you may point your finger to the security issues. But I didn’t find any simpler idea than this for helping the offline users. Any thought on this? Any other idea?