İçeriğe atla

AppImage

 

AppImage
Geliştirici(ler)Simon Peter
İlk yayınlanma2004 (20 yıl önce) (2004)
Güncel sürüm13 / 31 Aralık 2020 (3 yıl önce) (2020-12-31)
Programlama diliC
İşletim sistemiLinux
TürYazılım indirme sistemi, paket biçimi
LisansMIT License
Resmî sitesiappimage.org
Kod deposu Bunu Vikiveri'de düzenleyin

AppImage, uygulamayı yüklemek için superuser izinlerine ihtiyaç duymadan taşınabilir yazılımı Linux üzerinde dağıtmak için kullanılan bir biçimdir.[1] Ayrıca "upstream paketleme" olarak da bilinen, uygulama geliştiricileri için Linux dağıtımından bağımsız ikili yazılım dağıtımına izin vermeye çalışır.[2] İlk olarak 2004'te klik adı altında piyasaya sürüldü, sürekli geliştirildi, ardından 2011'de PortableLinuxApps ve daha sonra 2013'te AppImage olarak yeniden adlandırıldı.

Tanım

Hedef

AppImage, Linux için şu hedeflere sahip bir uygulama dağıtım sistemi olmayı amaçlamaktadır: basitlik, ikili uyumluluk, dağıtımdan bağımsız, kurulumsuz, kök izni istememe, taşınabilir olma ve temel işletim sistemine dokunulmama.[3]

Özellikler

AppImage, uygulamayı geleneksel Linux mantığı ile yüklemez. Uygulamanın çeşitli dosyalarını dosya sistemindeki dağıtımın uygun yerlerine koymaz. Bunun yerine AppImage dosyası yalnızca uygulamanın sıkıştırılmış görüntüsüdür. Çalıştığında, dosya FUSE ile bağlanır. Bu davranış, AppImage'ın öncülleri olan klik ve PortableLinuxApps ile uyumludur.

Uygulama başına bir dosya kullanır. Her dosya bağımsızdır: uygulamanın bağlı olduğu ve hedeflenen temel sistemin parçası olmayan tüm kütüphaneleri içerir. 1.0 sürümünün bir AppImage'ı, minimum bir AppDir ve küçük bir çalışma zamanı içeren bir ISO 9660 Rock Ridge dosyasıdır (isteğe bağlı olarak zisofs sıkıştırılabilir).[4] (Sürüm 2, SquashFS [5][6] gibi diğer dosya sistemi görüntü formatlarını kullanabilir). Canlı CD'ye yalnızca bir dosya eklenerek canlı CD'ye bir AppImage uygulaması eklenebilir.

AppImage dosyaları bir uygulama yüklemekten daha basittir. Çıkarma araçlarına veya işletim sistemini veya kullanıcı ortamını değiştirmeye gerek yoktur. Ortak Linux dağıtımlarındaki normal kullanıcılar indirebilir, çalıştırılabilir hale getirebilir ve çalıştırabilir.

AppImage, harici bir yardımcı programla doğrulanması gereken gömülü dijital imza oluşturulmasına izin verir. Biçim, paket orijinalliği doğrulaması veya korumalı alan yoluyla çalışma zamanı sınırlaması ile kendi kendine kontrol biçimi sunmaz.[7]

Geçmiş

klik

klik uygulama yükleme ekranı

AppImage'ın öncülü klik, 2004 yılında Simon Peter tarafından tasarlandı.[8] İstemci tarafı yazılımı GPL lisanslıdır. klik, kullanıcının bilgisayarındaki web tarayıcıları ile entegredir. Kullanıcılar, klik:// ile başlayan bir URL yazarak yazılımı indirip yükleyebilir. Bu, bir .cmg dosyası oluşturmak için kullanılan bir klik "recipe" dosyası indirdi. Ana bileşenler için, genellikle Debian Stable depolarından önceden oluşturulmuş .deb paketleri, recipe'nin .cmg oluşturma sürecine beslenir. Bu şekilde, çok çeşitli platformlara paket tedarik etmek için tek bir tarif kullanılabilir. klik ile, FUSE kullanılmadığı sürece, sıkıştırılmış görüntülerin Linux çekirdeği ile monte edilmesinin sınırlaması nedeniyle aynı anda yalnızca sekiz program çalıştırılabilir. Dosya, program her çalıştırıldığında yeniden bağlanır; bu, kullanıcının .cmg dosyasını silerek programı kaldırabileceği anlamına gelir. Bir sonraki sürüm olan klik2 geliştirilmekteydi; ve FUSE çekirdek modülünü doğal olarak dahil edecekti, ancak hiçbir zaman beta aşamasını geçmedi.[9] 2011 civarında, klik projesinin faaliyeti durdu ve ana sayfa bir süre çevrimdışı kaldı.[10]

