Có bao giờ bạn tự hỏi khi cài đặt các chương trình trên linux bạn thường gõ các lệnh dạng như apt update hay yum update và khi gõ các lệnh này thì nó sẽ làm gì chưa?

Linux mà chính xác ở đây là unbuntu sẽ dùng một cái kho đóng gói tự động có tên snap để lưu trữ các phần mềm và tiến hành cài đặt nó theo các gói được các lập trình viên upload lên. trong loạt bài này mình sẽ hướng dẫn các bạn lập cho mình một phần mềm đơn giản để có thể sử dụng và upload lên snap để người khác cài đặt

Trang chủ snap của ubuntu là snapcraft.oi bạn có thể tìm được các phần mềm trên unbuntu software center tại đây. đây chính là nơi bạn sẽ đưa mã nguồn của mình lên

Snap là kho lưu trữ các phần mềm có cấu trúc là yaml, nếu bạn từng làm github page thì sẽ hiểu được ngôn ngữ này như thế nào và sẽ bắt đầu rất dễ

Yêu cầu hệ thống cho bài viết này:

  • Tất nhiên bạn phải có một chiếc máy tính chạy unbuntu có thể máy ảo hoặc docker
  • Unbuntu tối thiểu là unbuntu 16.x các bản unbuntu 14 không còn được hỗ trợ nếu bạn vẫn dùng nó hãy nghĩ tới việc nâng cấp lên hệ điều hành mới hơn 16 hoặc 18

Đầu tiên chúng ta cần cài các công cụ cần thiết bao gồm cả việc cập nhập hệ thống

Chúng ta tiến hành cài đặt snap phục vụ dev các phần mềm.

hoặc

Vậy là chúng ta đã chuẩn bị song môi trường để tiến hành dựng một apps test

Bước 1: tạo thư mục lưu trữ để test

sau khi chúng ta tạo và vào bên trong thư mục chúng ta đã tạo thì chúng ta sẽ bắt đầu tạo file mặc định của snap

Với lệnh trên một file yaml sẽ được sinh ra nó có cấu trúc như sau

file này có nội dung

snapcraft.yaml chứa các thông tin như sau:

  • Name: tên của apps bạn định làm là gì
  • Version: là số phiên bản khi bạn bắt đầu lập trình để mọi người dễ dàng nhận ra các thay đổi cũng như lựa chọn các phiên bản phù hợp với nhu cầu của người dùng có những người dùng chỉ cần bản cũ bản mới mình ra chưa chắc họ đã cần…
  • summary: là đoạn văn tóm tắt ngắn ngọn phần mềm của bạn bao gòm cả tag để mọi người dễ tìm kiếm về sau
  • description: mô tả phần mềm của bạn có tính năng gì có cập nhập gì
  • grade: thể hiện độ tin tưởng đối với lập trình viên đã làm ra phần mềm cũng như cách để phân loại phần mềm ở các trạng thái ổn định đang làm bản beta hay thử nghiệm tính năng mới
  • confinement: đây là nơi các yêu cầu liên quan tới bảo mật được đưa ra cho người dùng sử dụng về sau. có 3 tùy chọn devmode’, ‘strict’, or ‘classic. devmode là chế độ đang trong quá trình lập trình ám chỉ bản beta, strict và classic là trạng thái ổn định

Chúng ta sẽ sử file này thành nội dung như sau

Như vậy chúng ta đã khởi tạo thành công môi trường cũng như các cấu hình cơ bản cho một packaging của unbuntu

1
Leave a Reply

avatar
1 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
1 Comment authors
Manh Tuong Recent comment authors
  Subscribe  
newest oldest most voted
Notify of