Например, qbittorrent занимает где-то 12мб. flatpak-версия загружает около 600мб при первом использовании.
Вот что такого он там импортят на 600 МБ, а виндовый экзешник весит 36 МБ? Или программы в винде на самом деле тоже сильно нуждаются в зависимостях (вроде популярных когда VC++ Redistributable, но он маленький вообще-то), но они сильно централизованы в самой винде и считается, что по умолчанию есть в любой винде? (С другой стороны, core пакеты тоже должны быть в любом линуксе).
А не сделали ли такие варианты (и если нет, то почему):
1. Возможность поставить несколько версий одного пакета, а зависимости у других пакетов прописываются как диапазон версий. Типа в системе стоит:
package1 0.9
package1 1.0
package1 2.2
Мы ставим пакет package2, в котором прописана зависимость
package1, version >= 1.0
Тогда будет браться последняя версия >= 1.0, т.е. 2.2.
2. На худой конец что-то вроде virtualenv, как в Питоне (как в других языках, не знаю):
в виртуальную среду ставим нужные версии нужных пакетов, все остальные подтягиваются из глобала.