I am using reprepro
to create a partial local Debian mirror. My conf/updates
file looks like this:
Name: update-wheezy
Method: http://ftp.tu-graz.ac.at/mirror/debian
Suite: wheezy
Components: main contrib non-free
Architectures: i386
FilterList: purge mirror.packages
FilterList
points to the file mirror.packages
which contains all the currently installed packages. I create this file with dpkg
:
dpkg --get-selections > conf/mirror.packages
So far so good. It works well. But then I noticed that some packages are missing in my local repository. The output of dpkg --get-selections
contains some lines where the package name ends with :i386
. Example:
libxxf86dga1:i386 install
libxxf86vm1:i386 install
lighttpd install
Exactly those i386
-packages are missing. I got around this by removing the suffix:
dpkg --get-selections | sed 's/:i386//g' > conf/mirror.packages
Now my questions:
- Is this a bug in reprepro? Or am I doing something wrong? The man page states that
FilterList
takes the output format ofdpkg --get-selections
. - Is there some way to have
dpkg
suppress the architecture? - Why do some packages have the
:i386
suffix, but most have not? - Why is the architecture part of the package name anyway? Is it possible to have the same package from different architectures on the same system?