Seperti yang dikatakan oleh beberapa responden, format paket tertentu tidak terlalu unggul. Secara teknis, mereka mungkin kurang lebih sebanding. Dari sudut pandang saya banyak perbedaan, dan mengapa orang lebih suka satu daripada yang lain, harus dilakukan dengan:
- Filosofi desain paket asli dan target audiens
- Ukuran komunitas, dan dengan perluasan, kualitas dan kekayaan repositori
Filsafat:
Di dunia Ubuntu / Debian / Mint / ..., pengguna mengharapkan paket yang terinstal "hanya berfungsi" setelah diinstal. Ini berarti bahwa selama instalasi, paket-paket diharapkan untuk mengurus segala yang dibutuhkan untuk benar-benar membuatnya berjalan dengan baik, termasuk tetapi tidak terbatas pada:
- mengatur pekerjaan cron yang diperlukan atau opsional
- menyiapkan alternatif / alias
- mengatur skrip startup / shutdown
- termasuk semua file konfigurasi yang diperlukan dengan standar yang masuk akal
- menjaga versi lama perpustakaan dan menambahkan symlinks versi yang benar ke perpustakaan (.so's) untuk kompatibilitas
- dukungan bersih untuk binari multi-lengkungan (32 dan 64 bit) pada mesin yang sama dan seterusnya.
Di dunia rpm - memang ini adalah situasi beberapa tahun yang lalu, dan mungkin telah membaik sejak saat itu - saya mendapati diri saya harus menjalankan langkah-langkah tambahan (misalnya chkconfig, memungkinkan pekerjaan cron) untuk benar-benar membuat paket benar-benar berfungsi. Ini mungkin baik untuk sysadmin atau orang yang memiliki pengetahuan tentang Unix, tetapi itu membuat pengalaman pemula menderita. Perhatikan bahwa bukan karena format paket RPM itu sendiri mencegah hal ini terjadi, hanya saja banyak paket secara de-facto tidak "sepenuhnya selesai" dari sudut pandang seorang pemula.
Ukuran komunitas, partisipasi, dan kekayaan repositori:
Karena komunitas ubuntu / debian / mint / ... lebih besar, lebih banyak orang terlibat dalam pengemasan dan pengujian perangkat lunak. Saya menemukan kekayaan dan kualitas repositori lebih unggul. Di ubuntu saya jarang, jika sama sekali, perlu mengunduh sumber dan membangunnya. Ketika saya beralih dari Red Hat ke Ubuntu di rumah, repo khas RHEL memiliki ~ 3000 paket di dalamnya, sementara pada saat yang sama, ubuntu + universe + multiverse semuanya tersedia langsung dari cermin Canonical, memiliki ~ 30.000 paket (sekitar 10x). Sebagian besar paket yang saya cari dalam format RPM, tidak dapat diakses dengan mudah melalui pencarian dan klik pada manajer paket. Mereka membutuhkan pengalihan ke repositori alternatif, mencari situs web layanan rpmfind dll. Ini, dalam banyak kasus, daripada menyelesaikan masalah, merusak instalasi saya dengan gagal membatasi dependensi apa yang dapat atau tidak dapat ditingkatkan dengan benar. Saya terkena fenomena "ketergantungan neraka", seperti dijelaskan di atas oleh Shawn J. Goff.
Sebaliknya di Ubuntu / Debian saya menemukan bahwa saya hampir tidak perlu membangun dari sumber. Juga karena:
- Siklus rilis cepat Ubuntu (6 bulan)
- Adanya PPA yang sepenuhnya kompatibel yang bekerja di luar kotak
- Repositori sumber tunggal (semua dihosting oleh Canonical) tidak perlu mencari repo alternatif / pelengkap
- Pengalaman pengguna yang mulus dari klik untuk menjalankan
Saya tidak pernah harus berkompromi pada paket versi lama yang saya pedulikan, bahkan ketika mereka tidak dikelola oleh pengembang resmi (Canonical). Saya tidak pernah meninggalkan manajer paket GUI ramah favorit saya untuk melakukan pencarian yang mudah berdasarkan kata kunci, untuk menemukan dan menginstal paket apa pun yang saya inginkan. Juga, beberapa kali saya menginstal paket debian (non Canonical) di Ubuntu dan mereka bekerja dengan baik, meskipun kompatibilitas ini tidak dijamin secara resmi.
Perhatikan bahwa ini tidak dimaksudkan untuk memulai perang api, itu hanya berbagi pengalaman saya setelah menggunakan kedua dunia secara paralel selama beberapa tahun (bekerja vs rumah).
debian
direktori tersebut ada di direktori di mana sumber hulu diekstraksi, dan Debian sangat menghargai konsep tarball sumber hulu murni. Ketika paket sumber dibangun, ada tiga (dua untuk paket asli) yang bersama-sama disebut paket sumber: tarball hulu (lebih disukai murni, kebijakan Debian mengharuskan beberapa proyek untuk dikemas kembali), tarball dari dir debian untuk format 3.0 baru, (beda untuk format 1.0 yang lama) dan .dsc.