不只是安装software-properties-common那么简单……
问题
目前Deepin系统版本为15.11,貌似在15.10时切到了Debain的软件仓库,而不再是Ubuntu了,虽说比较稳定,但还不够新,比如git,版本就没有官方的新。
于是我尝试 git官方的办法:
sudo add-apt-repository ppa:git-core/ppa
报错,提示未找到命令。
解决
这个问题在网上搜搜办法,很多回答都是让安装一个包:
sudo apt-get install software-properties-common
是的,确实解决了 add-apt-repository 命令找不到的问题,但实际add仓库源时,还是会出错,你可能会看到如下内容:
Traceback (most recent call last):
File “/usr/bin/add-apt-repository”, line 95, in
sp = SoftwareProperties(options=options)
File “/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py”, line 109, in init
self.reload_sourceslist()
File “/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py”, line 599, in reload_sourceslist
self.distro.get_sources(self.sourceslist)
File “/usr/lib/python3/dist-packages/aptsources/distro.py”, line 93, in get_sources
(self.id, self.codename))
aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Deepin/stable
很尴尬啊兄弟!看这个报错就大概明白,还是因为Deepin/stable不适用这种三方ppa导致的。
我可不想就此放弃,经过一番仔细搜寻,找到一个大佬的解决办法:
-
编辑lsb-release文件:
sudo deepin-editor /etc/lsb-release
-
把已有内容的每行头加#注释掉,添加Ubuntu相关的内容:
# DISTRIB_ID=Deepin # DISTRIB_RELEASE="15.11" # DISTRIB_DESCRIPTION="Deepin 15.11 " # DISTRIB_CODENAME=stable DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS" DISTRIB_CODENAME=trusty
-
此时再试试 sudo add-apt-repository ppa:git-core/ppa 看看,却报了另一个错:
The most current stable version of Git for Ubuntu.
For release candidates, go to https://launchpad.net/~git-core/+archive/candidate .
More info: https://launchpad.net/~git-core/+archive/ubuntu/ppa
Press [ENTER] to continue or ctrl-c to cancel adding itgpg: keybox ‘/tmp/tmprpx7ycut/pubring.gpg’ created
gpg: failed to start the dirmngr ‘/usr/bin/dirmngr’: 没有那个文件或目录
gpg: connecting dirmngr at ‘/tmp/tmprpx7ycut/S.dirmngr’ failed: 没有那个文件或目录
gpg: keyserver receive failed: No dirmngr -
不要慌,他说没有dirmngr,我们就安一个:
sudo apt-get install dirmngr
最后再add仓库ppa就不会报错了。
搞定之后,就能顺利安装最新的git:
sudo apt-get update
sudo apt-get install git