PortableLinuxApps

Simon Peter, o sıralarda benzer hedeflere sahip PortableLinuxApps adlı bir ardıl projeye başladı.[2] Teknoloji, örneğin, çoğunlukla açık kaynaklı yüzlerce video oyunu sağlayan "portablelinuxgames.org" deposu tarafından uyarlandı.[11]

AppImage

2013 civarında, yazılım yeniden taşınabilirLinuxApps'ten AppImage olarak yeniden adlandırıldı; lisansı MIT lisansı oldu. AppImage biçimidir ve AppImageKit somut bir açık kaynak uygulamasıdır. Geliştirme bir GitHub deposunda gerçekleşir.[12]

Tepkiler ve kullanım

Klik, 2016 yılında piyasaya sürülen Flatpak'ın öncüsü olan Alexander Larsson'ın glick projesine 2007 yılında ilham kaynağı olmuştur.[13]

Linus Torvalds'ın dive log uygulaması Subsurface, AppImage'ı 2015 yılı civarında kullanmaya başladı. Subsurface'in geleneksel ambalajı, çeşitli Linux dağıtımlarının Linux kullanıcıları için ikili yazılım dağıtımının sorunlu olduğu ortaya çıktığından, taşınabilir, dağıtımdan bağımsız bir AppImage olarak değiştirildi.[14][15][16]

MuseScore, tüm Linux çeşitleri için yazılım dağıtımı için AppImage yapılarını kullanmaya Nisan 2016'da başladı.[17]

Ücretsiz ve açık kaynaklı bir yazılım uygulaması olan Krita, Mayıs 2016'da AppImage kullanılarak 3.0 sürümünden itibaren dağıtılmaktadır.[18][19]

Açık kaynaklı bir fotoğraf yönetimi uygulaması olan digiKam, ayrıca Kasım 2016'da yayınlanan 5.3.0 sürümünden bir AppImage paketi içermektedir.[20]

Network World'den Bryan Lunduke, 31 Mart 2017'de OpenShot'ın AppImage ile Linux dağıtımından bağımsız paketlenmesine olumlu bir şekilde dikkat çekti.[21]

Açık kaynaklı bir dijital ses işleme istasyonu olan LMMS, 1.2.0-RC5 sürümünden bu yana Linux için bir AppImage olarak dağıtmaya başladı.[22]

KeePassXC ayrıca Linux dağıtımları için AppImage kullanmaktadır.[23]

Neo4j, "Neo4j Desktop" programının Linux sürümü için AppImage'ı kullanır.[24]

Linux için en çok kullanılan PS3 emülatörü olan RPCS3, AppImage aracılığıyla dağıtılmaktadır.

Topluluk tarafından sağlanan GitHub masaüstü istemci uygulaması Linux sürümü, bir AppImage seçeneğiyle dağıtılır.[25]

Bilgisayar monitörü göz yorgunluğunu azaltma ve yönetim yazılımı olan Iris, ücretli bir AppImage seçeneği sunar.[26]

Açık kaynaklı bir parametrik 3D modelleyici olan FreeCAD, birincil Linux ikili indirmesi olarak AppImage'ı kullanır.[27]

Başka bir açık kaynaklı parametrik 3D modelleyici olan OpenSCAD, Linux ikili indirme seçeneği olarak AppImage'ı da kullanır.[28]

Bir x86 retro PC emülatörü olan 86Box, Linux dağıtımı için AppImage kullanır.[29]

Ayrıca bakınız

