Nếu bạn đã chú ý đến cộng đồng Linux vào cuối năm, bạn sẽ nghĩ rằng có một cuộc chiến bao bì đang diễn ra. Một mặt bạn có các gói Snappy của Ubuntu, một công nghệ ban đầu chỉ được tạo cho Ubuntu. Bây giờ, với việc phát hành Snapd, nó có thể chạy trên hầu hết mọi thứ.

Mặt khác, bạn có Flatpaks, về cơ bản tương tự theo nhiều cách để Snaps, ngoại trừ nó là nguồn mở hơn và dựa vào kho riêng lẻ thay vì một vị trí trung tâm. Công nghệ này cũng có thể được cài đặt trên hầu hết mọi thứ. Vậy, cái nào tốt hơn? Bạn nên sử dụng cái nào? Và quan trọng nhất, sự khác biệt là gì? Hãy cùng tìm hiểu!

Sự khác biệt là gì?

Sự khác biệt giữa Snap gói và Flatpaks không thực sự là rất nhiều. Snap được tạo ra trong nhà bởi Canonical - công ty đằng sau Ubuntu - và công nghệ này được mã hóa cứng để sử dụng cửa hàng gói Snap. Một số có thể lo lắng về điều này, vì Ubuntu có toàn quyền kiểm soát, và trên thực tế để tạo một gói Snap, bạn sẽ cần phải ký một Thỏa thuận Cấp phép Cộng tác viên (điều mà một số người chống lại).

Với Flatpaks mọi thứ đều có nguồn mở và không tập trung như Snaps. Điều quan trọng hơn là Flatpaks tập trung hơn vào việc cung cấp phần mềm cho máy tính để bàn và các gói Snap về cơ bản chỉ là công nghệ máy chủ mà Canonical đã áp dụng cho máy tính để bàn nhưng hoạt động cho cả hai.

Flatpak không có cửa hàng tập trung để nói chuyện. Ngay cả bây giờ, nếu bạn cài đặt nó, bạn không nhất thiết phải có khả năng để có được những thứ đi một cách dễ dàng. Phần mềm cơ bản hoạt động giống như hệ thống PPA của Ubuntu. Bạn phải đi ra ngoài và tìm một kho lưu trữ và sau đó thêm nó. Điều này trái ngược với cách Snaps hoạt động, chỉ đến từ cửa hàng linh hoạt của Canonical và không có nơi nào khác (hiện tại).

Khi bạn cài đặt một gói Snap, bạn chủ yếu nhận được mọi thành phần phần mềm duy nhất bạn cần để chạy một cái gì đó trong một gói toàn bộ (nếu bạn đang bối rối, hãy nghĩ đến các thùng chứa Docker). Ví dụ: bạn cài đặt Snap bao gồm toàn bộ màn hình Gnome. Nó sẽ được đóng gói với tất cả mọi thứ, thư viện và tất cả.

Với Flatpak, mọi thứ đều khác một chút. Lấy ví dụ Gnome. Các Gnome Desktop flatpak sẽ có tất cả các tập tin cần thiết nhưng không phải tất cả các thư viện duy nhất - trừ khi các nhà phát triển đã chọn để làm như vậy. Nhóm Flatpak đã tạo ra một thời gian chạy nên chứa mọi thứ bạn cần.

Bạn nên sử dụng cái nào?

Thật khó để nói những gì công nghệ sẽ là lãnh đạo ở đây. Không có nghi ngờ quan điểm của tôi về vấn đề này sẽ được đáp ứng bởi một số ý kiến ​​tức giận tranh cãi cho một vị trí khác, vì vậy trước khi tôi đi xa hơn, tôi chỉ muốn được rõ ràng. Flatpaks và Snap gói đều là những ý tưởng rất thú vị và độc đáo.

Rõ ràng với tôi, ngay bây giờ ít nhất, các gói Snap sẽ là thứ để sử dụng nếu những gì bạn muốn là “định dạng gói phổ quát”. Với Snapd có sẵn cho hầu hết mọi phân phối mà nó có thể xây dựng, nó ngày càng dễ dàng đang đi. Điều quan trọng hơn là bất cứ ai cũng có thể tìm ra. Bạn không cần phải tìm kiếm các url lưu trữ như Flatpak. Chỉ cần cài đặt và đi.

Đó không phải là để nói rằng Flatpak là không đáng giá. Ví dụ, nếu bạn đang sử dụng Fedora 24, bạn nên tận dụng toàn bộ lợi thế của Flatpak. Bạn cũng có thể làm cho nó hoạt động trên Arch, nếu bạn vào đó bằng cách cài đặt gói AUR này, hoặc bằng cách tự xây dựng nó từ Github.

Phần kết luận

Mặc dù Flatpak và Snappy không phải là ý tưởng mới, nhưng chúng có rất nhiều lực lượng đằng sau chúng. Chúng tôi đã có các công cụ như AppImage (và những người khác) trong quá khứ, và họ không bao giờ thực sự có được lực kéo đó nhiều. Tuy nhiên, tôi nghĩ rằng cả Flatpak và Snappy đều có những thứ cần thiết để làm cho các công cụ cài đặt phổ biến hơn trên Linux cất cánh - ngay cả khi nó có nghĩa là chúng tôi có hai định dạng chính thay vì một định dạng.

Một số người nói rằng quá nhiều sự lựa chọn trên Linux là xấu. Chúng tôi có quá nhiều bản phân phối, quá nhiều định dạng gói nhị phân, quá nhiều lựa chọn hệ thống tệp, quá nhiều môi trường máy tính để bàn và danh sách vẫn tiếp tục. Tuy nhiên, tôi nghĩ rằng những gì một số người nói là điểm yếu cũng là một sức mạnh tuyệt vời. Chúng tôi có thể đặt cược cược của chúng tôi với cả Snappy và Flatpak. Nếu một kết thúc xấu, chúng tôi có thể thử một cái gì đó khác, hoặc nếu họ cả hai goo nó là một win-win tình hình mà chúng ta tất cả gặt hái những lợi ích.

Bạn cảm thấy thế nào khi nói đến các gói Snap so với Flatpaks? Hãy cho chúng tôi biết dưới đây!