Pertanyaan Apa itu "AppImage"? Bagaimana cara menginstalnya?


Saya baru saja membaca Temui Etcher, Alat Penulis Gambar USB Sumber Terbuka. Ini berbicara tentang mengunduh AppImage.

Ya, Linux; paket-paket Linux didistribusikan sebagai .appimage untuk distribusi 32-bit dan 64-bit, dan harus dijalankan di semua distribusi Linux utama tanpa masalah. Tim saat ini tidak memiliki rencana untuk menyediakan installer .deb (atau .rpm) asli.

Apa itu AppImages? Bagaimana perbedaannya dengan bentak?


153
2018-05-19 04:11


asal


saya pikir appimage tag bisa menjadi berguna, jadi saya baru saja membuatnya. Dalam hal ini kita tidak perlu atau ingin menyimpannya, akan selalu ada pilihan untuk membakarnya lagi. - Byte Commander


Jawaban:


Informasi dasar

Mengenai instalasi

Saya mengutip halaman proyek appImage di sini:

AppImages dapat diunduh dan dijalankan tanpa instalasi atau kebutuhan   untuk hak root.

Sehingga bisa dieksekusi

Anda dapat membuat eksekusi appImage sebagai berikut:

chmod a+x exampleName.AppImage

Melaksanakannya

Anda dapat menjalankan appImage sebagai berikut:

./exampleName.AppImage

informasi tambahan

Tentang appImage

Anda dapat menemukan beberapa informasi umum tentang appImage sini.

Saya mengutip halaman proyek appImage di sini:

Ide kunci dari format AppImage adalah satu aplikasi = satu file. Setiap   AppImage berisi aplikasi dan semua file yang perlu dijalankan aplikasi. Di   kata lain, setiap AppImage tidak memiliki dependensi selain dari yang ada   termasuk dalam sistem operasi basis yang ditargetkan (s).

Wikipedia tambah

AppImage (dan pendahulunya klik dan portablelinuxapps) tidak   instal perangkat lunak dalam pengertian tradisional (yaitu, tidak menaruh file   seluruh tempat di sistem).

Ini menggunakan satu file per aplikasi.   Masing-masing mandiri: itu mencakup semua perpustakaan aplikasi   tergantung pada dan itu bukan bagian dari sistem dasar. Dalam kasus ini,   ini mirip dengan "virtualisasi aplikasi". Satu dapat menggunakan AppImage   file bahkan jika mereka bukan superuser, atau mereka menggunakan live CD.   File AppImage seringkali lebih sederhana daripada kompilasi dan menginstal   aplikasi, karena tidak ada instalasi yang benar-benar terjadi. File AppImage   adalah gambar terkompresi yang dipasang sementara untuk memungkinkan akses   program, tetapi tidak harus mengekstrak program atau memodifikasi   sistem dasar.

Itu README.md dari AppImageKit-proyek menawarkan banyak informasi tambahan seperti Gunakan kasus, ruang masalah dan tujuan.

Gunakan Kasus

  • Sebagai pengguna, saya ingin pergi ke halaman unduhan hulu, mengunduh aplikasi dari penulis asli, dan menjalankannya di sistem desktop Linux saya seperti yang saya lakukan dengan aplikasi Windows atau Mac.

  • Sebagai penguji, saya ingin bisa mendapatkan versi aplikasi terbaru dari server build yang berkelanjutan dan mengujinya di sistem saya, tanpa perlu mengkompilasi dan tanpa harus khawatir bahwa saya akan mengacaukan sistem saya.

  • Sebagai seorang penulis aplikasi atau ISV, saya ingin menyediakan paket untuk sistem desktop Linux seperti yang saya lakukan untuk Windows dan OS X, tanpa perlu membuatnya menjadi distribusi dan tanpa harus membangun untuk gazillions dari distribusi yang berbeda.

