[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 Iain Buclaw changed: What|Removed |Added Priority|P1 |P3 --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 Miles Lane changed: What|Removed |Added CC||miles.l...@gmail.com --- Comment #11 from Miles Lane --- gem install curb -v '0.9.10' also fails to install because of this issue. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 Pavlo Ivanchyshyn changed: What|Removed |Added Status|RESOLVED|REOPENED CC||p.ivanchys...@gmail.com Resolution|FIXED |--- --- Comment #10 from Pavlo Ivanchyshyn --- Well, I have `libcurl4-openssl-dev` and `libmediainfo-dev` packages as dependencies for my project. These packages can't be installed because of issue: libcurl4-gnutls-dev : Conflicts: libcurl4-openssl-dev but 7.58.0-2ubuntu3.5 is to be installed libcurl4-openssl-dev : Conflicts: libcurl4-gnutls-dev but 7.58.0-2ubuntu3.5 is to be installed apt install --fix-broken doesn't help. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #9 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/installer https://github.com/dlang/installer/commit/4790451e11f3891cf74efa54b9e1b2e29fd4eaa9 fix Issue 18649 - curl on Ubuntu 18.04 depends on libcurl4, ... ... .deb installer depends on libcurl3 - depend on libcurl4 | libcurl3 alternative - degrading libcurl from dependency to recommends would be welcome, but does not work because recommendations are not installed for raw .deb packages (--fix-broken only installs dependencies). `dpkg -i dmd_2.079.1-0_amd64.deb && apt-get --fix-broken install` - also add suggested libcurl-dev alternative https://github.com/dlang/installer/commit/8233177ccc37c4ca5e6a8cfdc39b0a06ece5b2d7 Merge pull request #318 from MartinNowak/test_pkg_install fix Issue 18649 - curl on Ubuntu 18.04 depends on libcurl4, ... --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 github-bugzi...@puremagic.com changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #8 from Alex Whitman--- I've given Martin's suggestion of using Recommends a go and it appears to work. The steps I took were: - Purge existing dmd installation - Upgrade curl, bringing in libcurl4, removing libcurl3 - Unpacked dmd_2.079.0-0_amd64.deb - Edited the control file with the changes to the Depends section and added the Recommends section. - Repacked the .deb - Installed the .deb The installation worked but I don't have anything that uses std.net.curl to test. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 Martin Nowakchanged: What|Removed |Added CC||c...@dawg.eu --- Comment #7 from Martin Nowak --- - The libcurl dependency should be demoted to recommended (installed by default) or suggested, atm. it's still a dependency. - It's confusing to see libcurl3 as dependency and libcurl4-openssl-dev as suggestion. https://github.com/dlang/installer/blob/47830a15d1a576b683c92b4bb4adc4a1d83a2b5d/linux/dmd_deb.sh#L347-L348 Has anyone ever succeeded to install that with `-o APT::Install-Suggests="true"` or `--install-suggests`? - It's a pity that debian doesn't have a meta-package for libcurl, but I'd research how other packages resolved this issue (libcurl-ocaml depends on libcurl3-gnutls while libcurl-ocaml-dev depends on libcurl4-gnutls-dev). - Use an alternative package name `libcurl4 | libcurl3` to support installations without libcurl4 availability. Assuming that all OSes with libcurl4 switch to that by default, otherwise you'd be back to the conflict. So how about: DEPENDS='libc6, libc6-dev, gcc, libgcc1, libstdc++6' RECOMMENDS='libcurl4 | libcurl3' SUGGESTS='libcurl4-openssl-dev, gcc-multilib' --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #6 from Seb--- An attempt at fixing it by simply making libcurl optional (it's only needed for std.net.curl) https://github.com/dlang/installer/pull/314 --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 greenifychanged: What|Removed |Added CC||greeen...@gmail.com --- Comment #5 from greenify --- The "official" deb ball is supposed to run on Debian too, so probably the only solution for a universal deb ball would be to drop the dependency on libcurl. It's only used for std.net.curl and dynamically loaded when needed. The d-apt registry should be able to set the dependency correctly though. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #4 from Alex Whitman--- My 18.04 install was done just before curl was moved to libcurl4 so for now I'm holding back the upgrade of those packages, meaning I was able to install the 2.079.0 deb. The solution might be as simple as changing the dependency to libcurl3 OR libcurl4 but I don't know the internals at all to know if that would work. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #3 from Seb--- BTW @Alex: as another an alternative until this is resolved, you might want to try the install script: https://dlang.org/install.html --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 --- Comment #2 from Seb--- Background info on the rename: https://launchpad.net/ubuntu/+source/curl/7.58.0-2ubuntu2 Rename libcurl3 to libcurl4, because libcurl exposes an SSL_CTX via CURLOPT_SSL_CTX_FUNCTION, and this object changes incompatibly between openssl 1.0 and openssl 1.1. --
[Issue 18649] curl on Ubuntu 18.04 depends on libcurl4, .deb installer depends on libcurl3
https://issues.dlang.org/show_bug.cgi?id=18649 Sebchanged: What|Removed |Added CC||greensunn...@gmail.com --- Comment #1 from Seb --- I was shocked a bit about this because I thought libcurl4 doesn't exist in Ubuntu and is currently only available in experimental in Debian: https://packages.debian.org/experimental/libcurl4 https://packages.ubuntu.com/search?keywords=libcurl=names=artful=all The binary library is called libcurl3 (the API/development packages is libcurl4-dev) https://askubuntu.com/questions/469360/what-is-the-difference-between-libcurl3-and-libcurl4 However, I tried this myself in Docker and I can reproduce this: --- root@84fd31deb36c:/# apt-get install libcurl3 Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt --fix-broken install' to correct these. The following packages have unmet dependencies: dmd : Depends: libc6-dev but it is not going to be installed Depends: gcc but it is not going to be installed libcurl3 : Depends: libssl1.0.0 (>= 1.0.2~beta3) but it is not going to be installed Conflicts: libcurl4 but 7.58.0-2ubuntu3 is to be installed libcurl4 : Conflicts: libcurl3 but 7.58.0-2ubuntu2 is to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). --- --- root@84fd31deb36c:/# apt-get install libcurl4 Reading package lists... Done Building dependency tree Reading state information... Done libcurl4 is already the newest version (7.58.0-2ubuntu3). libcurl4 set to manually installed. You might want to run 'apt --fix-broken install' to correct these. The following packages have unmet dependencies: dmd : Depends: libc6-dev but it is not going to be installed Depends: gcc but it is not going to be installed Depends: libcurl3 but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). --- At least it seems like dmd isn't the only application: https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1754294 BTW the file that creates the DEB ball is here: https://github.com/dlang/installer/blob/master/linux/dmd_deb.sh#L347 I'm not sure what's the best fix for this as libcurl4 doesn't exist in Debian (and the DEB ball is supposed to be general-purpose). --