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
mercurialand 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-divertat all to symlink thehgbinary 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 usinghgvia SSH I am afraid that there is a chance thehgbinary won't be found (Mercurial works by establishing an SSH tunnel and invokinghgto communicate viastd{in,err,out}with the client) ...
aptis 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