> А если системный пакетный менеджер удалит зависимость, которая из-за этого не была
> зероинсталлирована? А если обновит её несовместимым с зероинсталлированными программами? На этот случай есть процедуры проверки и восстановления окружения. Бтв, и как часто в стабильных ветках бинарных дистрибутивах происходят такие "несовместимые" обновления? Чуть менее, чем никогда.
> А если обновление зероинсталлированной зависимости поломает кучу зераинсталлированных
> кривых программ (как libc поломал флеш)? Как вообще можно указывать зависимости
А причём здесь Zero Install? Это за пределами ответсвенности пакетного менеджера. Любого.
> для разных пакетных менеджеров разных систем, если они по-разному называются, нумеруются
> и разбиваются на пакеты? Что делать, если системная зависимость собрана с
Где по-разному? Системные зависимости называются известно, как, и при интеграции с ними используются принятая в системе номенклатура.
> неожиданными для зеропакетировщика опциями? Или если разные зероинсталлированные программы
Неожиданными для человека? Какие претензии к Zero Install в этом случае? Или в случае пакетирования системными средствами "неожиданные" опции внезапно становятся "ожиданными" сразу и навсегда?
> требуют одной и той же версии зависимочти, собранной по-разному?
А если не-зероинтсаллированные программы требуют такой зависимости? Она волшебным образом разрешается, да? Кстати, в системах типа ZI это разрешается на уровне путей во время линковки при сборке: две разные версии (и в смысле номера либы, и разные по настройкам или содержанию) живут в разных директориях и называются - ну кто бы мог подумать?1 - по-разному.
> Что делать с подмонтированным noexec домашним разделом?
Монтировать без noexec и перестать делать вид, будто это когда-то что-то значило для безопасности. Либо собирать и ставить софт где-нибудь в /var.
> Не проще ли тогда уж подгружать готовый образ диска для виртуалки, со
> всем готовым окружением?
Да, вот только виртуализации нам и не хватало. Легковесно, надёжно, удобно и безопасно, чо.