On the Ubuntu desktop, it is difficult for a user stuck without Internet because all packages are directly downloaded by the package manager. In India, unfortunately, Internet is not available for everyone. If you’re is lucky to have a laptop AND have a friendly local Internet Centre where you can connect your laptop, you’re among the few who can browse on Ubuntu (apart from those who have Internet ;)). I’ve been searching for a way to download the packages off-line and then install at home for people from my LoCo.
The latest Full Circle Magazine had an article giving a few workarounds for this, including a script generated by Synaptic Package Manager, APTonCD, and Keryx. The 2 most attractive options are to generate a script from Synaptic Package Manager and Keryx Project. They let you download on systems without Ubuntu and bring the .deb files to Ubuntu.
Generate a Script from Synaptic Package Manager
Start Synaptic Package Manager and mark all the applications that you want to install/upgrade. Instead of clicking the “Apply” button from the toolbar as you would normally do, go to the File menu and select “Generate Package Download Script” menu option to generate the download script. Save the generated script file. Give it a name like ‘ubuntu.sh’ and click the “Save” button. This script file can now be carried to a machine which has a fast Internet connection and it needs to be executed there.
To download the softwares on a Windows machine, use Linkification plugin to convert text links into genuine, clickable links. Then, use DownThemAll plug-in. When the plugin in installed, go to Tools > DownThemAll and include *.deb in fast filtering. If downloading from another Ubuntu machine, just type sh .sh in terminal after changing directory to the folder containing the script.
The Keryx Project only needs to be installed on the system with Internet connection and it downloads the debs. The best about Keryx is that its compatible with Ubuntu/Debian, Mac, and Windows. Download the Keryx Project from their download page.
There is an excellent tutorial on using Keryx by crashsystems on his website.