انجمنهای فارسی اوبونتو
کمک و پشتیبانی => سایر توزیعهای گنو/لینوکس => آرچ => نویسنده: AH999 در 15 فروردین 1399، 08:04 بظ
-
سلام وقت همگی بخیر.
برای دانلود از aur آرچ میخواستم از Yay استفاده کنم ، و موقع اجرای دستورات برای نصب به مشکل میخورم
ممنون میشم راهنمایی کنید.
-------------------------------------------------------
git clone https://github.com/Jguer/yay.git
cd Yay
makepkg -si
------------------------------------------------------
Error :
==> ERROR: PKGBUILD does not exist.
-
https://aur.archlinux.org/yay.git
فکر کنم از این لینک باید نصب کنی
https://aur.archlinux.org/cgit/aur.git/snapshot/yay.tar.gz
-
خیر متاسفانه حل نشد
-
برای کامپایل yay باید بسته های binutils make gcc fakeroot رو نصب کنید
sudo pacman -S binutils make gcc fakeroot
یا آینکه بجای بسته های فوق base-devel رو نصب کنید
sudo pacman -S base-devel
-
البته میتونید مخازن چین رو به pacman اضافه کنید و از طریق pacman نصب کنید
-
https://aur.archlinux.org/yay.git
فکر کنم از این لینک باید نصب کنی
https://aur.archlinux.org/cgit/aur.git/snapshot/yay.tar.gz
من خودم قبلاً از این طریق نصب کردم این فایل را دانلود کردم بعد اکسترکت کردم در پوشه ای که فایل pkgbuild وجود دارد وارد ترمینال شدم و دستور makepkg را زدم دانلود و نصب شد
-
-------------------------------------------------------
git clone https://github.com/Jguer/yay.git
cd Yay
makepkg -si
------------------------------------------------------
Error :
==> ERROR: PKGBUILD does not exist.
touch PKGBUILD
vim PKGBUILD
محتویاتش زیر رو داخلش کپی کن:
# Maintainer: Jguer <joaogg3@gmail.com>
pkgname=yay
pkgver=9.4.6
pkgrel=2
pkgdesc="Yet another yogurt. Pacman wrapper and AUR helper written in go."
arch=('i686' 'x86_64' 'arm' 'armv7h' 'armv6h' 'aarch64')
url="https://github.com/Jguer/yay"
license=('GPL')
depends=(
'pacman>=5.2'
'sudo'
'git'
)
makedepends=(
'go'
)
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Jguer/yay/archive/v${pkgver}.tar.gz")
sha1sums=('a3b2dd86fda1cc5998899cd69df2102e57ab8fbc')
build() {
export GOPATH="$srcdir"/gopath
cd "$srcdir/$pkgname-$pkgver"
EXTRA_GOFLAGS="-modcacherw -gcflags all=-trimpath=${PWD} -asmflags all=-trimpath=${PWD}" \
LDFLAGS="-linkmode external -extldflags \"${LDFLAGS}\"" \
make VERSION=$pkgver DESTDIR="$pkgdir" build
}
package() {
cd "$srcdir/$pkgname-$pkgver"
make VERSION=$pkgver DESTDIR="$pkgdir" PREFIX=/usr install
}
ذخیره کن، خارج شو و سپس:
makepkg -si
-
برای دانلود از aur آرچ میخواستم از Yay استفاده کنم ، و موقع اجرای دستورات برای نصب به مشکل میخورم
git clone https://github.com/Jguer/yay.git
cd Yay
makepkg -si
Error :
==> ERROR: PKGBUILD does not exist.
با سلام.
برای نصب yay باید از دستورات زیر استفاده کنین.
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
اون repository که شما Clone کردید حاوی PKGBUILD نیستش. به جای GitHub، باید از AUR استفاده کنین. دستورات بالا رو اجرا کنین؛ در صورت دریافت خطا، خروجی رو کامل بذارین.
-
از تمامی دوستان تشکر میکنم ، مشکل حل شد
فقط چون این یکسری پکیچ های دیگه هم دانلود و نصب کرد ، میخواستم بدونم این پکیج ها مخرب نیستند؟
~/Software/yay
AH999|yay (master):ls
PKGBUILD
~/Software/yay
AH999|yay (master):makepkg -si
==> Making package: yay 9.4.6-2 (Sat Apr 4 10:14:32 2020)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...
Packages (1) go-2:1.14.1-1
Total Download Size: 127.19 MiB
Total Installed Size: 488.04 MiB
:: Proceed with installation? [Y/n] Y
:: Retrieving packages...
go-2:1.14.1-1-x86_64 127.2 MiB 371 KiB/s 05:51 [############################################################] 100%
(1/1) checking keys in keyring [############################################################] 100%
(1/1) checking package integrity [############################################################] 100%
(1/1) loading package files [############################################################] 100%
(1/1) checking for file conflicts [############################################################] 100%
(1/1) checking available disk space [############################################################] 100%
:: Processing package changes...
(1/1) installing go [############################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Retrieving sources...
-> Downloading yay-9.4.6.tar.gz...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 117 100 117 0 0 112 0 0:00:01 0:00:01 --:--:-- 112
100 295k 100 295k 0 0 88602 0 0:00:03 0:00:03 --:--:-- 163k
==> Validating source files with sha1sums...
yay-9.4.6.tar.gz ... Passed
==> Extracting sources...
-> Extracting yay-9.4.6.tar.gz with bsdtar
==> Starting build()...
go build -v -mod=mod -ldflags '-s -w -linkmode external -extldflags "-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" -X "main.version=9.4.6"' -modcacherw -gcflags all=-trimpath=/home/AH999/Software/yay/src/yay-9.4.6 -asmflags all=-trimpath=/home/AH999/Software/yay/src/yay-9.4.6 -o yay
go: downloading github.com/Jguer/go-alpm v0.0.0-20191122171459-5cffc6e8fc69
go: downloading github.com/Morganamilo/go-pacmanconf v0.0.0-20180910220353-9c5265e1b14f
go: downloading github.com/Morganamilo/go-srcinfo v1.0.0
go: downloading github.com/mikkeloscar/aur v0.0.0-20200113170522-1cb4e2949656
internal/race
runtime/internal/atomic
runtime/internal/sys
internal/cpu
sync/atomic
unicode
runtime/internal/math
unicode/utf8
internal/bytealg
encoding
math/bits
internal/testlog
unicode/utf16
runtime
math
runtime/cgo
container/list
crypto/internal/subtle
crypto/subtle
vendor/golang.org/x/crypto/cryptobyte/asn1
internal/nettrace
vendor/golang.org/x/crypto/internal/subtle
github.com/Jguer/yay/v9/pkg/stringset
internal/reflectlite
sync
internal/singleflight
github.com/Jguer/yay/v9/pkg/multierror
math/rand
errors
sort
io
strconv
internal/oserror
syscall
vendor/golang.org/x/net/dns/dnsmessage
bytes
reflect
bufio
strings
hash
hash/crc32
crypto
crypto/internal/randutil
crypto/hmac
crypto/rc4
internal/syscall/unix
time
vendor/golang.org/x/crypto/hkdf
vendor/golang.org/x/text/transform
path
github.com/Jguer/yay/v9/pkg/intrange
html
context
internal/poll
os
internal/fmtsort
encoding/binary
fmt
path/filepath
net
encoding/base64
crypto/cipher
crypto/sha512
crypto/aes
crypto/des
crypto/ed25519/internal/edwards25519
crypto/md5
encoding/json
encoding/xml
github.com/Jguer/go-alpm
compress/flate
math/big
compress/gzip
crypto/sha1
crypto/sha256
encoding/hex
encoding/pem
io/ioutil
net/url
vendor/golang.org/x/crypto/chacha20
vendor/golang.org/x/crypto/poly1305
crypto/rand
crypto/elliptic
encoding/asn1
crypto/ed25519
crypto/rsa
crypto/dsa
crypto/ecdsa
crypto/x509/pkix
vendor/golang.org/x/crypto/cryptobyte
vendor/golang.org/x/sys/cpu
vendor/golang.org/x/crypto/curve25519
vendor/golang.org/x/crypto/chacha20poly1305
log
vendor/golang.org/x/text/unicode/bidi
crypto/x509
vendor/golang.org/x/text/unicode/norm
vendor/golang.org/x/text/secure/bidirule
net/textproto
vendor/golang.org/x/net/http2/hpack
mime
vendor/golang.org/x/net/idna
crypto/tls
mime/quotedprintable
vendor/golang.org/x/net/http/httpguts
vendor/golang.org/x/net/http/httpproxy
mime/multipart
net/http/internal
github.com/Morganamilo/go-pacmanconf/ini
os/exec
github.com/Morganamilo/go-srcinfo
github.com/Morganamilo/go-pacmanconf
net/http/httptrace
net/http
github.com/mikkeloscar/aur
github.com/Jguer/yay/v9/pkg/completion
github.com/Jguer/yay/v9
==> Entering fakeroot environment...
==> Starting package()...
install -Dm755 yay /home/AH999/Software/yay/pkg/yay/usr/bin/yay
install -Dm644 doc/yay.8 /home/AH999/Software/yay/pkg/yay/usr/share/man/man8/yay.8
install -Dm644 completions/bash /home/AH999/Software/yay/pkg/yay/usr/share/bash-completion/completions/yay
install -Dm644 completions/zsh /home/AH999/Software/yay/pkg/yay/usr/share/zsh/site-functions/_yay
install -Dm644 completions/fish /home/AH999/Software/yay/pkg/yay/usr/share/fish/vendor_completions.d/yay.fish
==> Tidying install...
-> Removing libtool files...
-> Purging unwanted files...
-> Removing static library files...
-> Stripping unneeded symbols from binaries and libraries...
-> Compressing man and info pages...
==> Checking for packaging issues...
==> WARNING: Package contains reference to $srcdir
usr/bin/yay
==> Creating package "yay"...
-> Generating .PKGINFO file...
-> Generating .BUILDINFO file...
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: yay 9.4.6-2 (Sat Apr 4 10:21:24 2020)
==> Installing package yay with pacman -U...
[sudo] password for AH999:
loading packages...
resolving dependencies...
looking for conflicting packages...
Packages (1) yay-9.4.6-2
Total Installed Size: 6.26 MiB
:: Proceed with installation? [Y/n] Y
(1/1) checking keys in keyring [############################################################] 100%
(1/1) checking package integrity [############################################################] 100%
(1/1) loading package files [############################################################] 100%
(1/1) checking for file conflicts [############################################################] 100%
(1/1) checking available disk space [############################################################] 100%
:: Processing package changes...
(1/1) installing yay [############################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
~/Software/yay
AH999|yay (master):
-
یکسری پکیج نصب نکرده فقط پکیج go رو نصب کرده
go یک زبان برنامه نویسی هست و چون yay با این برنامه نوشته شده برای کامپایل yay به این برنامه نیاز داشته
الان میتونی با دستور زیر حذفش کنی ، دیگه نیازی بهش نداری ، مگر اینکه باز بخواهی یک برنامه دیگه که با این زبان نوشته شده رو کامپایل کنی (یا این زبان رو یاد بگیری)
sudo pacman -R go
-
یکسری پکیج نصب نکرده فقط پکیج go رو نصب کرده
go یک زبان برنامه نویسی هست و چون yay با این برنامه نوشته شده برای کامپایل yay به این برنامه نیاز داشته
الان میتونی با دستور زیر حذفش کنی ، دیگه نیازی بهش نداری ، مگر اینکه باز بخواهی یک برنامه دیگه که با این زبان نوشته شده رو کامپایل کنی (یا این زبان رو یاد بگیری)
sudo pacman -R go
درسته ، با دستور yay -c پاک شد ، تشکر از شما
-
چن نکته: اول اینکه توضیح بدید چطور مشکل حل شد، تا بقیه دوستان هم اگر مشکل داشتند استفاده کنند
دوم اینکه به عنوان تاپیک (حل شد) اضافه کنید
سوم اینکه شما چند وقت پیش تو تاپیک زیر مشکلی مشابه مطرح کرده بودید ، چه نیازی به زدن این تاپیک بود
https://forum.ubuntu-ir.org/index.php?topic=150330
-
و در آخر این توضیح رو بدم که اگر مخازن چین رو اضافه کنی به راحتی و بدو نصب پکیج اضافی (دانلود ۱۳۰ مگ پکیج go و ...) میتونی yay رو نصب کنی
یعنی فایل etc/pacman.conf رو ویرایش کنی ، مثلا اگر بخواهی با نانو ویرایش کنی دستورش میشه:
sudo nano /etc/pacman.conf
و بعد خطوط زیر رو به انتهاش اضافه کنی
[archlinuxcn]
SigLevel = Never
Server = http://repo.archlinuxcn.org/$arch
بعد با دستور زیر براحتی yay رو نصب کنی
sudo pacman -Sy
sudo pacman -S yay
-
و در آخر این توضیح رو بدم که اگر مخازن چین رو اضافه کنی به راحتی و بدو نصب پکیج اضافی (دانلود ۱۳۰ مگ پکیج go و ...) میتونی yay رو نصب کنی
یعنی فایل etc/pacman.conf رو ویرایش کنی ، مثلا اگر بخواهی با نانو ویرایش کنی دستورش میشه:
sudo nano /etc/pacman.conf
و بعد خطوط زیر رو به انتهاش اضافه کنی
[archlinuxcn]
SigLevel = Never
Server = http://repo.archlinuxcn.org/$arch
بعد با دستور زیر براحتی yay رو نصب کنی
sudo pacman -Sy
sudo pacman -S yay
ممنون از راهنماییتون ، فقط ی سوال ، اگر مخازن چین رو اضافه کنم ، مشکلی واسه آپدیت پکیج هایی که ممکن داخل مخزن اصلی آرچ باشن ، پیش نمیاد؟؟
طبق گفته دوستان این پکیچ دانلود و نصب کردم
sudo pacman -S binutils make gcc fakeroot
بعد مراحل نصب رو طبق راهنمای yay پیشرفتم و درست شد...
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
-
نه پیش نمیاد ، مخزن چین پکیج هایی رو داره که تو مخازن رسمی آرچ نیستند بنابراین تداخلی نداره
درحقیقت یک سری پکیج های پرکاربرد aur به صورت کامپایل شذه و آماده داخل این مخزن هستند