问题背景

Arch Linux 中,安装 yay 的时候由于大陆封锁的原因,经常会碰到网络错误的情况,导致安装失败。

主要的原因如下:🥰

  • go 语言的软件安装源被屏蔽

  • github 访问受限

常规安装方法

git clone https://aur.archlinux.org/yay
cd yay
makepkg -si

最好使用其他用户进行操作,不要使用 root 用户,不然会提示:

image-20231028184834947.png

解决方案

解决方案1:go语言换源
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
  • 使更换的源生效

    • 临时生效

      export GO111MODULE=on
      export GOPROXY=https://goproxy.cn
    • 永久生效

      echo "export GO111MODULE=on" >> ~/.profile
      echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
      source ~/.profile
  • 完成上述步骤,再次执行 makepkg -si 即可!

解决方案2:修改 host 访问 GitHub

github hosts 如下:

# GitHub Host Start
•
185.199.108.154              github.githubassets.com
140.82.112.22                central.github.com
185.199.108.133              desktop.githubusercontent.com
185.199.108.153              assets-cdn.github.com
185.199.108.133              camo.githubusercontent.com
185.199.108.133              github.map.fastly.net
199.232.69.194               github.global.ssl.fastly.net
140.82.114.3                 gist.github.com
185.199.108.153              github.io
140.82.113.3                 github.com
140.82.112.5                 api.github.com
185.199.108.133              raw.githubusercontent.com
185.199.108.133              user-images.githubusercontent.com
185.199.108.133              favicons.githubusercontent.com
185.199.108.133              avatars5.githubusercontent.com
185.199.108.133              avatars4.githubusercontent.com
185.199.108.133              avatars3.githubusercontent.com
185.199.108.133              avatars2.githubusercontent.com
185.199.108.133              avatars1.githubusercontent.com
185.199.108.133              avatars0.githubusercontent.com
185.199.108.133              avatars.githubusercontent.com
140.82.112.10                codeload.github.com
52.217.207.1                 github-cloud.s3.amazonaws.com
52.216.78.4                  github-com.s3.amazonaws.com
52.217.194.169               github-production-release-asset-2e65be.s3.amazonaws.com
52.216.131.131               github-production-user-asset-6210df.s3.amazonaws.com
52.216.28.204                github-production-repository-file-5c1aeb.s3.amazonaws.com
185.199.108.153              githubstatus.com
64.71.144.202                github.community
185.199.108.133              media.githubusercontent.com
•
# Please Star : https://github.com/ineo6/hosts
# Mirror Repo : https://gitee.com/ineo6/hosts
# Update at: 2021-12-01 08:39:41
•
# GitHub Host End
  • 修改 host

    sudo vim /etc/hosts
  • 将以上 github host 内容追加到 /etc/hosts 文件中

  • 使更新的 hosts 立即生效

    sudo systemctl restart nscd