2023'te Linux için En İyi 3 Evrensel Paket Yöneticisi


Farklı Linux dağıtımları farklı geleneksel paket yönetim sistemleri kullandığından, Linux sistemlerinde paket yönetimi veya yazılım kurulumu özellikle yeni başlayanlar (yeni Linux kullanıcıları) için çok kafa karıştırıcı olabilir. Çoğu durumda işin en kafa karıştırıcı kısmı paket bağımlılığı çözümü/yönetimidir.

Örneğin, Ubuntu ve Linux Mint gibi Debian tabanlı dağıtımlar, dpkg paket yönetim sistemi aracılığıyla yönetilen .deb paketlerini kullanır.

Öte yandan, CentOS Stream, Rocky Linux ve AlmaLinux gibi RHEL tabanlı dağıtımlar .rpm kullanır. rpm paket yönetim sistemi kullanılarak yönetilen paketler.

Son birkaç yılda, Linux ekosistemindeki paket yönetimi ve dağıtımı, evrensel veya çapraz dağıtım paket yönetimi araçlarının yükselişinden sonra hiçbir zaman aynı olmadı.

Bu araçlar, geliştiricilerin birden çok Linux dağıtımına yönelik yazılımlarını veya uygulamalarını tek bir yapıdan paketlemelerine olanak tanıyarak kullanıcıların aynı paketi desteklenen birden çok dağıtıma kurmasını kolaylaştırır.

Bu makalede Linux için en iyi 3 açık kaynaklı evrensel veya çapraz dağıtım paket yönetim sistemini inceleyeceğiz.

1. Snap – Evrensel Paket Formatı

Snap, Ubuntu Linux'un yapımcısı Canonical tarafından geliştirilen popüler bir açık kaynaklı uygulama/paket formatı ve paket yönetim sistemidir. Ubuntu, Debian, Fedora, Arch Linux, Manjaro dahil olmak üzere birçok Linux dağıtımı artık anlık görüntüleri destekliyor Strong> ve CentOS/RHEL.

Kolay Kurulum ve Güncellemeler

Snap uygulaması, snaps'i destekleyen herhangi bir Linux dağıtımında otomatik güncellemelerle (uygulamalar her zaman günceldir) kolay kurulum için tüm bağımlılıklarıyla (bağımlılık içermeyen) birlikte gelen bir çapraz dağıtım uygulamasıdır. Bir snap masaüstünde, sunucuda, bulutta veya IoT'de (Nesnelerin İnterneti) çalıştırılabilir.

Bir uygulama oluşturmak veya tutturmak için, bir çerçeve olan Snapcraft'ı ve yakalamalar oluşturmaya yönelik güçlü bir komut satırı aracını kullanırsınız. Linux'ta snaps yüklemek ve kullanmak için, Linux sistemlerinin .snap dosyalarıyla çalışmasını sağlayan bir arka plan hizmeti olan snapd'yi (veya snappy arka plan programını) yüklemeniz gerekir. Snap'lerin gerçek kurulumu, snap komut satırı aracı kullanılarak yapılır.

Güvenlik ve İzolasyon

Sınırlama altında çalıştıkları için (farklı ve yapılandırılabilir sınırlama seviyeleri), anlık görüntüler varsayılan olarak güvenlidir. Daha da önemlisi, kendi sınırlaması dışındaki bir sistem kaynağına erişmesi gereken bir snap, snap'in gereksinimlerine göre snap'i oluşturan kişi tarafından dikkatle seçilen bir "arayüz" kullanır. Bu, temel işletim sisteminin kararlılığından ve esnekliğinden ödün vermeden uygulamaları çalıştırmanıza olanak tanır.

Ek olarak, snap paketi yönetim sistemi, hangi snap sürümünün yüklendiğini ve güncellemeler için izlendiğini belirlemek için kanallar (izler, risk seviyeleri ve dallardan oluşur ve bunlara bölünmüştür) adı verilen bir kavram kullanır. Snaps ayrıca manuel olarak yönetebileceğiniz bir işlem olan otomatik güncellemeyi de yapar.

Bir snap bulmak ve yüklemek için onu snap mağazasında (geliştiricilerin snaplerini paylaşabilecekleri bir yer) arayın veya kılavuzlarımızı kullanarak snap hakkında daha fazla bilgi edinin:

2. Flatpak – Çapraz Dağıtım Uyumluluğu

Flatpak, masaüstü uygulamalarını Linux dağıtımlarına dağıtmak için iyi bilinen bir açık kaynaklı çerçevedir. Bağımsız bir topluluk tarafından geliştirilen Flatpak, tek bir uygulama derlemesinin neredeyse tüm Linux dağıtımlarına kurulmasına ve çalıştırılmasına olanak tanır.

Fedora, Ubuntu, RHEL, CentOS, OpenSUSE dahil olmak üzere toplam 25 dağıtımı destekler. Strong> ve Arch Linux'ta çalışır ve ayrıca Raspberry Pi'de de çalışır.