Tujuan

  1. Bersikaplah Sederhana.

    AppImage dimaksudkan untuk menjadi format yang sangat sederhana yang mudah   mengerti, buat, dan kelola.

  2. Mempertahankan kompatibilitas biner.

    AppImage adalah format untuk distribusi perangkat lunak biner. Perangkat lunak   dikemas sebagai AppImage dimaksudkan sebagai binary-compatible as   mungkin dengan sebanyak mungkin sistem. Kebutuhan untuk   (kembali) kompilasi perangkat lunak harus sangat dikurangi.

  3. Jadilah distribusi-agostik.

    Suatu AppImage harus berjalan pada semua sistem operasi dasar (distribusi)   bahwa itu dibuat untuk (dan versi yang lebih baru). Misalnya, Anda bisa   target Ubuntu 9.10, openSUSE 11.2, dan Fedora 13 (dan versi yang lebih baru)   pada saat yang sama, tanpa harus menciptakan dan mempertahankan terpisah   paket untuk setiap sistem target.

  4. Hapus kebutuhan untuk instalasi.

    AppImages berisi aplikasi dalam format yang memungkinkannya untuk dijalankan secara langsung   dari arsip, tanpa harus dipasang terlebih dahulu. Ini adalah   sebanding dengan Live CD. Sebelum Live CD, sistem operasi harus   dipasang terlebih dahulu sebelum bisa digunakan.

  5. Jaga agar aplikasi selalu dikompresi.

    Karena aplikasi tetap dikemas sepanjang waktu, tidak pernah   tidak terkompresi pada hard disk. Komputer membuka kompresi   aplikasi on-the-fly saat mengaksesnya. Sejak dekompresi adalah   lebih cepat daripada membaca dari hard disk pada kebanyakan sistem, ini memiliki kecepatan   keuntungan selain menghemat ruang. Juga, waktu yang dibutuhkan untuk   instalasi sepenuhnya dihapus.

  6. Izinkan untuk menempatkan aplikasi di mana saja.

    AppImages adalah "relocatable", sehingga memungkinkan pengguna untuk menyimpan dan   jalankan dari lokasi mana pun (termasuk CD-ROM, DVD, dapat dilepas   disk, stik USB).

  7. Buat aplikasi hanya-baca.

    Karena AppImages bersifat read-only oleh desain, pengguna dapat secara wajar   yakin bahwa aplikasi tidak mengubah dirinya sendiri selama operasi.

  8. Tidak perlu dikompilasi ulang.

    AppImages harus dimungkinkan untuk dibuat dari binari yang sudah ada,   tanpa perlu mengkompilasi ulang. Ini sangat mempercepat   Proses pembuatan AppImage, karena tidak ada compiler yang harus dilibatkan. Ini   juga memungkinkan pihak ketiga untuk mengemas aplikasi sumber tertutup sebagai   AppImages. (Namun demikian, itu bisa bermanfaat untuk hulu   pengembang aplikasi untuk membangun dari sumber khusus untuk   tujuan menghasilkan AppImage.)

  9. Jaga sistem operasi dasar tidak tersentuh.

    Karena AppImages dimaksudkan untuk berjalan di sistem biasa yang belum   khusus disiapkan oleh administrator, AppImages mungkin tidak memerlukan   persiapan yang tidak biasa dari sistem operasi dasar. Oleh karena itu, mereka   tidak dapat bergantung pada patch kernel khusus, modul kernel, atau apapun   aplikasi yang tidak datang dengan distribusi yang ditargetkan oleh   default.

  10. Tidak perlu root.

    Karena AppImages dimaksudkan untuk dijalankan oleh pengguna akhir, seharusnya tidak   Mempertahankan kembali akun administratif (root) untuk dipasang atau digunakan. Mereka   Namun, dapat dipasang oleh administrator (misalnya, dalam multi-pengguna   skenario) jika diinginkan.


204
2018-05-19 06:07



Mungkin sebenarnya dasar Q / A harus di atas penjelasannya? - UniversallyUniqueID
Bagaimana cara appimage mempertahankan pengaturan antara peluncuran? - Dan Dascalescu
Bisakah Anda menjelaskan sedikit tentang fitur "read-only"? Bisakah saya menyimpan perubahan di dalam AppImage? Atau kehilangan mereka di dekat seperti LiveCD? - vstepaniuk
@DanDascalescu: Pertanyaan Anda layak untuk diangkat ke pertanyaan lengkap di AskUbuntu, bukan hanya komentar. Apakah Anda akan menanyakannya? - Kurt Pfeifle
@KurtPfeifle: karena Anda tidak ingin langsung saja bertanya sendiri ... :) - Dan Dascalescu