Kaynakça

  1. ^ "Free Software Magazine interview with Simon Peter". Free Software Magazine. 7 Nisan 2006. 30 Mart 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 5 Mayıs 2007.  Yazar |ad1= eksik |soyadı1= (yardım)
  2. ^ a b "AppImageKit Documentation 1.0" (PDF). PortableLinuxApps.org. 2010. ss. 2-3. 29 Kasım 2010 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 29 Temmuz 2011. The AppImage format has been created with specific objectives in mind: Be Simple [...], Maintain binary compatibility [...], Be distribution-agnostic [...], Remove the need for installation [...], Allow to put apps anywhere [...], Do not require recompilation [...], Keep base operating system untouched [...], Do not require root [...]  Yazar |ad1= eksik |soyadı1= (yardım)
  3. ^ AppImage: Linux apps that run anywhere 13 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. on youtube.com by Simon Peter (June 2016)
  4. ^ "Archived copy" (PDF). 29 Kasım 2010 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 3 Ağustos 2011. 
  5. ^ "AppImage/AppImageSpec". GitHub. 18 Kasım 2021. 10 Aralık 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  6. ^ "The future of AppImage: Type 2 and new tools". AppImage. 15 Eylül 2016. 17 Eylül 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  7. ^ "Signing AppImages — AppImage documentation". docs.appimage.org. 29 Ekim 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 29 Ekim 2019. 
  8. ^ "Slashdot - Point-and-klik Linux Software Installation?". slashdot.com. 19 Eylül 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  9. ^ Screen capture video of Klik2 on video.google.com (archived)
  10. ^ "klik - Linux Software Download". 26 Haziran 2007 tarihinde kaynağından arşivlendi. 
  11. ^ "Portable Games for Linux". 4 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  12. ^ "AppImageKit". github.com. 19 Kasım 2021. 25 Ocak 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  13. ^ Experiments with run-timeless app bundles 22 Haziran 2018 tarihinde Wayback Machine sitesinde arşivlendi. by Alex Larsson (2007)
  14. ^ Linus Torvalds (29 Ağustos 2014). "Q&A with Linus Torvalds" (video). DebConf 2014 Portland. debian.net. 18 Mart 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mayıs 2016. I have seen this first hand with the other project I'm involved with, which is my dive log app. We make binaries for Windows and OSX, we basically don't make binaries for Linux. Why? Because making binaries for Linux desktop applications is a major fucking pain in the ass. 
  15. ^ "This is just very cool". Google+. 14 Eylül 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. I finally got around to play with the "AppImage" version of +Subsurface, and it really does seem to "just work".  Yazar |ad1= eksik |soyadı1= (yardım)
  16. ^ "This is just very cool". Google+. 25 Kasım 2015. 14 Eylül 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. I, as the app maintainer, don't want my app bundled in a distribution anymore. Way to much pain for absolutely zero gain. Whenever I get a bug report my first question is "oh, which version of which distribution? which version of which library? What set of insane patches were applied to those libraries?". No, Windows and Mac get this right. I control the libraries my app runs against. [...] With an AppImage I can give them just that. Something that runs on their computer.  Yazar |ad1= eksik |soyadı1= (yardım)
  17. ^ "MuseScore 2.0.3 is released". MuseScore.org. MuseScore. 23 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 5 Nisan 2016. 
  18. ^ "Krita 3.0 Released". Krita.org. Krita. 31 Mayıs 2016. 1 Haziran 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  19. ^ "Krita Appimage for cats". David Revoy. 27 Kasım 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022.  Yazar |ad1= eksik |soyadı1= (yardım)
  20. ^ "digiKam 5.3.0 is published". www.digikam.org. 7 Kasım 2016. 31 Aralık 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 30 Aralık 2016. 
  21. ^ Bryan Lunduke (31 Mart 2017). "Linux video editor OpenShot 2.3 impresses: New tools, fast performance". Network World. 3 Nisan 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2017. Interestingly, OpenShot is distributed via appimage. That means they provide a single binary that can be run on just about any modern Linux distribution. I personally tested this out on openSUSE Tumbleweed with great success—but it should run just as easily on Debian, Fedora or others. I love this approach to distributing software directly from the developers. 
  22. ^ "Add AppImage support to Linux builds". GitHub. 25 Şubat 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Nisan 2018. 
  23. ^ "Download", keepassxc.org, 12 Mart 2021 tarihinde kaynağından arşivlendi, erişim tarihi: 24 Eylül 2020 
  24. ^ "Neo4j Download Center". 26 Şubat 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022.  Yazar |ad1= eksik |soyadı1= (yardım)
  25. ^ "Releases · shiftkey/desktop". GitHub. 22 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  26. ^ "Protect your Eyes. Be Healthy. Achieve more | Iris". 24 Kasım 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022 – iristech.co vasıtasıyla.  Yazar |ad1= eksik |soyadı1= (yardım)
  27. ^ "FreeCAD: Select your platform". www.freecadweb.org. 23 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  28. ^ "OpenSCAD - Downloads". www.openscad.org. 31 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 
  29. ^ "86Box on AppImage". www.appimagehub.com. 7 Ekim 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ekim 2022. 

Harici bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Linux-libre</span>

Linux-libre, Linux çekirdeğinin değiştirilmiş sürümlerinden sağlanan bir GNU paketi ve işletim sistemi çekirdeğidir. Bu tasarının hedefi kaynak kodu olmayan, kod şaşırtması bulunan ve özgür olmayan her yazılımın Linux çekirdeğinden çıkarılmasıdır.

<span class="mw-page-title-main">CBL-Mariner</span>

