Latest PPA has conflicts with libsodium versions. #1545

Closed
maxolasersquad opened this Issue Feb 28, 2018 · 10 comments

Comments

Projects
None yet
7 participants

Expected Behavior

Should be able to install libsodium18 and libsodium23 pacakages.

Current Behavior

If a user already has libsodium18 installed, and has programs installed that depend on it, then upgrading fails. The PPA relies on libsodium23, which is also provided by the PPA.

Preparing to unpack .../libsodium23_1.0.16-0ppa3~xenial1_amd64.deb ...
Unpacking libsodium23:amd64 (1.0.16-0ppa3~xenial1) ...
dpkg: error processing archive /var/cache/apt/archives/libsodium23_1.0.16-0ppa3~xenial1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/libsodium.so.23.1.0', which is also in package libsodium18:amd64 1.0.16-0ppa1~xenial1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)

Steps to Reproduce (for bugs)

  1. On an Ubuntu 16.04 machine, install a program that relies on libsodium18. e.g openshot, bitcoint-qt
  2. Try to install keepassxc from the phoerious/keepassxc ppa.

Context

Debug Info

$ sudo apt install keepassxc
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libargon2-0 libgcrypt20-18 libgpg-error-127 libsodium23 libykpers-1-1 libyubikey0
Suggested packages:
  rng-tools