Ide dasarnya mungkin terlihat serupa di antara kedua sistem, tetapi ada beberapa perbedaan desain antara snaps dan Appimages.

Beberapa yang "besar" yang muncul di benak saya adalah:

  1. Keamanan, dengan kondisi kurungan. Paket Snap dijalankan di kotak pasir dan mereka tidak diizinkan untuk melarikan diri darinya dan mencapai bagian lain dari sistem yang seharusnya tidak menyentuh. Ini adalah lapisan keamanan yang lebih kuat yang berjalan sejajar dengan sistem perizinan. Jelas itu sedikit frustasi ketika berurusan dengan itu di awal (dan juga nanti), tetapi jika Anda memikirkannya dalam hal administrasi sistem, ini adalah hal yang diinginkan administrator untuk pengguna mereka.

  2. Keamanan. Menginstal perangkat lunak yang diambil dari sekitar net, aman seperti berkeliling menjilati tiang di jalan-jalan. Terkadang tidak ada yang terjadi, terkadang Anda mengalami masalah kesehatan yang sangat besar. Paket Snap memiliki repositori yang tepat, yang dikontrol oleh Canonical, seperti repositori standar Ubuntu yang biasa. Anda dapat melanjutkan dan menginstal .deb file dari sekitar, tetapi itu akan menjadi pilihan Anda, dan bukan masalah desain.

  3. Instalasi. AppImages dimaksudkan untuk menjadi setara dengan "executable Windows portabel". Semua pustaka itu lengkap dan setiap pengguna hanya dapat mengunduh dan menjalankan salah satunya. Di samping itu, snap paket adalah paket yang tepat, dan mereka harus diinstal (as root, atau dengan sudo) melalui pengelola paket yang tepat (snap install tic-tac-toe melempar kesalahan: perlu sudo!)

  4. Pemindahan. Untuk menghapus paket snap, Anda perlu menggunakan manajer paket snap remove ... dengan izin yang tepat untuk melakukannya. Appimages, di sisi lain, mereka hanya "di sana". Jadi, setiap pengguna tidak menginginkan Appimage itu? Dia hanya menghapus file dan itu hilang.

Meskipun saya sangat menyarankan untuk berhati-hati saat menggunakan Appimages, saya pribadi menggunakan beberapa dari mereka sendiri.

Saya menemukan mereka sangat berguna pada sistem kerja saya, di mana saya tidak punya root akses (hanya admin yang memilikinya) tetapi saya memerlukan versi terbaru dari perangkat lunak tertentu yang, untungnya, pengembang telah disediakan dalam bentuk Appimage.

Saya agak takut bahwa beberapa kode memfitnah memang terkandung di dalamnya, jadi saya memeriksa sebanyak mungkin identitas penerbit. Saya tidak 100% yakin bahwa perangkat lunak ini jinak, tetapi saya telah melakukan semua yang saya bisa.


20
2018-05-19 07:59



Pada dasarnya, semua orang mencoba untuk mengimplementasikan kemasan aplikasi OSX di linux, tetapi tidak ada apa pun di sana. - OrangeDog
Saya tidak tahu bagaimana cara kerjanya :) Tentu saja snap dan Appimages tidak berfungsi dengan baik dengan perangkat lunak dengan banyak ketergantungan dibagi antara banyak perangkat lunak lainnya. Mereka baik-baik saja dengan perangkat lunak yang sudah mandiri atau dengan beberapa dependensi, tetapi risikonya adalah memiliki banyak salinan dari pustaka yang sama yang melakukan tugas yang sama, seperti di Windows. Ini harus dipecahkan dalam paket snap (perangkat lunak yang bergantung pada snap library menginstal pustaka itu dengan versi itu, maka perangkat lunak lain yang membutuhkan versi pustaka yang sama mungkin menggunakannya, seperti dengan sistem biasa). - dadexix86
Aplikasi OSX (dan iOS) berfungsi seperti AppImage (cukup unduh file tunggal dan jalankan) tetapi dengan keamanan snap yang terkotak-kotak. - OrangeDog
OSX sedang mencoba untuk menyingkirkan ini dan hanya mengizinkan pemasangan dari toko mereka. - LtWorf
AppImage memang harus mengandung opsi untuk Sand Boxing. Semoga kita akan melihat itu di masa depan. - Royi