CBL-Mariner, Microsoft'un geliştirdiği ücretsiz ve açık kaynaklı bir Linux dağıtımıdır. Microsoft Azure hizmetleri için temel konteyner işletim sistemi ve WSL 2'nin grafik bileşenidir.

SONiC, Microsoft ve Open Compute Project tarafından geliştirilen, Linux tabanlı ücretsiz ve açık kaynaklı bir ağ işletim sistemidir. SONiC, tamamen işlevsel bir L3 cihazı için gerekli ağ yazılımı bileşenlerini içerir ve bir bulut veri merkezinin gereksinimlerini karşılamak üzere tasarlanmıştır. Bulut operatörlerinin aynı yazılım yığınını farklı anahtar satıcılarından gelen donanımlar arasında paylaşmasına olanak tanır.

<span class="mw-page-title-main">Snap (yazılım)</span>

Snap, Linux çekirdeğini ve systemd init sistemini kullanan işletim sistemleri için Canonical tarafından geliştirilmiş bir yazılım paketleme ve dağıtım sistemidir. Snaps adı verilen paketler ve bunları kullanma aracı snapd , bir dizi Linux dağıtımında çalışır ve yukarı akış yazılım geliştiricilerinin uygulamalarını doğrudan kullanıcılara dağıtmasına olanak tanır. Snap'ler, ana bilgisayar sistemine aracılı erişime sahip bir sanal alanda çalışan bağımsız uygulamalardır. Snap ilk olarak bulut uygulamaları için piyasaya sürüldü, ancak daha sonra Nesnelerin İnterneti cihazları ve masaüstü uygulamaları için de çalışacak şekilde taşındı.

<span class="mw-page-title-main">Calamares (yazılım)</span>

Calamares, Linux dağıtımları için ücretsiz ve açık kaynaklı bağımsız ve dağıtımdan bağımsız bir sistem yükleyicisidir.

<span class="mw-page-title-main">Ultimate++</span>

Ultimate++ -aynı zamanda Ultimatepp, U++ veya Upp olarak da bilinir - C++ özelliklerinden kapsamlı bir şekilde yararlanarak tipik masaüstü uygulamalarının kod karmaşıklığını azaltmayı amaçlayan bir C++ hızlı uygulama geliştirme programıdır. Bu yazılım ile oluşturulan programlar, platforma özel kod yazmaya gerek kalmadan birden fazla işletim sistemi ve donanım mimarisi üzerinde çalışabilir.

<span class="mw-page-title-main">Android Debug Bridge</span>

Android Debug Bridge, Android tabanlı cihazlarda hata ayıklamak için kullanılan bir programlama aracıdır. Android cihazındaki arka plan programı, ana bilgisayardaki sunucuya USB veya TCP üzerinden son kullanıcı tarafından kullanılan istemciye bağlanan TCP üzerinden bağlanır. 2007'den beri Google tarafından Apache Lisansı altında açık kaynaklı yazılım olarak sunulan özellikler arasında bir kabuk ve yedekleme yapma imkanı bulunmaktadır. adb yazılımı; Windows, Linux ve macOS ile uyumludur. Botnet'ler ve RSA kimlik doğrulaması ve cihaz beyaz listeye alma gibi azaltıcı etkenlerin geliştirildiği diğer kötü amaçlı yazılımlar tarafından kötüye kullanılmıştır.

<span class="mw-page-title-main">Hafif Linux dağıtımı</span>

Hafif bir Linux dağıtımı, "özellik açısından zengin" bir Linux dağıtımına göre daha düşük bellek kullanan ve/veya daha az işlemci hızına ihtiyaç duyan bir dağıtımdır. Donanıma yönelik daha düşük talepler, ideal olarak daha duyarlı bir makine ile sonuçlanır ve/veya daha az sistem kaynağına sahip cihazların verimli bir şekilde kullanılmasına imkan sağlar. Daha düşük bellek ve/veya işlemci hızı gereksinimleri, yazılım şişkinliğinden kaçınarak, yani pratik kullanımı veya avantajı çok az olduğu veya hiç olmadığı veya talebin olmadığı veya düşük olduğu algılanan özellikleri dışarıda bırakarak elde edilir.

<span class="mw-page-title-main">LXLE Linux</span>

LXLE, LXDE masaüstü ortamını kullanan ve en son Ubuntu/Lubuntu LTS sürümünü temel alan bir Linux dağıtımıdır. LXLE, hem eski hem de yeni donanımda iyi çalışan, görsel estetiğe odaklanan hafif bir dağıtımdır.

