Причин для цього багато, і трохи історії - для того, щоб поставити речі в перспективу.
Пам'ятайте, що коли ми говоримо про "Linux", то, що ми зазвичай маємо на увазі, є одним із багатьох різних дистрибутивів Linux . "Linux" - це фактично ядро операційної системи.
Початкова мета Linux полягала у створенні системи на базі Unix, яка працюватиме на ПК (спочатку 386). Першим кроком було створення самого ядра. Поки Лінус Торвальдс працював над ядром, Річард Сталлман працював над власною системою Free Unix, в рамках проекту GNU (GNU's Not Unix) . Щоб скоротити довгу історію, вони дещо зблизилися, оскільки GNU мав пов'язані з ними утиліти (інструменти для компіляції / бібліотеки / збирання, оболонки, текстові редактори тощо), але не було ядра для його запуску, а Linux мав ядро, але не утиліти для бігайте поверх нього, щоб зробити його корисним для мас.
Ця конвергенція стала офіційно відома як GNU / Linux. Ви побачите, що багато дистрибутивів все ще називають себе дистрибутивами GNU / Linux.
Через вільний та відкритий характер GNU / Linux кожен бажаючий міг підібрати його та створити пакетну систему відповідно до своїх специфічних смаків. Результатом було те, що для створення цих систем було використано багато різних потоків різних методів конфігурації, що спричинило побічний ефект від створення майже такої кількості різних систем управління пакетами, щоб вони вміщувались у кожну.
У кожної різної повної системи були свої сильні послідовники, які трималися з ними протягом багатьох років, в результаті чого ми маємо сьогодні: кілька широко використовуваних, глибоко вкорінених і стабільних систем управління пакетами, таких як RPM , APT / dpkg та Gentoo's Portage .
Є такі проекти, як Автопакет , які намагаються вирішити проблему, але безперервна еволюція різноманітної підтримуваної системи управління пакетами означає, що є багато рухомих цілей.
Деякі постачальники програмного забезпечення в кінцевому підсумку - це поєднання конкретних бінарних файлів та копій залежностей, які вони потребують, в один великий пакет, який працюватиме на конкретних системах.