Mengapa Ubuntu pindah ke paket Snappy?


127

Mengapa Ubuntu membuang paket .deb dan pindah ke paket .snappy? (Setidaknya untuk saat ini mereka menyimpan paket deb untuk distribusi normal.) .deb sudah merupakan kemasan paling populer di luar sana.

Ini memberikan gambaran tentang apa format paket Snappy itu. Tapi apa yang akan terjadi pada paket deb yang ada? Apakah ada keuntungan yang jelas untuk pindah ke Snappy? Apakah itu sepadan dengan rasa sakitnya?


Jawaban:


147

Snappy adalah upaya untuk memecahkan salah satu masalah mendasar dengan Linux sebagai sistem operasi desktop dan masalahnya adalah ketersediaan paket dan distribusi paket. Namun, Snappy tidak sepenuhnya dimaksudkan untuk menggantikan utang. Snaps dan Debs saling bekerja sama.

Saya seorang penggemar Linux dan manajer proyek aplikasi Linux. Walaupun saya menyukai sistem Linux secara keseluruhan, saya membenci kondisi distribusi paket saat ini. Snappy bertujuan untuk memecahkan masalah mendasar ini.

Di Linux, paket adalah distro khusus untuk sebagian besar (dimungkinkan untuk membuat satu DEB yang berjalan di semua berbagai sistem berbasis Debian tetapi itu membatasi Anda dalam beberapa cara) tetapi tidak hanya paket yang distro versi khusus.

Jika saya membuat paket deb untuk Ubuntu 16.04 maka paket itu tidak akan berfungsi pada versi Ubuntu mana pun. Saya juga harus membuat 14,04, 15,04, 15,10, dan seterusnya. Ini hanya hutang Ubuntu. Saya juga perlu membuat satu untuk Debian. Maka Anda perlu membuat RPM untuk Fedora 21, 22, 23, dll dan RPM itu bahkan tidak mencakup openSUSE.

Ini berarti jika saya ingin merilis versi baru aplikasi dan tidak menunggu pengelola distro untuk memasukkannya ke dalam repositori (yang biasanya membutuhkan waktu yang tidak masuk akal) maka saya harus menyediakan lebih dari 20 paket untuk mencakup sebagian besar distro Linux dan tetap saja itu tidak akan mencakup segalanya.

Ubuntu's Snaps menyediakan cara untuk membuat satu Snap yang berjalan di setiap versi Ubuntu yang mendukung Snaps. Tidak ada lagi versi distro yang spesifik.

Snaps dapat diintegrasikan ke dalam distro lain. Berpotensi tidak lagi distro spesifik.

Terkunci dikendalikan dalam repo yang dimaksudkan untuk dipertahankan oleh pengembang paket sehingga ketika kami ingin merilis versi baru kami tidak harus menunggu siapa pun.

Pada dasarnya, semua yang saya benci tentang distribusi paket Linux akan diselesaikan oleh Snappy. Meskipun penting untuk dicatat bahwa masalah ini juga akan diselesaikan dengan AppImages dan Flatpaks .

TL; DR

Distribusi paket Linux sangat buruk bagi pengembang dan pengguna. Snappy (juga AppImages & Flatpaks) dimaksudkan untuk menyelesaikan masalah mendasar ini dengan sistem berbasis Linux.


Pertanyaan ini sebenarnya tentang mengapa pindah tetapi jika ada yang tertarik untuk belajar lebih banyak tentang apa yang terkunci dan bagaimana mereka bekerja. Saya membuat video ini untuk menjelaskan struktur secara mendalam.


13
Astaga, Anda membuatnya terdengar sangat keras, kecuali tidak ada yang pernah mendukung banyak versi Fedora, Debian, atau Ubuntu. Pada saat 16,04 keluar, 15,04 sudah EOL. Pada saat Fedora 23 keluar, F21 memiliki sisa hidup kurang dari satu bulan, cukup lama bagi orang untuk melewati rilis. Bukannya itu penting. Setelah Anda mendapatkan file spesifikasi RPM dasar atau paket dasar Debian yang ditulis, distro-distro lain adalah versi yang di-tweak, dan kemudian hanya tugas Jenkins untuk membuatnya untuk setiap rilis baru.
John Franklin

