Obsolete ncurses-compat-libs

ncurses-compat-libs package is needed by local but it’s an obsolete version.
Latest version of ncurses is ncurses-libs-6.3-3.20220501.fc37 which is installed but local is not proceeding to install

Steps to reproduce

Try to install Local-6.4.3 on fedora 36 and 37.

Environment Info

  • Fedora 36 and Fedora 37(Beta)
  • Local-6.4.3-linux.rpm

Supporting info

Below you can see I tried to install the libs by finding their rpm versions online. however they are old and obsolete version. Kindly fix this issue.

image

Thanks

Hello @aliasifabro - welcome to the Local Community! :wave:

This bug has been passed along to the Local development team and has been added to the backlog.

That said, in full transparency, Fedora is not a highly used operating system and other bugs and feature requests have a higher priority at this time.

We appreciate you so much here on the Local team, please do not hesitate to reach out with more questions or suggestions in the forums!

We’ll keep you updated on the status of this,

Thank you,

Sam :woman_technologist:t3:

Hi,

I’ve run into the same issue as @aliasifabro here. Is there any solution to this yet or is it being worked on?

Thanks

1 Like

I’m also looking for a fix for this.

@aliasifabro @secmurph @garrett If you install via yum or Fedora’s Software Installer, does that work for you?

Both methods also install/update dependencies on Fedora 36 in my tests.

Via yum

First, download the latest Local rpm from the Local releases page.

cd ~/Downloads
sudo yum localinstall local-6.6.0-linux.rpm

Or via Software Install

Either method results in Local running for me

@nickc Both methods give me the same error:

$ sudo yum localinstall local-6.6.0-linux.rpm 
Place your right index finger on the fingerprint reader
Fedora 37 - x86_64 - Updates                                         41 kB/s |  12 kB     00:00    
Fedora 37 - x86_64 - Updates                                        1.5 MB/s | 2.4 MB     00:01    
Fedora Modular 37 - x86_64 - Updates                                 97 kB/s |  23 kB     00:00    
Error: 
 Problem: conflicting requests
  - nothing provides ncurses-compat-libs needed by local-6.6.0-20221208.3.x86_64
(try to add '--skip-broken' to skip uninstallable packages)
1 Like

Thanks for trying that, @garrett!

It seems that rpm dropped the ncurses-compat-libs subpackage, which is why my suggestion to use yum works on Fedora 36 but not Fedora 37.

I’ll see if there are other workarounds or changes we can apply to Local to remove the rpm dependency on ncurses-compat-libs. A heads-up that a fix may be a little slower to test and deploy at this time of year. Thanks again for your reply and patience.

3 Likes

Late last week the Fedora team reinstated ncurses-compat-libs in Fedora 37 stable due to compatibility issues that removing it was causing.

I re-tested my steps above and Local 6.6 now runs for me on Fedora 36 and 37 (screenshots below).

I recommend trying to install again using yum or Software Installer as above. If anyone continues to encounter issues please let us know.

yum now resolves dependencies under Fedora 37

Local 6.6 running under Fedora 37

i can confirm that installing the ncurses-compat-libs for FC37 is allowing local to work now. Note that this should not close this issue as Fedora has clearly warned everyone now that this package will be going away so local needs to have this dependency removed and use the newer ncurses libraries.

@adsf1324 Thank you very much for testing and confirming it worked for you.

Note that this should not close this issue as Fedora has clearly warned everyone now that this package will be going away…

Agreed, and I will leave this thread open.

Local has a dependency on that package at the moment because the MySQL Generic Linux binary from mysql.com is linked to libncurses 5. I checked to see if we could correct this by updating the MySQL versions that Local makes available, but the latest MySQL (8.0.31) is still linked to libncurses 5 (screenshot below). Once that updates to link libncurses 6 or newer, Local could remove its dependency on ncurses-compat-libs (which provides libncurses 5).

The post reinstating ncurses-compat-libs suggests the package should be supported until at least Fedora 40, which is scheduled for release on 2024-04-16, giving MySQL some time to update its linked libraries. If that does not happen the Local team could look into compiling MySQL manually for Linux, shipping different binaries or missing libraries for each flavor of Linux, or providing another workaround.

Hopefully that helps to document why the dependency exists, and thanks again to all here for your patience while we looked into this.


Edit Jan 2024: MySQL 8.2 now links to libncurses6, so we expect this to be solved when Local updates to use that as the default MySQL service (no timeline yet, but on our radar).

3 Likes

i take it switching to mariadb for this is out of the question? they have already switch to libncurses.so.6

@adsf1324 Thanks for the suggestion. It’s not out of the question. Local currently uses MariaDB only where MySQL is not available (Windows 32-bit), for consistency with popular WP production environments and across the OSs Local supports, but that could change.