The following NEW packages will be installed:
  keepassxc libargon2-0 libgcrypt20-18 libgpg-error-127 libsodium23 libykpers-1-1 libyubikey0
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/3,520 kB of archives.
After this operation, 16.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Selecting previously unselected package libgpg-error-127:amd64.
(Reading database ... 365374 files and directories currently installed.)
Preparing to unpack .../libgpg-error-127_1.27-0ppa2~xenial1_amd64.deb ...
Unpacking libgpg-error-127:amd64 (1.27-0ppa2~xenial1) ...
Selecting previously unselected package libgcrypt20-18:amd64.
Preparing to unpack .../libgcrypt20-18_1.8.1-0ppa2~xenial1_amd64.deb ...
Unpacking libgcrypt20-18:amd64 (1.8.1-0ppa2~xenial1) ...
Selecting previously unselected package libargon2-0:amd64.
Preparing to unpack .../libargon2-0_20171227-2+really20161029-0ppa1~xenial1_amd64.deb ...
Unpacking libargon2-0:amd64 (20171227-2+really20161029-0ppa1~xenial1) ...
Preparing to unpack .../libsodium23_1.0.16-0ppa3~xenial1_amd64.deb ...
Unpacking libsodium23:amd64 (1.0.16-0ppa3~xenial1) ...
dpkg: error processing archive /var/cache/apt/archives/libsodium23_1.0.16-0ppa3~xenial1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/x86_64-linux-gnu/libsodium.so.23.1.0', which is also in package libsodium18:amd64 1.0.16-0ppa1~xenial1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Selecting previously unselected package libyubikey0.
Preparing to unpack .../libyubikey0_1.13-1_amd64.deb ...
Unpacking libyubikey0 (1.13-1) ...
Selecting previously unselected package libykpers-1-1:amd64.
Preparing to unpack .../libykpers-1-1_1.17.2-1_amd64.deb ...
Unpacking libykpers-1-1:amd64 (1.17.2-1) ...
Selecting previously unselected package keepassxc.
Preparing to unpack .../keepassxc_2.3.0-0ppa1~xenial1_amd64.deb ...
Unpacking keepassxc (2.3.0-0ppa1~xenial1) ...
Processing triggers for libc-bin (2.23-0ubuntu10) ...
Processing triggers for hicolor-icon-theme (0.15-0ubuntu1) ...
Processing triggers for shared-mime-info (1.5-2ubuntu0.1) ...
Processing triggers for gnome-menus (3.13.3-6ubuntu5.1~xenialubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160824-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for desktop-file-utils (0.22-1ubuntu5.1) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Errors were encountered while processing:
 /var/cache/apt/archives/libsodium23_1.0.16-0ppa3~xenial1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Operating system: Ubuntu64
CPU architecture: amd64
Kernel: 4.4.0-116-generic

This comment has been minimized.

Show comment Hide comment
@hifi

hifi Feb 28, 2018

Member

Yeah, the new or updated dependencies need to be installed in /opt as well to avoid any conflicts with other PPAs or repositories.

Member

hifi commented Feb 28, 2018

Yeah, the new or updated dependencies need to be installed in /opt as well to avoid any conflicts with other PPAs or repositories.

This comment has been minimized.

Show comment Hide comment
@phoerious

phoerious Feb 28, 2018

Owner

I assume you had the beta installed. Please reinstall libsodium18 and then try again.

Owner

phoerious commented Feb 28, 2018

I assume you had the beta installed. Please reinstall libsodium18 and then try again.

This comment has been minimized.

Show comment Hide comment
@repsorp

repsorp Feb 28, 2018

libsodium18 is already the newest version (1.0.16-0ppa1~xenial1)
same issue though

repsorp commented Feb 28, 2018

libsodium18 is already the newest version (1.0.16-0ppa1~xenial1)
same issue though

This comment has been minimized.

Show comment Hide comment
@bgottschall

bgottschall Feb 28, 2018

Just for those with the same problem, I've got mpv installed which depends on libsodium18. Remove libsodium-dev package and all of its reverse dependencies like mpv (keep them in mind because they are gone...). Then install keepassxc which will install libsodium23 and install again the removed packages. They will install libsodium18 without colliding with libsodium23.

Just for those with the same problem, I've got mpv installed which depends on libsodium18. Remove libsodium-dev package and all of its reverse dependencies like mpv (keep them in mind because they are gone...). Then install keepassxc which will install libsodium23 and install again the removed packages. They will install libsodium18 without colliding with libsodium23.

This comment has been minimized.

Show comment Hide comment
@phoerious

phoerious Feb 28, 2018

Owner

Please force a reinstall of libsodium18. You still have the version from our PPA, which does not exist anymore.

Owner

phoerious commented Feb 28, 2018

Please force a reinstall of libsodium18. You still have the version from our PPA, which does not exist anymore.

This comment has been minimized.

Show comment Hide comment
@bgottschall

bgottschall Feb 28, 2018

@phoerious no that doesn't work, it will say it can't download the package. I've tried.

@phoerious no that doesn't work, it will say it can't download the package. I've tried.

This comment has been minimized.

Show comment Hide comment
@phoerious

phoerious Feb 28, 2018

Owner

Try

apt install --reinstall libsodium18=1.0.8-5

Owner

phoerious commented Feb 28, 2018

Try

apt install --reinstall libsodium18=1.0.8-5

This comment has been minimized.

Show comment Hide comment
@repsorp

repsorp Feb 28, 2018

libsodium18:amd64 has been downgraded from 1.0.16-0ppa1~xenial1 to 1.0.8-5
Now keepasxc could install without error message

repsorp commented Feb 28, 2018

libsodium18:amd64 has been downgraded from 1.0.16-0ppa1~xenial1 to 1.0.8-5
Now keepasxc could install without error message

This comment has been minimized.

Show comment Hide comment
@MartNytrm

MartNytrm Feb 28, 2018

To work around it, I had to:

  1. first uninstall Keepassxc: sudo apt remove keepassxc

  2. just to get sure update apt cache: sudo apt update

  3. downgrade libsodium now: sudo apt install --reinstall libsodium18=1.0.8-5

  4. install Keepassxc again: sudo apt install keepassxc

Thanks to @phoerious

To work around it, I had to:

  1. first uninstall Keepassxc: sudo apt remove keepassxc

  2. just to get sure update apt cache: sudo apt update

  3. downgrade libsodium now: sudo apt install --reinstall libsodium18=1.0.8-5

  4. install Keepassxc again: sudo apt install keepassxc

Thanks to @phoerious

This comment has been minimized.

Show comment Hide comment
@scde

scde Feb 28, 2018

Hey,

there was a bug (#1513) with the PPA for a while where libsodium18 was falsely upgraded to a version which was actually libsodium23.
I presume that is the one you have installed right now (1.0.16-0ppa1~xenial1). To fix it downgrade libsodium18 to the version which the ubuntu repositories provide (1.0.8-5).
I think this command should work:

$ sudo apt install libsodium18=1.0.8-5

Now both versions should be installed:

$ ll /usr/lib/x86_64-linux-gnu/libsodium.so.*
lrwxrwxrwx 1 root root   19 Feb  6  2016 /usr/lib/x86_64-linux-gnu/libsodium.so.18 -> libsodium.so.18.0.1
-rw-r--r-- 1 root root 376K Feb  6  2016 /usr/lib/x86_64-linux-gnu/libsodium.so.18.0.1
lrwxrwxrwx 1 root root   19 Feb 24 22:52 /usr/lib/x86_64-linux-gnu/libsodium.so.23 -> libsodium.so.23.1.0
-rw-r--r-- 1 root root 1,9M Feb 24 22:52 /usr/lib/x86_64-linux-gnu/libsodium.so.23.1.0
$ apt policy libsodium18 libsodium23
libsodium18:
  Installed: 1.0.8-5
  Candidate: 1.0.8-5
  Version table:
 *** 1.0.8-5 500
        500 http://de.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status
libsodium23:
  Installed: 1.0.16-0ppa3~xenial1
  Candidate: 1.0.16-0ppa3~xenial1
  Version table:
 *** 1.0.16-0ppa3~xenial1 500
        500 http://ppa.launchpad.net/phoerious/keepassxc/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status

You could also set libsodium18 back to automatic so it does get picked up by autoremove correctly once it is no dependency any more. This command should do that:

$ sudo apt-mark auto libsodium18

Check if all is well with:

$ apt list -a libsodium18 libsodium23
Listing... Done
libsodium18/xenial,now 1.0.8-5 amd64 [installed,automatic]

libsodium23/xenial,now 1.0.16-0ppa3~xenial1 amd64 [installed,automatic]

scde commented Feb 28, 2018

Hey,

there was a bug (#1513) with the PPA for a while where libsodium18 was falsely upgraded to a version which was actually libsodium23.
I presume that is the one you have installed right now (1.0.16-0ppa1~xenial1). To fix it downgrade libsodium18 to the version which the ubuntu repositories provide (1.0.8-5).
I think this command should work:

$ sudo apt install libsodium18=1.0.8-5

Now both versions should be installed:

$ ll /usr/lib/x86_64-linux-gnu/libsodium.so.*
lrwxrwxrwx 1 root root   19 Feb  6  2016 /usr/lib/x86_64-linux-gnu/libsodium.so.18 -> libsodium.so.18.0.1
-rw-r--r-- 1 root root 376K Feb  6  2016 /usr/lib/x86_64-linux-gnu/libsodium.so.18.0.1
lrwxrwxrwx 1 root root   19 Feb 24 22:52 /usr/lib/x86_64-linux-gnu/libsodium.so.23 -> libsodium.so.23.1.0
-rw-r--r-- 1 root root 1,9M Feb 24 22:52 /usr/lib/x86_64-linux-gnu/libsodium.so.23.1.0
$ apt policy libsodium18 libsodium23
libsodium18:
  Installed: 1.0.8-5
  Candidate: 1.0.8-5
  Version table:
 *** 1.0.8-5 500
        500 http://de.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status
libsodium23:
  Installed: 1.0.16-0ppa3~xenial1
  Candidate: 1.0.16-0ppa3~xenial1
  Version table:
 *** 1.0.16-0ppa3~xenial1 500
        500 http://ppa.launchpad.net/phoerious/keepassxc/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status

You could also set libsodium18 back to automatic so it does get picked up by autoremove correctly once it is no dependency any more. This command should do that:

$ sudo apt-mark auto libsodium18

Check if all is well with:

$ apt list -a libsodium18 libsodium23
Listing... Done
libsodium18/xenial,now 1.0.8-5 amd64 [installed,automatic]

libsodium23/xenial,now 1.0.16-0ppa3~xenial1 amd64 [installed,automatic]

@phoerious phoerious added the not a bug label Feb 28, 2018

@phoerious phoerious closed this Feb 28, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment