How to have both libcurl3 and libcurl4 installed at same time?
My favorite web brower depends on libcurl3 (Opera 36.0) But many apps depends on libcurl4 including PlayOnLinux or Steam client. It will be nice to have PlayOnLinux or Steam installed but I'm not giving up my favorite web browser. Do someone knows workaround how I can have installed both of them ? I readed somewhere that libcurl4 is based on libcurl3 so I have no idea why they keep uninstalling each other.
Solution 1:
Eventually, I found better, universal solution for this. A guy on internet created CURL version which supports both CURL3 and CURL4. Available via. PPA. So far it works good. Unfortunately, I'm sure this version of CURL is not well known despite it solves problem which is very common to all Ubuntu users. So, I have to ask to share this knowledge in any form you like or prefer
https://launchpad.net/~xapienz/+archive/ubuntu/curl34
Edit: If you're unable to install this because the Ubuntu canonical version takes priority, first check the version numbers like this:
$ apt-cache policy libcurl4
libcurl4:
Installed: 7.68.0-1ubuntu2.7
Candidate: 7.68.0-1ubuntu2.7
Version table:
*** 7.68.0-1ubuntu2.7 500
500 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
500 http://us.archive.ubuntu.com/ubuntu focal-security/main amd64 Packages
100 /var/lib/dpkg/status
7.68.0-1ubuntu2.5ppa1 500
500 http://ppa.launchpad.net/xapienz/curl34/ubuntu focal/main amd64 Packages
7.68.0-1ubuntu2 500
500 http://us.archive.ubuntu.com/ubuntu focal/main amd64 Packages
Then install the specific version like this:
$ sudo apt install libcurl4=7.68.0-1ubuntu2.5ppa1
Solution 2:
Looks like I totally over-brained it. I performed several steps and it works ! Thank you @guiverc , your "This is an alternative" brinks me idea of forcing program to accept libcurl3 or libcurl4
- Open terminal in temporary folder. Use
dpkg-deb -x /path/to/deb/file .
- Open control.tar.gz. Navigate to
./control
- Change line with dependency from
libcurl3
tolibcurl3 | libcurl4
- Run
dpkg-deb -b . name-of-new-deb-file.deb
- Now run
dpkg-deb -e path-to-deb-file-crated-in-step-4
- Package get installed using temporary folder as root folder.
- Create pentagram from small red colored stones. At full moon, sacrifice a goat with 666 stabs with knife while screaming "SUDO" at moon.
- Launch file browser as root and copy all folders and files from temporary folder to real folders (
temporary_folder/usr
to/usr
,temporary_folder/bin
to/bin
.etc) - All done, programm is installed.
I'm sure one of steps is not necessary but I don't know which one.