10
Paket Ubuntu dibuat untuk banyak versi: 14.04, 15.10, 16.04 dan beberapa terus mendukung LTS lama seperti 12.04 yang masih didukung. || Fedora tidak memiliki LTS jadi versi yang lebih sedikit untuk mendukung tetapi masih setidaknya 2 versi dengan kemungkinan 3 versi untuk mendukung. || Apa yang terdengar lebih baik bagi Anda? A. buat beberapa paket dari setiap versi aplikasi yang sama untuk satu distro dan lakukan itu untuk beberapa distro. ATAU B. buat satu jepretan untuk setiap versi aplikasi Anda dan itu berfungsi pada distro apa pun dan versi apa pun dari distro tersebut. Ya, saya memilih buncis dalam skenario itu.
Michael Tunnell

4
@ user447607 Anda salah paham apa itu Snaps dan Snappy. Tidak akan ada banyak redundansi, akan ada runtime dan akan ada opsi untuk memiliki terkunci tergantung pada terkunci lainnya untuk menghemat ruang. Ini sebenarnya sudah mungkin. Snappy adalah sistem manajemen paket yang berbeda yang menangani buncis dan apt masih terlibat dengan DEBs. Terkunci tidak menggantikan DEB, melainkan menambah DEB sehingga Anda mendapatkan pendekatan hibrid yang mencakup kedua metode. Bahkan, Terkunci dapat dihasilkan secara otomatis melalui DEB yang ada.
Michael Tunnell

2
@konung Docker adalah murni containerization dimana Snaps memilikinya serta integrasi dengan komponen inti sistem. Sebagai contoh, Docker mengharuskan semuanya dimasukkan ke dalam wadah untuk menggunakannya. Namun, Terkunci hanya memerlukan kebutuhan untuk dimasukkan dan kemudian bisa melihat di luar snap untuk memanfaatkan hal-hal lain. Snaps juga memiliki infrastruktur JAUH lebih baik karena Docker tidak memiliki mekanisme pembaruan nyata tetapi Snaps menggunakan sistem manajemen paket yang mirip dengan APT untuk Debian. Saya sarankan untuk memeriksa video yang saya tautkan pada posting asli. Saya berencana untuk segera membuat versi yang diperbarui.
Michael Tunnell

6
@konung Terkunci bukan wadah. Banyak orang membandingkannya dengan Docker misalnya tetapi Docker adalah wadah yang sebenarnya sedangkan Snaps tidak. Terkunci mirip wadah tetapi tidak penuh karena memungkinkan pengecualian di luar kurungan. Misalnya, pengaturan / konfigurasi / hal data disimpan di luar Snap di dalam folder / home. Dengan cara ini Anda dapat memiliki banyak versi snap seperti yang Anda inginkan semua berbagi data / konfigurasi yang sama.
Michael Tunnell

20

Sederhana saja. Paket snappy berisi semua file yang diperlukan , di mana paket .deb memiliki dependensi ke paket lain.

Sisi negatifnya adalah snappy lebih besar karena berisi semua file. Tetapi keuntungan besar adalah bahwa Anda tidak mendapat masalah dengan paket lain dan jika Anda menghapus paket ini, tidak ada paket lain yang akan dipengaruhi oleh dependensi yang hilang.


7
Ini juga berarti mimpi buruk keamanan. Oh, tolong buktikan saya salah ... karena menjadi benar akan sangat mengerikan.
Jürgen A. Erhard

27
Jadi pada dasarnya mereka mengambil jalur Windows - yang ironisnya diejek oleh Linux-ers di masa lalu.
Pithikos

1
Hey @ JürgenA.Erhard, seperti yang saya mengerti, setiap paket akan memiliki libnya sendiri, misalnya kriptografi, jadi alih-alih memverifikasi satu (mis. Kompilasi sendiri), Anda pada dasarnya harus berurusan dengan setiap paket secara terpisah, apakah itu yang Anda maksudkan dengan "mimpi buruk keamanan"?
Ilya

Koreksi: "berisi semua file yang diperlukan" tidak akurat karena ada buncis inti yang bertindak sebagai runtimes. Namun, ini ditambahkan setelah jawaban awal sehingga benar pada saat itu tetapi banyak yang berubah sejak saat itu.
Michael Tunnell

7

Snappy Personal, pendekatan baru mereka untuk manajemen paket / pembaruan yang dirancang untuk menjadi lebih cepat, lebih dapat diandalkan, transaksional, dan dengan keamanan yang lebih kuat.

Tajam untuk setidaknya satu dari putaran desktop mereka - rencananya adalah untuk mengubah putaran Desktop-Berikutnya Ubuntu dari .deb ke Snappy Personal.

