Nếu là một người dùng Linux lâu năm, bạn có thể biết việc cài đặt các ứng dụng mới trước đây đã khó khăn như thế nào. Trừ khi nó được bao gồm trong trình cài đặt, nếu không bạn phải trải qua quá trình cấu hình và thực hiện cài đặt, thường là tìm kiếm các dependency bị thiếu. Các trình quản lý gói như apt và yum làm cho điều này trở nên dễ quản lý hơn, nhưng các dependency vẫn có thể làm bạn đau đầu.
Bạn có thể đã nghe nói về Snap, công cụ tuyên bố sẽ khắc phục nhiều vấn đề trong số này. Có thể bạn cũng đã nghe nói rằng Snap chỉ có trên Ubuntu, nhưng may mắn thay, điều đó không đúng.
Ứng dụng Snap là gì?
Những ứng dụng Snap, hay còn gọi là các snap, không phụ thuộc vào bản phân phối, vì vậy lý tưởng nhất là chúng sẽ chạy giống nhau trên bất kỳ hệ thống nào. Để đạt được điều này, hầu hết các dependency và runtime (thời gian hoạt động) mà ứng dụng cần để chạy đều được đưa vào trong Snap. Điều này có nghĩa là một khi bạn đã thiết lập và chạy Snap trên hệ thống của mình, việc thêm các ứng dụng cần một số dependency giờ đây sẽ dễ dàng hơn nhiều.
Snap được hỗ trợ bởi Canonical, đó là lý do tại sao nó thường được đề cập trên Ubuntu, nhưng nó có thể chạy trên bất kỳ bản phân phối Linux chính nào. Arch thậm chí còn là một bản phân phối được hỗ trợ chính thức, vì vậy Snap là một cách tuyệt vời để chạy các ứng dụng không được đóng gói cho Arch.
Cài đặt daemon snapd
Để cài đặt các ứng dụng Snap trên hệ thống, bạn sẽ cần cài đặt daemon snapd. Mặc dù Snap chính thức hỗ trợ Arch, nhưng bạn vẫn sẽ cần cài đặt nó từ Arch User Repository (AUR). May mắn thay, điều này rất dễ thực hiện, bằng cách sử dụng công cụ yaourt.
Đầu tiên, cài đặt snapd bằng cách chạy lệnh sau:
yaourt -S snapd
Bây giờ, bạn cần kích hoạt service để chạy. Để làm điều này, chỉ cần gõ lệnh sau:
systemctl enable --now snapd.socket
Cài đặt ứng dụng Snap
Bây giờ, bạn đã cài đặt thành công Snap. Bạn có thể sử dụng nó để cài đặt các gói như bất kỳ trình quản lý gói nào khác. Ví dụ, để cài đặt một ứng dụng cụ thể bằng Snap, chỉ cần chạy lệnh sau:
snap install application-name
Để liệt kê các ứng dụng Snap có sẵn trên hệ thống, hãy chạy lệnh sau:
snap list
Để tìm kiếm một gói, bạn có thể truy vấn xem nó có sẵn hay không bằng cách gõ lệnh sau:
snap find searchterm
Cuối cùng, để loại bỏ một gói, chỉ cần chạy lệnh này:
snap remove application-name
Mẹo và thủ thuật Snap khác
Các ứng dụng Snap được tự động cập nhật theo mặc định, nhưng để cập nhật thủ công tất cả các ứng dụng, hãy chạy lệnh sau:
snap refresh
Một số ứng dụng Snap không sử dụng đường dẫn truyền thống, “/var/lib/snapd/snap”. Thay vào đó, chúng cài đặt vào “/snap”. Để có thể hỗ trợ cài đặt các ứng dụng Snap “cổ điển” này, hãy chạy lệnh sau:
ln -s /var/lib/snapd/snap /snap
Bây giờ, bạn có thể cài đặt và chạy các ứng dụng này, nhưng chúng sẽ được cài đặt cùng với tất cả những ứng dụng Snap khác của bạn. Snap phù hợp cho cả 2 loại ứng dụng này và tuân thủ tiêu chuẩn Filesystem Hierarchy Standard.
Snap không phải là công cụ duy nhất thuộc loại này. Flatpak và AppImage là hai hệ thống gói tương tự nhằm xử lý nhiều vấn đề giống nhau. Nhờ việc có hỗ trợ cho Ubuntu, Snap dường như là lựa chọn phổ biến nhất, ít nhất là cho đến thời điểm hiện tại.
Nhưng điều đó có nghĩa là Snap là lựa chọn tốt nhất không? Tham khảo bài viết: 9 trình quản lý gói Linux phổ biến nhất hiện nay để tìm câu trả lời nhé!
Chúc bạn thực hiện thành công!