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:
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.
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ũ.
On Sat, 27 Aug 2011 09:50:48 +0700 "Doan, ( HCM )Lương Văn" <doanlvse60...@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,
-- Anh Ky Huynh @ ICT Registered Linux User #392115
> (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
> > (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 <h2vnt...@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.