У пакетов есть требования - они зависят от других пакетов.
Иногда может потребоваться несколько разных версий пакета (скомпилированных с разными опциями)
План такой:
1) разместим результаты компиляции каждого пакета в отдельной директории
2) в момент установки пакета проверим, что есть все зависимости и соберем при помощи unionfs для этого пакета отдельный chroot, в котором будут логически установлены только нужные пакеты
3) ???
4) profit
В чем профит?
в том, что программные интерфейсы (API/ABI) бывают разные и некоторые из них менее требовательны, а другиее более требовательны. Например, если программы сопрягаются через интерфейс командной строки и там добавился один параметр, сильно заметно это не будет.
При этом не нарушаются правила FHS - все где лежало там и лежит, не происходит конфликтов версий - хоть из разных дистрибутивов пакеты адаптируй (всё равно у них chroot-ы разные),
можно сделать на базе любого дистрибутива
т.е. не нужно использовать какое-то уникальное решение типа GoboLinux