• js52: /usr/lib/libmozjs-52.so.0 exists in filesystem


    @manuel said in js52: /usr/lib/libmozjs-52.so.0 exists in filesystem:

    The --force option probably removed both before update (didn’t check that though).

    When files conflict during upgrade, there are two ways to solve the conflict:

    • delete existing files by hand before an upgrade
    • overwrite existing files automatically during upgrade

    Both methods are identical one to another. There are no differences.

    The --force option implements the second way.

  • Thanks for pointing this out, @just . Very useful to know.

  • I just performed the following:

    sudo rm -f /usr/lib/libmozjs-52.so.0
    

    Do I need to go back and remove the other file (as clean-up)? I already updated successfully, but I never deleted the 2nd file. Only the one above.

    Thanks in advance!

  • This post is deleted!
  • @fernandomaroto said in js52: /usr/lib/libmozjs-52.so.0 exists in filesystem:

    Some people recommend to rename the conflicting file

    I like the idea of having a backup, so in case of failture, it can be recovered very easily.
    I moved all files of those packet (just in case):

    for file in libmozjs-52.so*; do sudo mv $file ${file}.old; done
    

    But fortunately, things went well: After deleting I could update my packages and altough after rebooting the system, nothing was harmed :)

  • @th3dan said in js52: /usr/lib/libmozjs-52.so.0 exists in filesystem:

    I moved all files of those packet (just in case):…

    It was a bad decision. You’ve backed up two wrong files.

    The old js52 was not installed in a clean way. The package either changed a repo or something else has happened with it a time ago. Pacman was asking at that time, whether or not we want to install js52.

    After that three problems have arised:

    • the soname /usr/lib/libmozjs-52.so of the real shared library was incorrect. The correct soname of the library should be /usr/lib/libmozjs-52.so.0.

    • ldlinker has created the softlink with incorrect /usr/lib/libmozjs-52.so.0 name to a file with incorrect soname. The correct softlink name should be /usr/lib/libmozjs-52.so

    • the softlink with incorrect /usr/lib/libmozjs-52.so.0 name was not owned by the old js52 package. The file was created by ldlinker, not came out from the js52 package

    The new, upgraded js52 has corrected three errors:

    • the real shared library is correctly named /usr/lib/libmozjs-52.so.0
    • the softlink to it is correctly named /usr/lib/libmozjs-52.so
    • both library and softlink are owned by js52 package now
    $ ls -lh /usr/lib/libmozjs-52*
    lrwxrwxrwx 1 root root  16 May  4 18:13 /usr/lib/libmozjs-52.so -> libmozjs-52.so.0
    -rwxr-xr-x 1 root root 21M May  4 18:13 /usr/lib/libmozjs-52.so.0
    $
    

    You’d better delete your backups asap.

    The almighty pacman corrects all that stuff automagically, so that a user doesn’t required to know techy details:

    sudo pacman  -Sy --force --asdeps js52
    
  • @just Okay, seems like I misunderstood the main problem behind this issue. Thinking about it again after reading your post, it seems wrong to backup an already broken state 🙈

  • @th3dan said in js52: /usr/lib/libmozjs-52.so.0 exists in filesystem:

    …it seems wrong to backup an already broken state

    Exacttly. It’s what I was trying to explain.

  • The mistake was all mine, i gave a too generic procedure (which usually is good, but not in this case)

    Anyway we all should just have sticked with the answer from archlinux site.

    I’m sorry for the confusion and i’m glad you fixed everything @Th3Dan.

  • @karasu also worked for me. Thanks!

filesystem6 js525 exists4 Posts 30Views 21510
Log in to reply
Bloom Email Optin Plugin

Looks like your connection to Antergos Community Forum was lost, please wait while we try to reconnect.