.deb akan tetap ada dan pengguna normal masih dapat menggunakannya secara teratur saat mengkonversi .deb menjadi tajam.

Snappy akan digunakan untuk menyatukan konsep manajemen paket di antara ioT yang menggunakan snappy sekarang sebagai intinya Os. Selain itu, tajam memberikan cara yang lebih baik dalam memperbarui dan menyingkirkan masalah saat memperbarui / meng-upgrade karena menggunakan konsep seluruh gambar yang berarti pembaruan akan menjadi hanya satu bagian dan karena itu tidak ada cara gagal

Baca artikel-artikel itu untuk info lebih lanjut:

http://www.webupd8.org/2015/04/ubuntu-desktop-to-eventually-switch-to.html

http://www.itworld.com/article/2914850/linux/is-ubuntu-moving-away-from-deb-packages-here-is-the-complete-story.html

Ada juga video QA dari ubuntu on air yang menjawab banyak pertanyaan https://youtu.be/lHO8j8uo5Z4


9
mengapa mereka tidak bisa membuat paket .deb versi 2 dengan kompatibilitas ke belakang? Mengapa membuat perpecahan dalam komunitas linux?. Untuk saat ini rencananya adalah untuk secara perlahan bermigrasi ke Snappy kecuali itu gagal total.
Vishnudev K

mereka ingin menyatukan konsep manajemen paket di antara ioT yang menggunakan snappy sekarang sebagai intinya Os. Selain itu, tajam memberikan cara yang lebih baik dalam memperbarui dan menyingkirkan masalah saat memperbarui / meng-upgrade karena menggunakan konsep seluruh gambar yang berarti pembaruan akan menjadi hanya satu dan karena itu tidak ada cara gagal
Maythux

3
Ini cukup buruk dengan berbagai macam metode untuk kemasan di Linux (yang sudah menyebabkan masalah dengan program pihak ketiga), yang lain hanya akan membuat kekacauan yang lebih besar: - /
Wilf

@ Maythux. Apa itu IPT?
TRiG

4
@Maythux xkcd.com/927
a CVn

4

Pertimbangkan untuk pindah ke Ubuntu Core sekarang juga jika Anda berpikir untuk menciptakan sesuatu untuk digunakan orang lain, dengan kata lain, sebuah produk .

Perangkat lunak ini dikirim dalam bentuk terkunci , yang memiliki sifat-sifatnya, kita dapat memiliki keyakinan bahwa pemasangan dan peningkatan akan bekerja pada setiap sistem seperti yang dimaksudkan pembuat aslinya. Ciri-ciri lain adalah keamanan, seperti eksekusi yang terisolasi dan antarmuka yang bersih untuk berbicara dengan sistem dan mengkonfigurasi buncis yang diinstal.

Untuk mencapai hal itu, snaps berbeda jauh dari yang jauh berbeda dari paket debian:

  • buncis tinggal di lokasi yang ditentukan sistem terisolasi sementara paket debian dapat menyebar file di semua tempat.
  • tidak ada skrip pengelola untuk terkunci.

Kembali ke pertanyaan awal untuk menggunakan atau tidak menggunakan , jika Anda berencana untuk mengganti desktop Anda dengan Ubuntu Core, saya sarankan Anda tetap menggunakan desktop Ubuntu biasa. Ubuntu Core, saya pribadi suka menyebutnya, tidak ada distro , karena sendirian itu bukan apa-apa, tetapi menyediakan blok bangunan yang sangat baik untuk menawarkan sesuatu dan inilah mengapa ini populer di IoT akhir-akhir ini.


3
Dengan kata lain seperti apa yang dilakukan windows?
Vishnudev K

1
Itu pertanyaan yang luas. Apa yang dilakukan Windows khususnya?
sergiusens

4
Saya menginstal VLC di windows, menginstal semua paket yang diperlukan untuk menghabiskan ruang. dimana seperti di linux kita hanya mendapatkan paket yang tidak kita miliki. Cukup nyaman dalam hal pembaruan dan penggunaan hdd.
Vishnudev K

2
Mirip ya. Tidak ada bedanya dengan menginstal apkpada ponsel Anda. Aplikasi dapat berevolusi dengan dependensinya sesuai keinginan mereka. Ada beberapa cara untuk memisahkan ini, seperti menggunakan frameworksnaps, ini membutuhkan tinjauan keamanan yang ketat. Perbedaannya dengan Windows adalah bahwa tidak ada installer di sini yang berpotensi mendarat di mana pun mereka inginkan.
sergiusens

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.