作为前端开发者我们经常会使用npm或yarn,我们都知道npm和yarn默认镜像在国外,国内访问这些镜像速度会比较慢,下面介绍修改npm和yarn源的方法

一. npm和yarn源的简单修改(以淘宝镜像为例)

npm

  1. 临时修改(只生效一次)
    npm install 包的名字 --registry https://registry.npm.taobao.org
  2. 设置npm的配置项(全局配置)
    查看npm源的当前地址

npm config get registry

设置淘宝镜像
npm config set registry https://registry.npm.taobao.org

yarn

  1. 临时修改(只生效一次)
    yarn save 包的名字 --registry https://registry.npm.taobao.org/
  2. 设置yarn的配置项(全局配置)

查看yarn源的当前地址
yarn config get registry

设置淘宝镜像
yarn config set registry https://registry.npm.taobao.org/

二. 使用第三方软件快速修改、切换 npm和yarn的源(以淘宝镜像为例)
(1)分别修改npm和yarn源(经实际测试,这种方法修改一个源另一个源也会同时修改)

npm

nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换

安装
npm install -g nrm

列出可选的源

nrm ls

* npm ---- https://registry.npmjs.org/
  cnpm --- http://r.cnpmjs.org/
  taobao - https://registry.npm.taobao.org/
  nj ----- https://registry.nodejitsu.com/
  rednpm - http://registry.mirror.cqupt.edu.cn/
  npmMirror  https://skimdb.npmjs.com/registry/
  edunpm - http://registry.enpmjs.org/

带 * 的是当前使用的源

切换

切换到taobao镜像源

nrm use taobao
   Registry has been set to: https://registry.npm.taobao.org/

测试源的响应时间

测试所有源的响应时间:

nrm test

  npm ---- 2930ms
  cnpm --- 300ms
* taobao - 292ms
  nj ----- Fetch Error
  rednpm - Fetch Error
  npmMirror  1626ms
  edunpm - Fetch Error

可以多次测量来得到更精确的结果
更多nrm使用方法访问nrm的gitHub仓库
https://github.com/Pana/nrm

yarn

yrm 是一个 yarn源管理器,允许你快速地在yarn源间切换

安装
npm install -g yrm

列出可选的源

yrm ls

  npm ---- https://registry.npmjs.org/
  cnpm --- http://r.cnpmjs.org/
* taobao - https://registry.npm.taobao.org/
  nj ----- https://registry.nodejitsu.com/
  rednpm - http://registry.mirror.cqupt.edu.cn/
  npmMirror  https://skimdb.npmjs.com/registry/
  edunpm - http://registry.enpmjs.org/
  yarn --- https://registry.yarnpkg.com

带 * 的是当前使用的源

切换

切换到taobao镜像源

yrm use taobao

   YARN Registry has been set to: https://registry.npm.taobao.org/

测试源的响应时间

测试所有源的响应时间:

yrm test

  npm ---- 784ms
  cnpm --- 290ms
* taobao - 297ms
  nj ----- Fetch Error
  rednpm - Fetch Error
  npmMirror  1353ms
  edunpm - Fetch Error
  yarn --- Fetch Error

可以多次测量来得到更精确的结果
更多yrm使用方法访问yrm的gitHub仓库
https://github.com/i5ting/yrm

(2)使用双源管理工具cgr (特感谢缤纷扫落叶推荐)

安装

npm install -g cgr

使用方法和前两种差别不大,下边附上使用方法网址
https://www.npmjs.com/package/cgr

【参考文章】
https://www.jianshu.com/p/309645729b2e
http://www.16boke.com/article/detail/154
https://laravel-china.org/articles/15976/yarn-accelerate-and-modify-mirror-source-in-china
https://www.npmjs.com/package/cgr

https://www.jianshu.com/p/b26a04394e0f

定义好版本号,对于产品的版本发布与持续更新很重要;
但是对于版本怎么定义,规则如何确定,却是千差万别。具体应用,可以结合自己目前的实际情况命名;

很多软件在正式发布前都会发布一些预览版或者测试版,一般都叫“beta版”或者 “rc版”,特别是开源软件,甚至有“alpha版”,下面来解释一下各个版本的意思。

alpha版:内部测试版。α是希腊字母的第一个,表示最早的版本,一般用户不要下载这个版本,这个版本包含很多BUG,功能也不全,主要是给开发人员和 测试人员测试和找BUG用的。
beta版:公开测试版。β是希腊字母的第二个,顾名思义,这个版本比alpha版发布得晚一些,主要是给“部落”用户和忠实用户测试用的,该版本任然存 在很多BUG,但是相对alpha版要稳定一些。这个阶段版本的软件还会不断增加新功能。如果你是发烧友,可以下载这个版本。
rc版:Release Candidate(候选版本),该版本又较beta版更进一步了,该版本功能不再增加,和最终发布版功能一样。这个版本有点像最终发行版之前的一个类似 预览版,这个的发布就标明离最终发行版不远了。作为普通用户,如果你很急着用这个软件的话,也可以下载这个版本。
stable版:稳定版。在开源软件中,都有stable版,这个就是开源软件的最终发行版,用户可以放心大胆的用了。

