Part of the initial process before the computers get sent out will be to have the computers mostly updated.
Instead of copying the software from one computer to the other, it would be alot easier to simply have a flash disk, or cd with some mostly recent updates. Once the computers get sent out it will be up to the teachers to keep the computers updated. Software like apt-proxy and squid will help make it less bandwidth intensive to keep the machines updated.
Keryx is fairly intuitive, but I had a bit of a problem with it because I was expecting to have to take the /var/lib/dpkg/source file to the computer with internet.
Keryx does everything for you. Take it to the computer with no internet, start a project, and it copies all the relevant files.
Then take it to the computer with internet access.
First you download the repository list (sudo aptitude update). Then there's an easy button to download updates (sudo aptitude full-upgrade).
There's also a list of all applications (based on the reposotiroy list it downloaded) that can be downloaded. Since it did a check on the original computer before you switched computers, it only downloads the files you need and don't have.
All the files it downloads are conveniently located in a keryx/projects/<project-name>/packages/
This makes it nice for me because since I'm using it for templating I can simply copy them onto a CD and run updates this way.
Maybe I can keep updating this "template" so that I don't have to start over, but can just update the current downloads to be the newest.
Anyway, for a more "official" tutorial, check out
I'll update the post and post comments on any updates as I use it.