Sementara snap fokus pada Ubuntu saja, AppImage adalah cross-distribution dan juga berjalan di Fedora, debian, openSUSE, CentOS, dll.

AppImage tidak memerlukan dukungan runtime atau infrastruktur dari distribusi Linux dan karenanya berjalan di mana-mana. Ini memungkinkan penulis aplikasi untuk mengirimkan perangkat lunak mereka langsung ke pengguna Linux seperti yang dilakukan untuk Windows dan OS X; tanpa Canonical atau siapa pun "di antara" penulis perangkat lunak dan pengguna akhir.

Jika aplikasi disediakan dalam format AppImage, maka pengguna dapat pergi ke situs web penulis asli untuk mengunduhnya, mis., MuseScore dari https://musescore.org/en/download. Buatlah AppImage dapat dijalankan (baik menggunakan manajer file Anda atau chmod a+x ./yourAppImage), maka Anda dapat menjalankan aplikasi hanya dengan mengklik dua kali.


15
2018-05-19 06:24



Jadi jika saya ingin menginstal Leafpad, apakah saya klik "Set me up"? Apa yang akan terjadi? Dan bagaimana saya bisa menghapus AppImage? Saya sedang melihat bintray.com/probono/AppImages tetapi tidak menemukan jawabannya. Jika Anda tidak keberatan, Anda dapat mengedit jawaban Anda untuk menyertakan informasi serta hal-hal lain yang menurut Anda mungkin ingin diketahui pengguna. - DK Bose
Tidak yakin apakah itu akan menjadi solusi bagi Anda juga - tetapi leafpad tersedia di 16.04 sumber di luar kotak (versi: 0.8.18.1). Versi leafpad yang ditawarkan oleh bintray adalah 'hanya' 0,8,17 - bahkan lebih tua. - dufte
Benar, tetapi untuk seseorang yang hanya ingin menguji air, itu, seperti yang dikatakan situs itu, jenis hal "Halo, Dunia". - DK Bose
Luar biasa. Setelah ini Anda dapat mengklik ganda. Itulah yang saya butuhkan! - Dawoodjee


Sebelum Anda dapat menjalankan AppImage, Anda harus membuatnya dapat dieksekusi. Ini adalah fitur keamanan Linux. Ada dua cara utama untuk membuat eksekusi AppImage:

1. Menggunakan GUI

How to make an AppImage executable

atau

2. Pada baris perintah

chmod a+x Some.Appimage

Sekarang klik dua kali file Anda untuk menjalankannya ATAU Klik kanan> Jalankan


11
2017-10-10 02:01





AppImages membutuhkan FUSE untuk dijalankan. Filesystem in Userspace (FUSE) adalah sistem yang memungkinkan pengguna non-root me-mount filesystem.

Instal FUSE

Banyak distribusi memiliki pengaturan FUSE yang berfungsi di luar kotak. Namun jika tidak berfungsi untuk Anda, Anda mungkin perlu menginstal dan mengkonfigurasi FUSE secara manual.

Misalnya, di Ubuntu:

sudo apt-get install fuse
sudo modprobe fuse
sudo usermod -a -G fuse $USER

Misalnya, pada openSUSE:

sudo zypper install fuse

Fallback

Jika Anda tidak ingin menginstal FUSE, Anda dapat memasang atau mengekstrak AppImage.

Untuk memasang AppImage dan menjalankan aplikasi, jalankan

sudo mount -o loop Some.AppImage /mnt
/mnt/AppRun

Jika itu tidak berhasil, Anda mungkin memiliki eksperimen tipe 2 AppImage. Ini mengharuskan Anda untuk lulus -o offset=... ke mount perintah. Jalankan AppImage dengan --appimage-offset untuk mengetahui nomor yang benar untuk offset.


3
2017-10-13 15:06