AV1 Image File Format (AVIF), görüntüleri veya AV1 ile sıkıştırılmış görüntü dizilerini HEIF kapsayıcı biçiminde depolamak için bir görüntü dosyası biçimi belirtimidir. ISOBMFF üzerine kurulu aynı kap biçimini kullanan HEIC ile rekabet eder, ancak sıkıştırma için HEVC ile rekabet eder. AVIF spesifikasyonunun 1.0.0 sürümü Şubat 2019'da tamamlandı.

<span class="mw-page-title-main">Windows Package Manager</span>

Windows Package Manager, Microsoft tarafından Windows 10 ve Windows 11 için tasarlanmış ücretsiz ve açık kaynaklı bir paket yöneticisidir. Bir komut satırı yardımcı programı ve uygulamaları yüklemek için bir dizi hizmetten oluşur. Bağımsız yazılım satıcıları bunu yazılım paketleri için bir dağıtım kanalı olarak kullanabilirler.

<span class="mw-page-title-main">Açık kaynak video oyunu</span>

Açık kaynaklı bir video oyunu veya basitçe açık kaynak bir oyun, kaynak kodu açık olan bir video oyunudur. Genellikle kaynak kodu serbestçe dağıtılabilir ve bazen platformlar arası uyumludur.

<span class="mw-page-title-main">Foliate (yazılım)</span>

Foliate, masaüstü Linux sistemleri için hazırlanmış ücretsiz bir e-kitap okuma uygulamasıdır.

<span class="mw-page-title-main">Void Linux</span>

Void Linux, sıfırdan tasarlanan ve uygulanan X Binary Package System (XBPS) paket yöneticisini ve "runit init" sistemini kullanan bağımsız bir Linux dağıtımıdır. İkili çekirdek blobları hariç, temel kurulum tamamen özgür yazılımdan oluşur ancak kullanıcılar özel yazılım yüklemek için özgür olmayan resmi bir depoya erişebilir.

Alpine Linux, küçük, basit ve güvenli olacak şekilde tasarlanmış bir Linux dağıtımıdır. Diğer Linux dağıtımlarının çoğundan farklı olarak, Alpine daha yaygın olarak kullanılan glibc, GNU Core Utilities ve systemd yerine musl, BusyBox ve OpenRC kullanır.

<span class="mw-page-title-main">Redox (işletim sistemi)</span>

Redox, güvenlik, kararlılık ve performansa odaklanan Rust programlama dilinde yazılmış Unix benzeri bir mikro çekirdek işletim sistemidir. Redox güvenli, kullanılabilir ve özgür olmayı amaçlar. Redox, SeL4, MINIX, Plan 9 ve BSD gibi önceki çekirdeklerden ve işletim sistemlerinden esinlenmiştir. GNU ve BSD'ye benzer, ancak bellek açısından güvenli bir dilde yazılmıştır. MIT Lisansı altında dağıtılan ücretsiz ve açık kaynaklı bir yazılımdır.

scrcpy

scrcpy, bir Android cihazın bir Windows, MacOS veya Linux masaüstü bilgisayardan kontrol edilmesini sağlayan özgür ve açık kaynaklı bir ekran yansıtma uygulamasıdır. Yazılım şu anda bir Android öykünücüsü olan Genymotion'u geliştiren Genymobile tarafından geliştirilmektedir.

<span class="mw-page-title-main">Windows Subsystem for Linux</span> Linux için Windows Alt Sistemi

Windows Subsystem for Linux (WSL), Windows 10, Windows 11, Windows Server 2019 ve Windows Server 2022 üzerinde yerel olarak Linux ikili yürütülebilir dosyalarını çalıştırmak için kullanılan uyumluluk katmanıdır.

<span class="mw-page-title-main">AutoKey</span>

AutoKey, Linux için ücretsiz, açık kaynaklı bir komut dosyası oluşturma uygulamasıdır.

<span class="mw-page-title-main">Steam Link</span>

Steam Link, kişisel bir bilgisayardan veya Steam Machine'den kablosuz olarak bir mobil cihaza veya başka bir monitöre Steam içeriği akışı sağlamak için Valve Corporation tarafından yapılmış bir donanım ve yazılım çözümüdür. Steam Link, ilk olarak Kasım 2015'te Steam Makinelerinin çıkışıyla birlikte bir donanım aygıtı olarak piyasaya sürüldü. Valve, mobil cihazlar ve akıllı televizyonlar için yazılım tabanlı Steam Link uygulamasını desteklemek ve Raspberry Pi mikro bilgisayarı için bir yazılım paketi olarak Steam Link sağlamak adına Kasım 2018'de Steam Link donanım cihazını durdurdu.