Flatpak'ın çalışma zamanları, bir uygulamanın kullanabileceği ortak kitaplık platformları sağlar. Ancak bağımlılıklar üzerinde tam kontrole sahip olmanızı da son derece kolaylaştırır; kitaplıklarınızı uygulamanızın bir parçası olarak paketleyebilirsiniz.

Flatpak, kullanımı kolay derleme araçlarıyla birlikte gelir ve geliştiricilerin uygulamalarını oluşturup test etmeleri için tutarlı bir ortam (cihazlar arasında aynı ve kullanıcıların halihazırda sahip olduklarına benzer) sunar.

Gelişmiş Güvenlik için Korumalı Alan Oluşturma

Flatpak, her uygulamayı kendi sanal alanına yerleştirerek işleri güvenli hale getirir, bu şekilde uygulamalar ana sistemle veya diğer uygulamalarla karışmaz. Emin olmadığınız kaynaklardan gelen uygulamalarla uğraşırken son derece kullanışlıdır.

Kullanıcı ve Geliştirici Dostu

Flatpak'in yararlı bir yönü, aynı flatpak'ın aynı dağıtımın farklı sürümlerinde (hangi geliştiricilerin henüz yayınlanmamış sürümleri dahil) çalıştırılabileceği ileri uyumluluktur. Ayrıca Linux dağıtımlarının yeni sürümleriyle uyumlu olmaya çabalıyor ve devam ediyor.

Bir geliştiriciyseniz, uygulamaları tüm dağıtımlara dağıtmak için merkezi bir hizmet olan Flathub aracılığıyla uygulamanızı Linux kullanıcılarının kullanımına sunabilirsiniz.

3. AppImage: Taşınabilir Alternatif

AppImage ayrıca geliştiricilerin tüm büyük Linux masaüstü dağıtımlarında çalışan bir uygulamayı bir kez paketlemesine olanak tanıyan açık kaynaklı bir paket formatıdır. Önceki paket formatlarından farklı olarak AppImage'da paket yüklemeye gerek yoktur. Kullanmayı düşündüğünüz uygulamayı indirin, yürütülebilir hale getirin ve çalıştırın; bu kadar basit. Çoğu 32 bit ve 64 bit Linux masaüstünü destekler.

Kurulum Gerekmez

AppImage ile hiçbir şey yüklemenize gerek yoktur. Bu paketleri bir USB sürücüsüne yerleştirebilir, paylaşabilir ve sisteminizi değiştirmeden uygulamaları çalıştırabilirsiniz. Bu, taşınabilir Linux ve canlı sistemler için mükemmeldir.

Geniş Uyumluluk

AppImage birçok avantajla birlikte gelir. Geliştiriciler için, kullanıcıların çalıştırdığı Linux dağıtımı ve sürümü ne olursa olsun, mümkün olduğu kadar çok kullanıcıya ulaşmalarını sağlar. Her AppImage tüm bağımlılıklarıyla birlikte paketlendiğinden (bir uygulama=bir dosya) kullanıcıların uygulama bağımlılıkları konusunda endişelenmelerine gerek yoktur. AppImage ile uygulamaların yeni sürümlerini denemek de kolaydır.

Çok sayıda masaüstü sistemi destekleyen ve normalde kullanıcıların sistemleri bozabilecek uygulamaları yüklemesini engelleyen sistem yöneticilerinin artık endişelenmesine gerek yok. AppImage ile kullanıcıların uygulamaları çalıştırmak için yüklemeleri gerekmediği için sistem bozulmadan kalır.

Üçlünün Karşılaştırılması: Snap, Flatpak ve AppImage

İşte üç evrensel paket yöneticisinin karşılaştırması:

Feature Snap Flatpak AppImage
Package format Self-contained, compressed file Self-contained, compressed file Single executable file
Sandboxing Yes (by default) No (by default) No
Automatic updates Yes Optional No
Installation Requires snapd daemon Requires Flatpak runtime Does not require installation
Root privileges Requires root privileges to install Does not require root privileges to install Does not require root privileges to run

Hangi Paket Yöneticisini Seçmeliyim?

Otomatik güncellemelere sahip, güvenli ve kullanımı kolay bir paket yöneticisi arıyorsanız Snap iyi bir seçimdir. Her türlü uygulamayı paketlemek için kullanılabilecek daha esnek bir paket yöneticisi arıyorsanız Flatpak iyi bir seçimdir. Kurulum veya kök ayrıcalıkları gerektirmeyen bir paket yöneticisi arıyorsanız AppImage iyi bir seçimdir.

Ayrıca üç paket yöneticisinin de hala geliştirilme aşamasında olduğunu, dolayısıyla bazı hatalar veya eksik özellikler olabileceğini unutmamak gerekir. Ancak bunların hepsi aktif olarak korunmakta ve düzenli olarak güncellenmektedir.

Çözüm

Evrensel veya çapraz dağıtım paket formatları, Linux ekosisteminde yazılım oluşturmaya ve dağıtmaya yönelik yeni nesil teknolojilerdir. Ancak geleneksel paket yönetim sistemleri hâlâ geçerliliğini koruyor.

Düşüncen ne? Yorum kısmı aracılığıyla bizimle paylaşın.