另外,对于商业软件,还有一下版本:

RTM版:全称为Release to Manufacture。工厂版。改版程序已经固定,就差工厂包装、光盘印图案等工作了。
OEM版:厂商定制版。
EVAL版:评估版。就是有30或者60天等使用期限的版本。
RTL版:Retail.(零售版),这个版本就是真正发售的版本,有漂亮的包装、光盘、说明书等东西和高昂的价格。

有的产品号称是永远的Beta版,持续不断地更新、优化,迭代,产品才有生命力!

PR:premiere的缩写 预览版

作者:良人与我
链接:https://www.jianshu.com/p/b26a04394e0f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

https://ubuntuqa.com/article/111.html

问题描述

我使用Software Sources程序添加了一些额外的存储库。但是当我重新加载包数据库时,出现如下错误:

W: GPG error: http://ppa.launchpad.net trusty InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 8BAF9A6F

根据官方的Ubuntu文档,我知道我可以在终端中使用apt-key修复它。但我希望以图形方式做。有没有办法做到这一点,而不使用终端?

最佳解决方案

到目前为止,最简单的方法是使用Y-PPA-Manager(现在将launchpad-getkeys脚本与图形界面集成在一起)。

要安装它,首先添加该程序的webupd8存储库:

sudo add-apt-repository ppa:webupd8team/y-ppa-manager

更新您的软件列表并安装Y-PPA-Manager:

sudo apt-get update
sudo apt-get install y-ppa-manager

运行y-ppa-manager(即键入y-ppa-manager,然后按确认键)。

当出现主y-ppa-manager窗口时,点击”Advanced.”

从高级任务列表中,选择“尝试导入所有缺少的GPG密钥”,然后单击确定。你完成了!正如警告对话框所示,当您开始操作时,根据您拥有的PPA数量和连接速度,可能需要一段时间(大约2分钟)。

次佳解决方案

在终端中执行以下命令

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <PUBKEY>

其中<PUBKEY>是您缺少存储库的公钥,例如8BAF9A6F。

然后更新

sudo apt-get update

备用方法:

sudo gpg --keyserver pgpkeys.mit.edu --recv-key <PUBKEY>
sudo gpg -a --export <PUBKEY> | sudo apt-key add -
sudo apt-get update

请注意,当你输入一个密钥这样使用apt-key你是在告诉你信任你要导入签署您的系统将使用软件密钥的系统。除非您确定密钥真的是包销售商的关键,否则不要这样做。

第三种解决方案

当你没有合适的存储库公钥时会发生这种情况。

要解决这个问题,请使用以下命令:

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 9BDB3D89CE49EC21

它从Ubuntu密钥服务器中检索密钥。然后这个:

gpg --export --armor 9BDB3D89CE49EC21 | sudo apt-key add -

它将密钥添加到apt受信任的密钥。

该解决方案可以找到here& here& here。

第四种方案

您需要获取并导入密钥。

要从PPA获取密钥,请访问PPA的Launchpad页面。在Launchpad的每个PPA页面上,点击’关于这个PPA的技术细节'(1)后,你会发现这个链接(2):

apt,gnupg,ubuntu

按照它并点击密钥ID链接(3):

apt,gnupg,ubuntu

保存页面,这是你的关键文件。

现在是时候导入它了:

Applications > Software Center,

Edit > Software sources...,

输入你的密码,

转到Authentication选项卡并单击Import Key File...,最后

选择保存的密钥文件,然后单击OK。

而已。

第五种方案

apt只能处理/etc/apt/trusted.gpg.d中的40个键。 41个密钥,即使您经历了所有添加缺少的密钥的步骤,您也会得到GPG错误“找不到公用密钥”。

请检查您不再使用的ppa(s)文件中是否有未使用的密钥。如果全部正在使用中,请考虑删除一些ppa以及/etc/apt/trusted.gpg.d中的相应密钥文件

此外,使用

sudo apt-key adv

被认为是一种安全风险,不被推荐,因为你“破坏了整个安全概念,因为这不是一个安全的接收密钥的方式,因为各种原因(例如:hkp是一个明文协议,可以伪造短的甚至长的keyid,… )”。 http://ubuntuforums.org/showthread.php?t=2195579

我相信正确的方法来添加丢失的键(例如1ABC2D34EF56GH78)是

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 1ABC2D34EF56GH78
gpg --export --armor 1ABC2D34EF56GH78 | sudo apt-key add -

第六种方案

WebUpd8 PPA中包含一个小脚本,我将链接为一个.deb下载文件,因此您不必添加整个PPA,它将自动导入所有缺少的GPG密钥。

下载并安装Launchpad-getkeys(忽略它的版本,它适用于从Karmic到Oneiric的所有Ubuntu版本)。安装完成后,打开终端并输入:

sudo launchpad-getkeys

