AptMoveHowto

Revision 1 as of 2005-11-16 15:55:03

Clear message

This page will describe how to make a cd which contains packages you have downloaded on one machine using apt or synaptic. The cd will be a repository that you can easily use on another machine using synaptic or apt-cdrom.

For example, I will show how to make a cd which contains the edubuntu-desktop package with all of it's dependancies.

The user of the cd will not need to use the command-line.

= Step one - Install the apt-move package =

sudo apt-get install apt-move

(Or just use synaptic)

I change the setting in /etc/apt-move.conf from CONTENTS=no  to {{{CONTENTS=yes }}} So that a file with the contents of the packages will be created.

Step two - Download the packages you want to put on the cd

In this example, we are starting from a freshly-installed system. We need to clean out the cache of packages in /var/cache/apt/archive. If you have already installed other packages, be sure that you leave them there so that they are put on your custom cd.

So, delete every package in /var/cache/apt/archives

{{{sudo rm /var/cache/apt/archives/*.deb }}}

And then install (or just download the edubuntu-desktop packages)

sudo apt-get -d install edubuntu-desktop

This will put the packages in /var/cache/apt/archives. Apt-move will look there by default.

Step three - Run apt move to create the archive structure

Make sure you have enough disk space first.

{{{sudo apt-move get sudo apt-move move sudo apt-move packages }}}

= Step four - Burn the cd =

Copy the folders contained in /mirrors/debian to a cd.

On a non-networked ubuntu machine, you can run synaptic, insert the cd and Go into Synaptic -> Edit -> Add Cdrom and it will ask you to pick a name for this cd. Enter it and it will add the contents of the cd to your repositories.

You can also do it from the command-line with

sudo apt-cdrom add

** To DO:

  • Add an override file so that you can use pinning on the offline repository packages.
  • Properly name the cd before you burn it so that the user does not have to do it.