GNU/Linux >> Belajar Linux >  >> Linux

Mengapa tidak ada pengelola paket yang benar-benar terpadu untuk Linux?

Pertama-tama, ada. Masalahnya bukan karena tidak ada pengelola paket terpadu, masalahnya ada sepuluh di antaranya – serius.

Mari ambil favorit saya:poldek . Ini adalah ujung depan pengguna untuk manajemen paket yang dapat berjalan di beberapa distro berbeda dan mengelola rpm atau deb paket. Poldek tidak melakukan hal-hal yang dilakukan rpm (itu menyerahkannya ke rpm) dan hanya mengirimkan perintah yang benar tanpa pengguna harus memikirkan semua kekacauan itu.

Tapi masalahnya tidak berhenti di situ. Setiap orang memiliki ide yang berbeda tentang seperti apa front end pengguna seharusnya dan bagaimana fungsinya dan opsi apa yang harus diekspos. Jadi orang lain telah menulis sendiri. Sebenarnya, banyak pengelola ujung depan paket yang digunakan orang di distro umum saat ini mampu menangani lebih dari satu backend.

Namun, pada akhirnya, masalahnya (atau keuntungannya) adalah orang-orang menyukai hal-hal yang berfungsi persis seperti yang mereka inginkan, bukan dalam mode meta yang mencoba memuaskan semua orang hanya untuk gagal membuat siapa pun bahagia. Inilah alasan kami memiliki sekian trilyun distro di tempat pertama. Itulah alasan kami memiliki begitu banyak Lingkungan Desktop dan Pengelola Jendela yang berbeda (dan fakta bahwa itu sebenarnya adalah hal yang berbeda).

Masih ada proposal yang beredar untuk cara menulis paket universal atau memiliki manajer yang memahami semuanya atau memiliki api untuk mengonversi satu ke yang lain ... tetapi pada akhirnya Unix paling baik bila digunakan sesuai dengan filosofinya .. . setiap alat melakukan satu hal dan melakukannya dengan baik .

Setiap kali Anda memiliki alat yang mencoba melakukan lebih dari satu hal, alat itu akhirnya tidak sebaik salah satunya. Misalnya, poldek menyebalkan dalam menangani dependensi paket deb.


Singkatnya:karena setiap distribusi menggunakan pendekatan manajemen paket yang berbeda. Mereka sama sekali tidak kompatibel. Strategi manajemen yang bekerja paling baik untuk Ubuntu tidak akan masuk akal di Arch dll. Manajer paket "universal" (independen distribusi) hanya akan menjadi lapisan tambahan antarmuka pengguna, yang tidak akan pernah berfungsi sebaik manajer khusus setiap distribusi.

Jadi, menggunakan kata-kata Anda sendiri, ini sulit dilakukan dan karena itu tidak praktis - juga karena hampir tidak ada orang yang mendapat manfaat darinya.


Alasan sejarah, terutama. Beberapa sistem manajemen paket dibuat pada waktu yang hampir bersamaan - khususnya .rpm dan .deb. Masing-masing memiliki penganutnya dan masing-masing cukup baik sehingga tidak ada satu pun pengelola paket yang memiliki keunggulan yang menarik. Distributor pasti tidak akan mengerti pentingnya membangun kembali sistem mereka dari bawah ke atas untuk mengimplementasikan manajer paket yang berbeda.

Ini juga akan membutuhkan setiap paket dalam sistem (10.000 dalam kasus debian) untuk dibangun kembali. Ini juga akan membutuhkan sistem migrasi yang lancar untuk diimplementasikan sehingga pengguna sistem dapat beralih dari yang lama ke manajer paket yang baru. Upaya untuk bermigrasi akan sangat besar, dan secara eksponensial lebih besar untuk menguji migrasi, sehingga Anda hampir pasti akan mendapatkan banyak kerusakan. Ini akan menghasilkan banyak penumpang yang marah.

Setiap distro mempertahankan kumpulan dependensinya sendiri berdasarkan apa yang dibuat untuk rilis tersebut. Repositori paket universal akan terlalu sulit untuk dikoordinasikan di antara distribusi karena konflik ketergantungan hampir pasti akan muncul. Oleh karena itu, manfaat sebenarnya dari sistem manajemen paket terpadu (paket universal) tidak mungkin terwujud dalam praktiknya.

Terakhir, siapa yang dapat memilih pengelola paket standar universal? Komik XKCD yang dirujuk dalam komentar di OP merangkum mode kegagalan yang biasa terjadi dalam jenis latihan ini. Menstandarkan hal semacam ini akan sangat politis dan kemungkinan besar akan menghasilkan sesuatu yang tidak dapat digunakan, atau cacat yang sangat dalam sehingga memunculkan putaran lain tentang standar - jika para pihak dapat mencapai kesepakatan sama sekali.

Jadi, intinya adalah:terlalu politis, terlalu keras, terlalu berisiko, dan tidak ada manfaat yang bisa diwujudkan dengan melakukannya.


Linux
  1. Mengapa kebutuhan saya akan kontrol membuat saya beralih ke Linux

  2. Menggunakan AppImage untuk manajemen paket Linux

  3. Apa manajer paket Linux favorit Anda?

  1. Linuxbrew – Manajer Paket Umum Untuk Linux dan Mac OS X

  2. Manajer Paket APT di Linux Dijelaskan

  3. Pertanyaan Wawancara :Linux Package Manager (RPM)

  1. Cara mengemas aplikasi Python untuk Linux

  2. Mengapa tidak ada API DirectX untuk Linux?

  3. Mengapa tamu linux hyper-v saya tidak menampilkan alamat ipadnya di manajer hyper-v