Hello, We are using FAI to install Debian on different PCs and devices and met a problem that should be quite common but we couldn't find an easy or obvious solution. We have a core of stable packages that are used by any HW platform. But also we need to install different versions of some packages on different HW platforms. A good example is video drivers. For some cards we need not stable versions (testing or unstable) of drivers that by-turn depend on not stable versions of xserver-xorg-core and some other Debian packages. We need to have installed not stable version of packages only for those HW platforms that do need them. For others stable versions of the same packages must be used. So, the best case is if we could describe a stable repository common for all the platforms and a non stable repository or repository branch for each plaftorm that needs not stable versions of packages. FAI mirror can be combined from different repositories that can be configured in FAI config (/etc/fai/apt/sources.list) but is a single repository.
Can someone suggest a way to install different versions of the same package for different HW platforms? Our thoughts were the following. 1) Using instsoft hook, which is run before packages installation process starts, to add HW specific repository for the platform handled. apt-get update is run after adding a HW repository to sources.list. We tried this but didn't succeed. 2) Next idea is to have all versions of all packages in FAI mirror and choose Packages.gz for particular HW platform dinamically. 3) As we know it is not possible to have different version of packages in one repository index file (Packages.gz), otherwise we could think about describing exact version in dependency. So, we even thought about renaming not stable versions of packages to an extended name containing e.g. "testing" suffix. It's feasible but it's hard to mantain we think. Did anyone solve similar problems? Can you suggest a way from your experience? Thank you in advance, Alexey.