Pendahuluan
Dibandingkan dengan sistem operasi utama lainnya, Linux mengambil pendekatan yang berbeda untuk manajemen perangkat lunak. Perangkat lunak di Linux secara tradisional diatur dalam repositori. Repositori berisi aplikasi dan semua dependensi yang diperlukan untuk menjalankannya.
Meskipun menggunakan repositori nyaman karena berbagai alasan, sering kali menjadi kendala bagi pengguna yang tidak paham teknologi. Beberapa sistem pengemasan alternatif telah dibuat selama beberapa tahun terakhir untuk membuat pengalaman Linux lebih ramah pengguna.
Dalam artikel perbandingan ini, Anda akan mempelajari tentang perbedaan antara sistem pengemasan Snap dan pengelola paket APT.

Apa itu Snap?
Snap adalah paket perangkat lunak dan sistem penyebaran yang menggunakan paket mandiri yang disebut snaps untuk mengirimkan perangkat lunak kepada pengguna. Snaps mengemas semua dependensi yang dibutuhkan program dalam satu paket. Dengan cara ini, aplikasi bersifat agnostik sistem, artinya aplikasi ini dapat berjalan secara native di semua distribusi Linux yang mendukung Snap.
Sementara APT sebagian besar memperoleh paket dari repositori resmi distribusi, Snap memungkinkan pengembang untuk mengirimkan aplikasi mereka langsung ke pengguna melalui Snap Store. Pengembang juga dapat memublikasikan snap langsung di situs web mereka.
Alat untuk manajemen snap disebut snapd . Ini adalah daemon yang memungkinkan sistem untuk menjalankan paket snap. Pengguna berinteraksi dengan snapd menggunakan snap
klien.
Di bawah ini adalah contoh instalasi Thunderbird menggunakan snap
perintah:

Apa itu APT?
APT (Advanced Package Tool) adalah manajer paket perangkat lunak untuk menginstal dan menghapus paket pada sistem berbasis Debian. APT mengotomatiskan proses mengambil, mengonfigurasi, meningkatkan, menginstal, dan menghapus paket. APT adalah front-end dari sistem manajemen paket dasar Debian dpkg .
Salah satu manfaat utama APT adalah cara menangani dependensi perangkat lunak. Setelah pengguna mengeluarkan perintah untuk menginstal sebuah paket, APT mencari repositori untuk dependensi paket dan menginstal yang belum diinstal pada sistem.
Alat yang terutama digunakan APT untuk berinteraksi dengan pengguna adalah apt
. Utilitas ini menawarkan apt-get dan apt-cache
yang paling populer perintah, yang dianggap kurang ramah pengguna.
Tangkapan layar menunjukkan pemasangan Thunderbird menggunakan apt
:

Jepret Vs. APT:Perbedaan
Sebelum masuk ke detail mengenai perbedaan antara Snap dan APT, perlu dipahami tingkat di mana kita dapat membandingkannya.
Tabel di bawah menjelaskan terminologi dan memberikan poin perbandingan utama:
Jepret | APT | |
---|---|---|
Jenis paket | .snap | .deb |
Nama alat | snapd | APT |
Alat CLI | snap | apt |
Format | Arsip SquashFS | arsip ar |
Tersedia di | Snap Store | Repositori Debian |
Ukuran Pemasangan | Lebih besar | Lebih kecil |
Ketergantungan | Terdapat dalam paket | Dibagikan |
Pembaruan | Otomatis | Manual |
Kurungan keamanan | Terbatas | Kurungan terbatas |
Beberapa penginstalan | Mungkin | Tidak mungkin |
Penginstalan beberapa versi | Mungkin | Tidak mungkin |
Format Paket
Jepret menggunakan .snap
file, tersedia untuk diunduh di Snap Store atau di situs web pengembangnya. .snap
file berisi aplikasi, dependensinya, dan metadata dalam sistem file terkompresi SquashFS.
Aplikasi Snap dikemas, mirip dengan cara Docker mengemas wadahnya. Namun, tidak seperti wadah Docker, aplikasi snap memiliki akses terbatas ke sistem host, terutama untuk menyimpan file konfigurasi dan menggunakan I/O sistem.
APT menggunakan .deb
file dari repositori perangkat lunak online untuk setiap distribusi Linux yang mendukungnya. Sebuah .deb
file adalah arsip Unix, yang mencakup dua arsip tar. Satu arsip berisi informasi kontrol, sedangkan yang lain menampilkan file yang digunakan untuk instalasi paket.
Ukuran Paket
Jepret mandiri, yang menghasilkan .snap
. yang relatif cukup besar mengajukan. Saat pengguna menginstal snap, file didekompresi dan dipasang sebagai perangkat loopback hanya-baca di direktori home.
Aplikasi yang dipasang melalui APT ukurannya lebih kecil daripada rekan snap-nya karena tidak perlu membundel dependensi paket.
Ketergantungan
Jepret bundel dependensi paket di dalam paket. Meskipun pendekatan ini berdampak negatif pada ukuran paket, manfaat utamanya adalah pengguna selalu memiliki versi paket yang didukung dan diuji.
APT menggunakan pendekatan ketergantungan bersama. Saat pengguna mengeluarkan apt install
perintah, APT membaca daftar dependensi, memeriksa apakah sistem sudah menginstal beberapa paket, dan menginstal yang hilang. Teknik ini mempertahankan jejak memori yang kecil.
Kemudahan Penggunaan
Perbedaan kemudahan penggunaan untuk pengguna akhir tidak signifikan. Jepret aplikasi bersifat universal dan lebih praktis untuk dipelihara oleh pengembang, dan merilis pembaruan adalah proses langsung untuk mengubah satu paket.
Sebaliknya, APT memeriksa repositori untuk menemukan pembaruan. Saat pembaruan siap, sistem repositori memerlukan versi terpisah untuk setiap distribusi (Ubuntu, Linux Mint, Pop! OS, dll.) dan setiap versi distribusi (Ubuntu 18.04, Ubuntu 20.04, dll.). Metode ini memakan waktu dan terkadang menyebabkan penundaan untuk distribusi tertentu.
Kecepatan
Jepret memiliki waktu mulai lebih lama dari APT karena OS dekompresi terkunci pada penggunaan pertama untuk menghemat ruang disk. Namun, snap lebih lambat hanya pada putaran pertama – perbedaannya berkurang atau hilang sama sekali pada startup kedua.
Pembaruan
Jepret proses pembaruan otomatis. Pengguna tidak dapat mencegah pembaruan aplikasi snap, hanya menunda prosesnya. Pengembang Snap tidak dibatasi dalam hal kapan mereka dapat merilis pembaruan.
APT memberikan kontrol penuh kepada pengguna atas proses pembaruan. Namun, ketika distribusi memotong rilis, biasanya membekukan deb dan tidak memperbaruinya selama rilis. Oleh karena itu, Snap adalah solusi yang lebih baik bagi pengguna yang lebih menyukai versi aplikasi terbaru.
Integrasi GUI
Jepret dirancang untuk menjadi universal. Dengan demikian, mereka tidak terintegrasi secara sempurna dengan GUI dari berbagai distribusi.
Baru-baru ini ada beberapa perkembangan di komunitas Snap mengenai integrasi tema. Ini termasuk memperkenalkan layanan latar belakang yang mengawasi perubahan tema dan menawarkan pengguna untuk menyesuaikan aplikasi mereka agar sesuai dengan tema OS. Namun, ini masih dalam proses, dan snap masih belum sepenuhnya terintegrasi ke dalam OS host.
Di sisi lain, .deb
file yang digunakan oleh APT adalah distribusi dan versi khusus, yang menghasilkan pengalaman Linux default dalam hal integrasi tema.
Keamanan
Jepret mendukung validasi tanda tangan dan, mengingat sifatnya yang terbatas, dianggap sebagai solusi aman untuk penerapan aplikasi. Namun, karena penerbit menyediakan aplikasi secara langsung kepada pengguna, pengguna harus memercayai penerbit. Tidak ada tinjauan eksternal yang dilakukan.
Di sisi lain, setiap distribusi Linux meninjau deb yang disertakan dalam repositorinya. Jadi, APT pengguna dapat yakin bahwa aplikasi tersebut berasal dari sumber tepercaya. Ini tidak berlaku untuk repositori atau deb pihak ketiga yang tersedia di situs web penerbit.
Jepret Vs. APT:Mana yang Harus Dipilih?
Pilih Jepret jika:
- Anda tidak ingin paket yang tidak perlu diintegrasikan ke dalam sistem Anda. Dengan Snaps, paket tetap terkurung di
.snap
paket. - Anda ingin memastikan bahwa Anda memiliki versi aplikasi terbaru. Snap update secara otomatis dan terus menerus, tanpa fitur freeze untuk distribusi tertentu.
- Anda ingin mengisolasi aplikasi.
Pilih APT jika:
- Anda lebih suka aplikasi ditinjau berdasarkan distribusi yang Anda gunakan.
- Anda khawatir tentang menghemat ruang penyimpanan Anda. Aplikasi yang diinstal oleh APT berbagi dependensinya.
- Anda ingin aplikasi terintegrasi ke dalam lingkungan GUI dengan benar.