如果您使用代理服务器,则情况会稍微复杂一些,因此请参阅this获取更多信息

第七种方案

安装Heroku时遇到同样的问题。下面的链接解决了我的问题 –

http://naveenubuntu.blogspot.in/2011/08/fixing-gpg-keys-in-ubuntu.html

修复NO_PUBKEY问题后,仍然存在以下问题

W: GPG error: xhttp://toolbelt.heroku.com ./ Release: The following signatures were invalid: BADSIG C927EBE00F1B0520 Heroku Release Engineering <release@heroku.com>

为了解决它,我在终端中执行了以下命令:

sudo -i
apt-get clean
cd /var/lib/apt
mv lists lists.old
mkdir -p lists/partial
apt-get clean
apt-get update

来源 – Link to solve it

第八种方案

确保您安装了apt-transport-https:

dpkg -s apt-transport-https > /dev/null || bash -c "sudo apt-get update;
sudo apt-get install apt-transport-https -y"

添加存储库:

curl https://repo.skype.com/data/SKYPE-GPG-KEY | sudo apt-key add -
echo "deb [arch=amd64] https://repo.skype.com/deb stable main" | sudo tee /etc/apt/sources.list.d/skype-stable.list

安装Skype for Linux:

sudo apt-get update
sudo apt-get install skypeforlinux -y

来源:https://community.skype.com/t5/Linux/Skype-for-Linux-Beta-signatures-couldn-t-be-verified-because-the/td-p/4645756

第九种方案

更一般地说,以下方法应该适用于每个存储库。首先,在搜索引擎的最终帮助下,搜索程序提供商网站上的文本,如下所示:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.1 (GNU/Linux)
[...]
-----END PGP PUBLIC KEY BLOCK-----

这样的文本例如显示在http://deb.opera.com上。复制该段落,将其粘贴到您在桌面上创建的空白文件中。这导致密钥文件。

然后继续输入密钥:

应用程序>软件中心

编辑>软件来源…,输入密码

身份验证标签,点击’导入密钥文件…’

选择保存的密钥文件并点击’Ok’。

您现在可以删除以前创建的密钥文件。

第十种方案

好!我最终找到了路!

我测试了所有方法来修复GPG错误NO_PUBKEY,并且没有任何工作适合我。

我删除了/etc/apt/trusted.gpg.d文件夹的全部内容

cd /etc/apt/trusted.gpg.d
sudo rm -R *
sudo apt-get update

我使用Y-PPA-Manager方法,因为我懒得手动创建所有的pubkey(太多):http://www.unixmen.com/fix-w-gpg-error-no_pubkey-ubuntu/

再次运行sudo apt-get更新,最终所有工作都很好!坦克!

基于资料来源:https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1263540 上的#17后
参考资料

How do I fix the GPG error “NO_PUBKEY”?

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/111.html

[General]
#directory=target-rootfs
cleanup=true
noauth=true
unpack=true
debootstrap=Debian Net Utils
aptsources=Debian
noauth=true # GPG error

[Debian]
packages=apt kmod lsof
#source=https://mirrors.sjtug.sjtu.edu.cn/debian/
source=https://mirrors.tuna.tsinghua.edu.cn/debian/
keyring=debian-archive-keyring
suite=buster
components=main contrib non-free

[Net]
# Basic packages to enable the networking
packages=netbase net-tools ethtool udev iproute2 iputils-ping ifupdown isc-dhcp-client ssh
#source=https://mirrors.sjtug.sjtu.edu.cn/debian/
source=https://mirrors.tuna.tsinghua.edu.cn/debian/

[Utils]
# General purpose utilities
packages=locales adduser vim less wget dialog usbutils
#source=https://mirrors.sjtug.sjtu.edu.cn/debian/
source=https://mirrors.tuna.tsinghua.edu.cn/debian/

# sudo multistrap -a armel -d armel-rootfs -f multistrap.conf
# sudo multistrap -a armhf -d armhf-rootfs -f multistrap.conf

最近测试 lichee-pi zero v3s 发现插上以太网后,发热特别严重,一度怀疑设备树配置,驱动问题,最后觉得是不是芯片在使用内置 EPHY 后功率特别大导致,然而发现 HR911105A 的引脚也热的烫手,最后确认出现在硬件上。

通过对比 V3S 和 H3 Datasheet, 可以确定 v3s 和 H3 同属于 sun8i 系列,EMAC 和 EPHY 配置是兼容的,且默认使能 EPHY 且不需要配置 mii gpio 引脚,使用的专用 IO 口,通过 syscon 使能外设和时钟后即可,所以 emac 设备树可以直接采用 H3 的配置,并使用相同的以太网驱动, 可以共享主线 linux kernel H3 Ethernet 驱动。

lichee-zero dock 移除 L1, R8, R9, R10, R11

lichee-zero_ethernet.jpg

H3 Ethernet 原理部分,EPHY TX RX 引脚直连 CPU ,无任何上下拉电阻和电容。
NanoPi-M1.jpg