Snap, Flatpak và Appimage. Các định dạng gói chung cho Linux

Các định dạng chương trình

Có một trò đùa cũ trong thế giới công nghệ rằng bất cứ lúc nào ai đó cố gắng tạo ra một định dạng tập hợp những gì tốt nhất của tất cả những người khác để tránh phân tán, điều duy nhất họ làm là thêm một định dạng mới vào danh sách. Một số trong số đó là ở đó với những nỗ lực tạo ra một định dạng gói có thể chạy trên tất cả các bản phân phối Linux mà không cần sửa đổi. Cho đến nay thế kỷ này chúng ta đã được ba tuổi.

Snap, Flatpak và Appimage. Sự khác biệt với các định dạng truyền thống

Sự khác biệt chính giữa các định dạng gói gốc và các định dạng gói độc lập là các định dạng trước đây chia sẻ sự phụ thuộc với các chương trình khác được cài đặt trên hệ điều hành. Nói cách khác, nếu chương trình Y cần phụ thuộc 1 và phụ thuộc đó đã được cài đặt bởi chương trình X cũng cần nó, thì phụ thuộc đó sẽ không được cài đặt lại.

Các chương trình được đóng gói theo các định dạng riêng biệt bao gồm tất cả các phần phụ thuộc mà chúng cần để hoạt động. Nói cách khác, phụ thuộc 1 sẽ được cài đặt mỗi khi một chương trình cần nó được cài đặt.

Sự khác biệt thứ hai là các định dạng gói truyền thống phải được xây dựng với các thông số kỹ thuật của từng bản phân phối.. Đó là lý do tại sao mặc dù Ubuntu là một bản phân phối bắt nguồn từ Debian, nhưng sự khác biệt đủ quan trọng để các kho lưu trữ của bản đầu tiên không thể được sử dụng trong bản thứ hai.

Sự khác biệt thứ ba là bất kỳ sửa đổi nào đối với sự phụ thuộc vào các gói truyền thống có thể ảnh hưởng đến hoạt động của tất cả các gói khác cần nó. Mặt khác, các sửa đổi đối với một chương trình ở định dạng độc lập sẽ không ảnh hưởng đến phần còn lại của hệ thống.

Tùy thuộc vào đặc điểm của từng bản phân phối, có thể cài đặt các ứng dụng ở các định dạng độc lập từ trình quản lý gói và tự động cập nhật chúng với người quản lý phụ trách chúng.

Trong Ubuntu, Trung tâm phần mềm cho phép bạn cài đặt cả hai chương trình ở định dạng truyền thống như Snap, ưu tiên cho định dạng sau. Mặc dù có một plugin cho phép Trung tâm Phần mềm GNOME (từ đó Ubuntu được tạo ra), nó không hoạt động với bản phân phối này.

Trong trường hợp của Ubuntu Studio, có thể kích hoạt tùy chọn sử dụng các gói Snap trong khi KDE Neon và Manjaro có thể hoạt động với cả hai định dạng.

Snap

Đây là định dạng mới nhất trong số các định dạng độc lập kể từ khi bắt đầu phát triển vào năm 2014.  Nó không chỉ được sử dụng trong các bản phân phối Linux dành cho máy tính để bàn mà còn cho Internet of Things, thiết bị di động và máy chủ. ĐẾNMặc dù có thể tạo các cửa hàng ứng dụng riêng biệt, nhưng hiện chỉ có một cửa hàng do Canonical vận hành, chụp nhanh.

Mặc dù Snapcraft có một loạt các ứng dụng nguồn mở phổ biến nhất, Điểm mạnh của nó là các chương trình do các nhà phát triển phần mềm tư nhân và các nhà cung cấp dịch vụ đám mây phát triển.

Flatpak

Mặc dù Flatpak chính thức ra mắt vào năm 2015, nhưng nó là sự tiếp nối của một dự án định dạng phổ quát khác được gọi là xdg-app. Dự án này ra đời với mục tiêu có thể chạy các ứng dụng trong một hộp cát ảo an toàn, không yêu cầu đặc quyền root hoặc gây ra mối đe dọa bảo mật cho hệ thống.

Flatpak tập trung vào phân phối máy tính để bàn cũng sử dụng khái niệm cửa hàng ứng dụng là Flathub được biết đến nhiều nhất.

Điểm mạnh của Flathub là nó thường có các phiên bản cập nhật nhất của các ứng dụng nguồn mở chính.

Xuất hiện

AppImage là định dạng gói độc lập lâu đời nhất vì nó được phát hành lần đầu tiên vào năm 2004.

