I'm trying to get rid of the last Python 2.x bits on my Ubuntu 20.04 boxes and it turns out the mercurial
package is the culprit.
Having already had some negative experiences with the packaged version of Mercurial in the past, I though I could simply install python3-pip
and then do the sudo python3 -m pip install mercurial
routine.
The binary ends up in /usr/local/bin/hg
instead of /usr/bin/hg
, but I guess it's okay for most purposes.
Questions:
- should I have to expect any negative side-effects as long as I stay clear of packaged
mercurial
and friends (i.e. packages directly related to it)?- As an extension of this, should I use
equivs-build
(packageequivs
) to build myself a dummy that will artificially conflict withmercurial
?
- As an extension of this, should I use
- can I use
dpkg-divert
at all to symlink thehg
binary into the well-known path (/usr/bin/hg
)? Or will this only actually work if my dummy package takes care of it? Since I am usinghg
via SSH I am afraid that there is a chance thehg
binary won't be found (Mercurial works by establishing an SSH tunnel and invokinghg
to communicate viastd{in,err,out}
with the client) ...
apt
is a sore spot (subverts my aim to use Ansible for as many aspects of system configuration as possible). And making this package source known to Ubuntu 20.04, while possible (pinning and all), is anything but desirable. Since I am also maintaining a Mercurial extension, I can live with having Mercurial installed "outside of the package manager". But installing a package from Debian experimental and doing it from this source seems a bit too risky for my taste. But thanks for the pointer. – 0xC0000022L Jul 17 '20 at 14:17