Продолжение дебатов, порожденных статьей «Единый Linux». Приведу всего один факт.
Вот страница загрузок под Linux для всего одной программки VirtualBox.
Please choose the appropriate package for your Linux distribution:
Ubuntu 10.10 ("Maverick Meerkat") i386 | AMD64
Ubuntu 10.04 LTS ("Lucid Lynx") i386 | AMD64
Ubuntu 9.10 ("Karmic Koala") i386 | AMD64
Ubuntu 8.04 LTS ("Hardy Heron") i386 | AMD64
Debian 6.0 ("Squeeze") i386 | AMD64
Debian 5.0 ("Lenny") i386 | AMD64
openSUSE 11.3 i386 | AMD64
openSUSE 11.1 / 11.2 i386 | AMD64
SUSE Linux Enterprise Server 11 (SLES11) i386 | AMD64
SUSE Linux Enterprise Server 10 (SLES10) i386 | AMD64
Fedora 14 ("Laughlin") i386 | AMD64
Fedora 13 ("Goddard") i386 | AMD64
Mandriva 2010.0 / 2010.1 i386 | AMD64
Mandriva 2009.1 i386 | AMD64
Red Hat Enterprise Linux 6 ("RHEL6") i386 | AMD64
Red Hat Enterprise Linux 5 ("RHEL5") / Oracle Enterprise Linux 5 ("OEL5") / CentOS 5 i386 | AMD64
Red Hat Enterprise Linux 4 ("RHEL4") / Oracle Enterprise Linux 4 ("OEL4") / CentOS 4 i386
Turbolinux 11 i386 | AMD64
All distributions i386 | AMD64
Почти два десятка пакетов должен собрать разработчик программы, чтобы его детище заработало в Linux.
А теперь аналогичный раздел для Windows:
VirtualBox 4.0.2 for Windows hosts x86/amd64
Прошу заметить, что обилие пакетов для Linux не несет каких-либо дополнительных возможностей, специфичных для каждого дистрибутива. VirtualBox остается одинаковым во всех пакетах. Следовательно, существование зоопарка пакетов не вызвано принципиальной необходимостью и является нарушением принципа Бритвы Оккама.
Поставьте себя на место разработчика. Вы написали программу и хотите, чтобы она работала в Линуксе. Вы как, установите 19 дистрибутивов под виртуальной машиной или купите 19 компьютеров? Или будете ждать пока разработчики основных дистрибутивов оценят вашу гениальную программу и не начнут собирать пакеты сами? Или все же проще один раз всем договориться?
Бред! Вполне достаточно исходных текстов с одной системой сборки (autoconf, cmake или qmake на выбор). А дальше пакеты под все популярные системы появляются довольно быстро (в течении недели после релиза). Сам разработчик и знаю это не по наслышке.
А если программа новая, то она тоже сразу появится, например, в официальных репозиториях Ubuntu или все же разработчик должен будет какое-то время распространять ее своими силами через свой сайт, предоставляя соответствующие пакеты? А если авторы не распространяют исходники (например, Opera)? И главное, ради чего все эти трудности? Единый формат чем-то помешал бы Вам распространять свой софт "в течении недели после релиза"?
0install же.
Эх, жаль что на десктопах так мало типов процессоров. Десятка два отучили бы самостоятельно собирать пакеты, а заодно и качество кода приподнялось бы.
А компиляция из исходников, надо полагать, привела бы к взрывному росту популярности Линукса?
Всё больше Джавы.
Для линукса проблема так остро пока не стоит.
Действительно полезные программы проверяют и добавляют в репозитории.
Пример выбран не совсем типичный для линукса, всё же программа с закрытым кодом (её открытый вариант VirtualBox OSE в репозиториях есть).
______________
В виндовсе, да, удобно, что обычно один установщик.
Только это совсем не значит, что программа будет одинаково хорошо работать в любой версии виндовс!
Свежий пример:
Настраивал на днях один компьютер. Там скйп вдруг начал вешать систему.
Оказалось, что он автоматически обновился до свежей версии, а та стабильно вешает виндовс ХП (по крайней мере, на том железе). Подозреваю, что авторы добавили в скайп поддержку каких-то красот из вин.7, а там ХП и старая видеокарта...
Пришлось старый скайп скачать (заработало:) и запретить обновление.
И это, мягко говоря, не самая мало распространённая программа! И версий виндовса меньше, чем версий линукса.
Не стоит торопиться с единым установщиком для линуксов! (Хорошо бы, конечно... Но хотелось бы, чтобы результат стабильно работал:-)