Đây là định dạng đầu tiên tuân theo mô hình "Một ứng dụng-một tệp". Điều đó có nghĩa là mỗi khi chúng tôi tải xuống một tệp Appimage, chúng tôi đang tải xuống ứng dụng và mọi thứ nó cần để hoạt động. Nếu chúng ta muốn sử dụng ứng dụng, chúng ta chỉ cần cấp cho nó quyền thực thi và nhấp đúp vào biểu tượng xác định nó.

Appimage không sử dụng hệ thống cửa hàng ứng dụng, nhưng, hay một trang web trong đó chúng tôi có thể tìm thấy danh sách tất cả các đầu sách có sẵn. 

Để cập nhật Appimage, chúng ta có thể sử dụng công cụ này.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Satin dijo

    Tôi nhớ rằng không có đề cập đến độ chậm ngày càng tăng của snap khi cài đặt ứng dụng vì nó cần một đơn vị ảo cho mỗi ứng dụng.

  2.   hàng xa ten dijo

    Tôi nhớ rằng không có đề cập đến độ chậm ngày càng tăng của snap khi cài đặt ứng dụng vì nó cần một đơn vị ảo cho mỗi ứng dụng.

    1.    Diego người Đức Gonzalez dijo

      Cám ơn bạn đã góp ý. Tôi sẽ ghi nhớ điều đó.

  3.   Claudio Joffre dijo

    Cá nhân tôi nghĩ rằng các vấn đề của việc đóng gói phần mềm độc lập không gì khác hơn là sự phản ánh xung đột sâu sắc hơn nhiều, liên quan đến mức độ tuân thủ các tiêu chuẩn LSB và FSH của các bản phân phối khác nhau.
    Một trong những nguyên tắc cơ bản đằng sau việc đóng gói là thực hiện các thư viện tiêu chuẩn, giữ cả vị trí và vị trí của phần mềm, cũng như các tệp cấu hình. Do đó tránh được xung đột thư viện. Một cái gì đó phổ biến trong các hệ điều hành khác, và thật không may, do không tuân thủ các tiêu chuẩn, sẽ khiến việc bảo trì và cập nhật phần mềm trở nên khó khăn, chưa nói đến việc di chuyển phần mềm từ bản phân phối này sang bản phân phối khác. Việc thực hiện sai cách biên dịch thủ công, được thực hiện nhiều lần từ một hướng dẫn, mà không phân tích sự tuân thủ các tiêu chuẩn trong việc thực hiện nó, cuối cùng sẽ là một vấn đề đau đầu đối với các quản trị viên hệ thống. Đặc biệt là khi ai đó phải tiếp quản một máy chủ sản xuất được cài đặt bởi một quản trị viên trước đó.
    Bao bì độc lập, bằng cách này hay cách khác, cuối cùng sẽ đóng góp triết lý đó, thúc đẩy nhiều hơn sự độc lập, phụ thuộc vào một định dạng hoặc công ty cụ thể. Làm cho việc di chuyển nền tảng trở thành một nhiệm vụ gần như bất khả thi nhiều lần. Suy nghĩ nhiều hơn trong ngắn hạn, hơn là dài hạn. Một tình huống có thể được chứng kiến ​​bởi bất kỳ quản trị viên nghiêm túc nào có hơn 15 năm kinh nghiệm. Và tôi nói con số đó có chủ đích, vì trong giai đoạn đó, nó sẽ chứng kiến ​​đủ sự phân phối xảy ra, để nhận ra rằng sớm hay muộn, các dự án hoặc dịch vụ sẽ bị buộc vì lý do này hay lý do khác phải di chuyển khỏi nền tảng. Tình huống hiếm khi đi vào các quá trình đánh giá trong quá trình thực hiện một dự án. Nơi dễ di chuyển nhất chính xác là các nền tảng tuân thủ tốt nhất các tiêu chuẩn đã đề cập ở trên. Là những gói độc lập này, những gói khác xa nhất với các tiêu chuẩn này.

    1.    Diego người Đức Gonzalez dijo

      Đóng góp thú vị, tôi đã không nghĩ về nó

  4.   Người dùng Linux Rafael dijo

    Công cụ cập nhật tệp AppImage thực tế vô dụng. Trong số 7 tệp AppImage mà tôi đã thử (Inkscape, Olive, KSnip, MuseScore, OpenShot và những tệp khác) nó chỉ cố gắng làm việc với một tệp, kết thúc bằng "Không có chữ ký xác minh" và do đó, nó cũng không cập nhật. Có nghĩa là, nó KHÔNG ĐƯỢC SỬ DỤNG CHO BẤT KỲ ĐIỀU GÌ, bạn có thể xóa tài liệu tham khảo. Ngoài ra, nó đã không được cập nhật trong nhiều tháng.

    1.    Diego người Đức Gonzalez dijo

      Cảm ơn đã bình luận