8

I just tried to install TortoiseHg after updating from Ubuntu 19.04 to Ubuntu 19.10 and I've got the following:

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

Is there at the moment any option of installing TortoiseHg except for building it on my own from sources?


Regarding the comment about possible duplicate of Installing TortoiseHg: need higher Mercurial version - it doesn't solve the issue.

Currently I'm using mercurial in version 4.8.2 which is the newest available in 19.10 without adding mercurial-ppa.

When I tried to add the mercurial-ppa, I've got the following error:

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.
machnic
  • 213
  • 1
    See also question for 20.04 https://askubuntu.com/questions/1232173/how-to-install-the-tortoisehg-in-ubuntu20-04/1266687 – Hamish Downer Aug 23 '20 at 20:40

2 Answers2

9

The latest version of TortoiseHg for Debian based OS is 4.8.1-0.1 (as per Debian search results). The same version is available in Ubuntu's pool of archives (and can be found by searching on Ubuntu Packages*) and the dependencies can still be satisfied in Eoan Ermine (19.10) without any extra work.

To install run:

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

*Thanks N0rbert for reminding to include the link.

Kulfy
  • 17,696
1

Kulfy's answer didn't work for me. In fact the wget line fails because the file doesn't exist. As of today, 4.5.2 is the latest tortoisehg version available for Ubuntu.

Here's how I did it in Ubuntu 20; it will probably work for 19, too. Note I am pulling from the "stable" branch, because it has fixes which are not in the main branch (as of today, e.g. shelf functionality is broken on main branch but is fixed on "stable".)

# 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

Now you can create a dock/desktop entry:

gedit ~/.local/share/applications/tortoisehg.desktop

and paste in these lines (replace "developer" with your username) :

[Desktop Entry]
Name=TortoiseHG
Exec=/home/developer/tortoisehg/thg
Comment=Launch TortoiseHG
Terminal=false
Type=Application
Icon=/home/developer/tortoisehg/icons/thg_logo.ico

Now you can hit the "Show Applications" button (the Start menu), search for Tortoise, and add it to favorites.

Jay
  • 131