7.2.2 won't run in Linux Mint 18.1 / 7.2.0 installs partially and can't be removed with apt

I’m running Linux Mint 18.1 Mate 64-bit, which is Ubuntu-based (and therefore Debian-based), so I downloaded the .deb and it installed just fine manually (no trouble with dependencies or anything). When I went to start it up from the menu, nothing seemed to happen, so I tried running it from a terminal to see what was going on.

When I type in “tribler” and hit enter, I get the following lines:

Starting Tribler...
/usr/share/tribler ~

And then it goes straight back to the usual terminal prompt waiting for input - and Tribler is most definitely not an active process when I check, so it’s died that fast. What’s going on? Do I need to resort to running it in Wine (which is a pain when it comes to integrating where files are on the hard drive) or is there some easy fix?

EDIT: So I looked at the bug tracker and they suggested grabbing the version from Build Artifacts on Github and testing that, which was 7.2.0 - and this is what happened when I tried that:

  Downloading https://files.pythonhosted.org/packages/a7/cc/6355827ab12ac573c0647fcc79ba87d455a204ef17469d1e266ff3798957/lz4-2.1.6-cp27-cp27mu-manylinux1_x86_64.whl (360kB)
    100% |████████████████████████████████| 368kB 1.7MB/s 
Collecting future (from lz4)
  Downloading https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz (829kB)
    100% |████████████████████████████████| 829kB 1.5MB/s 
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    ImportError: No module named setuptools
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-cx2c_3/future/
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
dpkg: error processing package tribler (--install):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for desktop-file-utils (0.22-1ubuntu5.2) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for gconf2 (3.2.6-3ubuntu6) ...
Processing triggers for man-db (2.7.5-1) ...
Processing triggers for menu (2.1.47ubuntu1.16.04.1) ...

Is it safe to upgrade pip like that? (I’m not sure how I’d undo it if I do it and it turns out it messes something else up.) I’m not ready to upgrade to Mint 19 - the amount of work that takes… (even if there are no unpleasant surprises) 18’s a LTS release for Mint through April 2021, so there should be a way to run Tribler on it as it’s really not that outdated…

And now I can’t even uninstall it properly, see?

Removing tribler (7.2.0-exp1-648-g65d974cfa) ...
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Cannot uninstall requirement pony, not installed
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Cannot uninstall requirement lz4, not installed
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
dpkg: error processing package tribler (--remove):
 subprocess installed pre-removal script returned error exit status 1
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/USERNAME/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-o1Z0lL/pony/
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
The directory '/home/USERNAME/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/USERNAME/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting lz4
  Downloading https://files.pythonhosted.org/packages/a7/cc/6355827ab12ac573c0647fcc79ba87d455a204ef17469d1e266ff3798957/lz4-2.1.6-cp27-cp27mu-manylinux1_x86_64.whl (360kB)
    100% |████████████████████████████████| 368kB 2.6MB/s 
Collecting future (from lz4)
  Downloading https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz (829kB)
    100% |████████████████████████████████| 829kB 1.7MB/s 
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    ImportError: No module named setuptools
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-fBd87u/future/
You are using pip version 8.1.1, however version 19.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 tribler
E: Sub-process /usr/bin/dpkg returned an error code (1)

Argh, now what do I do? This should not happen. (I am not very impressed with it so far.)

EDIT: I think I managed to clear it using aptitude, but argh. Really not impressed with Tribler if it can bork things like that. And I definitely won’t be trying 7.2.0 again - or any other version, for that matter - unless someone knowledgeable can help me make sure that I won’t end up in dependency hell as a result.

Tribler is difficult to get running on Linux. It runs great in Windows though, and you can get the Windows version to run in Linux as well. If you have wine installed in your linux box, you can try the following:

Download the latest 32 bit windows version of Tribler.
Then in your Download directory type:

wine Tribler_7.2.2_x86.exe

The windows installer should run and should be installed in the following directory:
~/.wine/drive_c/Program\ Files\ (x86)/Tribler/

Also, an icon should then be installed automatically into your start menu. I tried this in OpenSuse, and it works great. As a bonus: because windows programs that are installed with wine are installed in the .wine directory, if you mess up, just delete the .wine directory and all traces are removed.

It’s sad to read the problems you faced trying out Tribler. Recently, we added two new pip dependencies (lz4 and pony) which are not available in Debian repository so we had to resort to install with pip during installation. It is a ugly hack we know and we are looking for a better solution.

If you use snap, you can try out snap build. It is not a stable release but it should be safe.
sudo snap install --beta tribler-bittorrent --devmode

Yeah, it’s one thing if an installation fails; it’s another if it actually borks the system. It’s fortunate that I was able to figure out how to use aptitude to rectify things, because apt was helpless.

I tried using snap for something else awhile back - couldn’t get it to work right, so afraid that’s out. (And I’m not desperate to try it badly enough to use Wine with it.)

I’ll wait to try Tribler until the installation can be guaranteed not to mess things up.