Một trong những điều tôi thích nhất về Arch Linux và các dẫn xuất của nó là cực kỳ dễ dàng để tạo các gói để sau này được cài đặt trên hệ thống, không giống như những gói đã biết . Deb của Debian / Ubuntu / Linux Mint / etc đó là một sự hỗn loạn (và nếu chúng là thư viện thì tôi không cho bạn biết).
Một mẫu cơ sở sẽ là:
# Maintainer:
pkgname=
pkgver=
pkgrel=
pkgdesc=
arch=()
url=
license=()
groups=()
depends=()
makedepends=()
source=()
md5sums=()
build() {
...
}
package() {
...
}
Bây giờ tôi sẽ giải thích từng tham số:
- # Người bảo trì: Trong đó tên của người bảo trì gói được đặt
- tên pkg: Tên của gói. Nó chỉ có thể chứa các chữ cái, số, -, _ và +
- máy chủ: phiên bản gói. pe 1.0.0
- gói: đánh giá về chương trình hoặc gói. pe 1
- pkgdesc: mô tả gói.
- vòm: kiến trúc của chương trình: nó có thể là bất kỳ (cho mọi người), i686 và x86_64, là bất kỳ cho các gói không yêu cầu biên dịch, chẳng hạn như các chương trình bash hoặc python. Nếu đó là một chương trình cần nó (ví dụ: các chương trình bằng C hoặc C ++), bạn phải chỉ ra i686 nếu nó là 32 bit hoặc x86_64 cho 64 bit. Nói chung, nếu nó tương thích với cả hai, nó được đặt (i686, x86_64)
- url: url đến trang chính thức của chương trình. Đó là khuyến khích để đặt nó.
- Giấy phép: giấy phép chương trình. ví dụ: GPL3
- các nhóm: các nhóm mà gói đó thuộc về. nhóm = ('hệ thống')
- phụ thuộc: trong đó chúng tôi chỉ ra các gói cần thiết cho việc thực thi chương trình. pependens = ('python2' 'pygtk')
- phụ thuộc: các phụ thuộc chỉ được yêu cầu để biên dịch gói. Nếu mã sẽ được tải xuống từ trình quản lý phiên bản, bạn nên đặt nó. pe: makedepends = ('git')
- nguồn: trong đó, chúng tôi chỉ ra các tệp cần thiết để tạo gói. Theo quy tắc chung, đó là url của gói chứa mã, bản vá, tệp .desktopt, biểu tượng, v.v. pe: source = (pacsyu.desktop)
- md5sum: đây là tổng md5 của các tệp được chỉ ra trong nguồn. Để biết những cái nào chúng tôi chạy từ một thiết bị đầu cuối trong thư mục có PKGBUILD (đã ghi đường dẫn tệp trong nguồn) trang điểm -g và tổng sẽ xuất hiện trên màn hình.
Cũng có thể sử dụng các tổng khác như sh1. - xây dựng: trong chức năng này, chúng tôi sẽ đặt các lệnh cần thiết để tiến hành biên dịch phần mềm. Nếu không cần thiết phải biên dịch thì chỉ cần hàm sau)
- gói: trong chức năng khác này, các lệnh cài đặt chương trình sẽ đi. Ví dụ: nếu chúng ta đang biên dịch mã C ở đây, việc thực hiện cài đặt sẽ diễn ra.
Và để kết thúc chúng ta chỉ cần thực hiện trang điểm để xác minh rằng gói được tạo.
Như bạn thấy, đó là khó khăn cho chúng tôi. Sau đó, tôi để lại cho bạn một số thông số bổ sung của trang điểm:
- -Tôi: Hướng dẫn makepkg cài đặt gói sau khi nó được tạo.
- -S: Cài đặt các gói phụ thuộc nếu chúng nằm trong kho.
- -F: Nếu đã có một gói có tên, phiên bản và bản sửa đổi đó với tham số này, chúng tôi sẽ yêu cầu bạn ghi đè gói đó.
- -C: Làm sạch các thư mục đang làm việc (pkg và mã nguồn) sau khi hoàn tất.
- -NS: Đóng gói lại gói mà không cần phải biên dịch lại.
Tôi khuyên bạn nên xem thêm tệp PKGBUILD để xem thêm các ví dụ, thực hiện lệnh trang điểm -h để xem phần còn lại của các tham số chương trình, ngoài việc xem tài liệu chính thức của makepkg trên Arch Linux Wiki bạn có thể tìm thấy gì đây