我刚刚尝试从 Ubuntu 19.04 更新到 Ubuntu 19.10 后安装 TortoiseHg,得到以下信息:
sudo apt install tortoisehg
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package tortoisehg is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'tortoisehg' has no installation candidate
目前除了自己从源代码构建 TortoiseHg 之外,还有其他安装选项吗?
关于可能重复的评论安装 TortoiseHg:需要更高的 Mercurial 版本- 它不能解决问题。
目前我正在使用4.8.2
最新版本的 mercurial 19.10,没有添加 mercurial-ppa。
当我尝试添加 mercurial-ppa 时,出现以下错误:
sudo add-apt-repository ppa:mercurial-ppa/releases
See https://launchpad.net/~mercurial-ppa
More info: https://launchpad.net/~mercurial-ppa/+archive/ubuntu/releases
Press [ENTER] to continue or Ctrl-c to cancel adding it.
Ign:1 http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu eoan InRelease
Err:2 http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu eoan Release
404 Not Found [IP: 91.189.95.83 80]
Hit:3 http://security.ubuntu.com/ubuntu eoan-security InRelease
Hit:4 http://nl.archive.ubuntu.com/ubuntu eoan InRelease
Hit:5 http://nl.archive.ubuntu.com/ubuntu eoan-updates InRelease
Hit:6 https://repo.skype.com/deb stable InRelease
Hit:7 http://nl.archive.ubuntu.com/ubuntu eoan-backports InRelease
Ign:8 http://dl.google.com/linux/chrome/deb stable InRelease
Ign:9 http://dl.google.com/linux/earth/deb stable InRelease
Hit:10 http://dl.google.com/linux/chrome/deb stable Release
Hit:11 http://dl.google.com/linux/earth/deb stable Release
Hit:12 https://dl.winehq.org/wine-builds/ubuntu eoan InRelease
Reading package lists... Done
E: The repository 'http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu eoan Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
答案1
基于 Debian 操作系统的 TortoiseHg 最新版本是 4.8.1-0.1(根据Debian 搜索结果)。Ubuntu 的存档池中提供了相同的版本(可以通过搜索 Ubuntu 软件包*) 并且依赖关系仍然可以在 Eoan Ermine (19.10) 中得到满足,无需任何额外工作。
要安装运行:
wget http://ftp.us.debian.org/debian/pool/main/t/tortoisehg/tortoisehg_4.8.1-0.1_all.deb
sudo apt install ./tortoisehg_4.8.1-0.1_all.deb
答案2
Kulfy 的答案对我不起作用。事实上,wget 行失败是因为文件不存在。截至今天,4.5.2 是 Ubuntu 可用的最新 tortoisehg 版本。
这是我在 Ubuntu 20 中执行的操作;它可能也适用于 19。请注意,我从“稳定”分支中提取,因为它包含主分支中没有的修复(截至今天,例如,主分支上的 shelf 功能已损坏,但“稳定”分支上已修复)。
# make a folder to hold the tortoise source
mkdir ~/temp 2>/dev/null
cd ~/temp
# alias the python3 binary as python
sudo apt install python-is-python3
# now this should work, and return a 3.8.x version
python --version
# pip3 is needed to fulfill all the build dependencies
sudo apt install -y python3-pip build-essential
# install mercurial command line
sudo apt install -y mercurial
# pull tortoisehg source (stable branch)
# this no longer exists: hg clone https://bitbucket.org/tortoisehg/thg/ -r stable
# use this one instead:
hg clone https://foss.heptapod.net/mercurial/tortoisehg/thg -r stable
cd thg
pip3 install pyqt5
pip3 install mercurial
pip3 install qscintilla
sudo apt install -y pyqt5.qsci-dev
# install one more necessary package
sudo apt install -y python3-iniparse
# build it
make local
# move it to ~/tortoisehg (this is optional)
cd ~/temp
rm -rf ~/tortoisehg 2>/dev/null
mkdir ~/tortoisehg
mv thg/* ~/tortoisehg
现在您可以创建一个 dock/桌面条目:
gedit ~/.local/share/applications/tortoisehg.desktop
并粘贴以下行(将“developer”替换为您的用户名):
[Desktop Entry]
Name=TortoiseHG
Exec=/home/developer/tortoisehg/thg
Comment=Launch TortoiseHG
Terminal=false
Type=Application
Icon=/home/developer/tortoisehg/icons/thg_logo.ico
现在您可以点击“显示应用程序”按钮(开始菜单),搜索 Tortoise,然后将其添加到收藏夹。