Mẹo: yaourt . lưu lại gói đóng bởi yaourt

33 views
Skip to first unread message

Anh K. Huynh

unread,
Aug 26, 2011, 8:19:57 PM8/26/11
to archl...@googlegroups.com
Hi,

Khi dùng Arch thì sẽ gặp tình huống là phải biên dịch một số phần mềm
từ mã nguồn. Chuyện biên dịch thật không đơn giản chút nào, nên khi
cần cài một phần mềm nào đó, bạn nên lười nhác theo thứ tự sau:

(1) Tìm gói với pacman (pacman -sS tên_gói)

(2) Nếu không có, thêm một số repo không chính thức và quay lại (1).
Danh sách các repo. có thể tìm thấy tại (i). (Mình hay dùng
archlinuxfr; ví dụ, để cài Ruby-1.8 thì không cần phải biên dịch mà
chỉ cần cài pacman -S ruby-1.8.7-svn từ repo. đó)

(3) Cách cuối cùng, khi bạn bắt buộc phải biên dịch từ mã nguồn, thử
tìm gói từ AUR (ii): có thể dùng giao diện web, nhưng cách đơn giản
là như sau:

(3a) Cài gói yaourt theo chỉ dẫn ở (iii)
(3b) Dùng @yaourt -sS tên gói@ thay cho @pacman -sS@ để tìm kiếm
(3c) Dùng @yaourt -S tên gói@ để biên dịch và cài đặt gói

@Yaourt@ sẽ tự động lấy thông tin từ AUR (ii), biên dịch gói và cài
đặt vào. Một trong những điều có thể gây phiền toái là sau khi
@yaourt@ biên dịch và cài đặt gói thành công, gói sẽ bị xóa (vì nó
được lưu trong thư mục tạm /tmp/). Việc lưu gói lại là cần thiết, để
sau này có gì lấy ra xài, đỡ mất công làm lại từ đầu.

Vậy đâu là chìa khóa? Thật đơn giản, bạn chỉ việc mở và chỉnh lại tập
tin @/etc/makepkg.conf@ (tập tin này của hệ thống Arch, không phải
của riêng @yaourt@, và điều chỉnh sẽ có tác động lên các chương trình
tương tự như @yaourt@). Cách chỉnh: thay đổi giá trị ba biến PKGDEST,
SRCPKGDEST và PACKAGER cho phù hợp, như ví dụ sau:

<pre>
PKGDEST=/home/pacman/packages
SRCPKGDEST=/home/pacman/srcpackages
PACKAGER="icy <i...@viettug.org>"
</pre>

Xong rồi đó bạn. Lần tới, khi dùng @yaourt@ để tạo gói thì các gói
của bạn sẽ lưu trong thư mục @/home/pacman/packages/@. Tất nhiên, bạn
phải tạo ra thư mục đó trước.

(i) https://wiki.archlinux.org/index.php/Unofficial_User_Repositories
(ii) http://aur.archlinux.org/
(iii) https://wiki.archlinux.org/index.php/Yaourt

--
Anh Ky Huynh @ ICT
Registered Linux User #392115

Doan, ( HCM )Lương Văn

unread,
Aug 26, 2011, 10:50:48 PM8/26/11
to archl...@googlegroups.com
Các tùy chọn này yaourt đã hỗ trợ cho mình rồi. Có thể chỉnh ở $HOME/.yaourtrc
Như các tùy chỉnh ví dụ theo máy em 
DEVELBUILDDIR="/home/firephoenix/build/devel"
TMPDIR="/home/firephoenix/build"
EXPORT=1
EXPORTDIR="/home/firephoenix/build/packages"

P/s Theo em ko nên dùng repo archlinuxfr vì đa phần các gói trên này đã cũ.

Anh K. Huynh

unread,
Aug 27, 2011, 3:50:59 AM8/27/11
to archl...@googlegroups.com
On Sat, 27 Aug 2011 09:50:48 +0700
"Doan, ( HCM )Lương Văn" <doanlv...@fpt.edu.vn> wrote:

> Các tùy chọn này yaourt đã hỗ trợ cho mình rồi. Có thể chỉnh ở
> $HOME/.yaourtrc
> Như các tùy chỉnh ví dụ theo máy em
> DEVELBUILDDIR="/home/firephoenix/build/devel"
> TMPDIR="/home/firephoenix/build"
> EXPORT=1
> EXPORTDIR="/home/firephoenix/build/packages"

Good tips :) Thanks!


> P/s Theo em ko nên dùng repo archlinuxfr vì đa phần các gói trên
> này đã cũ.

Có xài thôi, cũ tí không vấn đề. Chính vì ruby-187 *cũ* và không có
trong official mirror (chỉ hỗ trợ ruby 19), kiểu như python2.x bị bỏ
qua bởi python3.x vậy đó, nên mình thấy dùng archlinuxfr khá tiện
lợi.

Ngoài ra, nếu có phiên bản mới ở repo khác thì phiên bản cũ ở
archlinuxfr sẽ bị bỏ qua!

Chúc vui,

Hoang Tran

unread,
Aug 28, 2011, 9:31:20 PM8/28/11
to archl...@googlegroups.com
>
> (3) Cách cuối cùng, khi bạn bắt buộc phải biên dịch từ mã nguồn, thử
> tìm gói từ AUR (ii): có thể dùng giao diện web, nhưng cách đơn giản
> là như sau:
>
> (3a) Cài gói yaourt theo chỉ dẫn ở (iii)
> (3b) Dùng @yaourt -sS tên gói@ thay cho @pacman -sS@ để tìm kiếm
> (3c) Dùng @yaourt -S tên gói@ để biên dịch và cài đặt gói
>
> @Yaourt@ sẽ tự động lấy thông tin từ AUR (ii), biên dịch gói và cài
> đặt vào. Một trong những điều có thể gây phiền toái là sau khi
> @yaourt@ biên dịch và cài đặt gói thành công, gói sẽ bị xóa (vì nó
> được lưu trong thư mục tạm /tmp/). Việc lưu gói lại là cần thiết, để
> sau này có gì lấy ra xài, đỡ mất công làm lại từ đầu.
>
bác chuyển sang dùng aurget đi, sẽ thích ngay ấy mà ;-)

Hoang

--
Real programs don't eat cache.
_ /|
\'o.O'
=(___)=
U

h2vnteam

unread,
Aug 28, 2011, 11:39:19 PM8/28/11
to archl...@googlegroups.com
He he...That is what I do all the time, just type yain ( install, and yase for searching), get the job done without digging into a huge junk of codes.

2011/8/29 Hoang Tran <hoang...@vnoss.org>



--
Keep things simple as "The Arch Way"

Anh K. Huynh

unread,
Sep 1, 2011, 5:51:10 AM9/1/11
to archl...@googlegroups.com, h2vn...@gmail.com
On Mon, 29 Aug 2011 10:39:19 +0700
h2vnteam <h2vn...@gmail.com> wrote:

> He he...That is what I do all the time, just type yain ( install,
> and yase for searching), get the job done without digging into a
> huge junk of codes.

Bảng so sánh ở đây:

https://wiki.archlinux.org/index.php/AUR_Helpers

Thấy bác HT dùng aurget lâu rồi, nhưng mình vẫn quen xài yaourt. Để
có dịp sẽ xem aurget thế nào!

Reply all
Reply to author
Forward
0 new messages