How to dupplicate your packages selection

You may want to save your selection of packages, in order to reinstall all your softs later without having to look for and manually install them one after another. It is a convenient way to move a server to a new machine.

On Debian / Ubuntu, this is quite easy.

A while ago the solution used to be :

$ dpkg --get-selections > file.txt

and then, an a freshed installed machine :

$ dpkg --set-selections < file.txt
$ apt-get upgrade

But, for some reason I don’t know and that I would be happy to learn, it seems that this does not work anymore.

Below is the way I got it to work, though it is a little bit more complicated.

So, let’s save the selection of packages into a clean list file, though we are only interested in the packages names :

$ COLUMNS=200 dpkg -l | awk '/^[hi]i/{print $2}' | xargs > liste-apt.txt

and to install on the new machine :

$ cat liste-apt.txt | xargs apt-get install -y

So far, it worked very well on my servers ! APT is a great tool.