YunoHost-Apps / wallabag2_ynh

Wallabag v2 package for YunoHost

Home Page:https://www.wallabag.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YNH Testing(11.0.4): Install Fails on Debian 11 - php7.4 issue ?

Beeblebrox-BSD opened this issue · comments

On a fresh install of YNH, upgraded to Testing, install for Wallabag2 fails.

  • Hardware: On-premise amd64
  • YunoHost version: 11.0.4 Testing
  • I have access to my server: All/Any
  • Are you in a special context or did you perform some particular tweaking on your YunoHost instance?: no
  • Using, or trying to install package version/branch: wallabag2_ynh

Steps to reproduce

Installed from web interface, then CLI
Process fails with
PHP Fatal error: Cannot redeclare mb_str_split() in /var/www/wallabag2/vendor/wallabag/php-mobi/MOBIClass/RecordFactory.php on line 119

Logs

https://paste.yunohost.org/raw/izonojerab

On a fresh install of YNH, upgraded to Testing

Does that mean you are running Debian 11 (Bullseye) instead of Debian 10 (Buster) ?

What php version is installed ? (you can look at the list of services from yunohost admin UI (or service php [press tab to autocomplete]) to see which phpX.X services are available)

Hi, thanks.

  1. Debian 11 (Bullseye) is the OS version (Linux 5.10.0-11-amd64 Debian 5.10.92-1)
  2. PHP is 7.4.28
  3. PHP packages on the system:
php-apcu-bc
php-common
php-mbstring
php-pear
php-php-gettext
php-xml
php7.4-apcu
php7.4-bcmath
php7.4-bz2
php7.4-cli
php7.4-common
php7.4-curl
php7.4-fpm
php7.4-gd
php7.4-gmp
php7.4-igbinary
php7.4-imagick
php7.4-imap
php7.4-intl
php7.4-json
php7.4-ldap
php7.4-mbstring
php7.4-mysql
php7.4-opcache
php7.4-readline
php7.4-redis
php7.4-soap
php7.4-sqlite3
php7.4-ssh2
php7.4-xml
php7.4-xmlrpc
php7.4-zip
php7.4

There were some php7.3 packages left over, I uninstalled them with apt and re-tried to install Wallabag2 but got the same result.

So that might be an issue with php7.4 used, instead with php7.3 (I believe that's the current version).
And it might be very important to fix this to be able to use Wallabag with Yunohost and Debian 11.

Yet… I don't understand how to fix that issue, and what is impacted (a dependency issue ?).

By the way @ericgaspar @yalh76 (as regular contributors) : do you know where do we define the php version ? I see some references to PHP_VERSION variable, but we define it nowhere 🤔
Does it default to php7.3 ? (Yunohost current default version I guess ?)

So that might be an issue with php7.4 used, instead with php7.3 (I believe that's the current version). And it might be very important to fix this to be able to use Wallabag with Yunohost and Debian 11.

Yet… I don't understand how to fix that issue, and what is impacted (a dependency issue ?).

By the way @ericgaspar @yalh76 (as regular contributors) : do you know where do we define the php version ? I see some references to PHP_VERSION variable, but we define it nowhere 🤔 Does it default to php7.3 ? (Yunohost current default version I guess ?)

You can define it in the _common file.
Default is php7.3 on buster but 7.4 on bullseye

Ok thank you.
So we could define it to be php7.3 on Debian 11 for the moment, but in the end it would be better to be ready to switch to php7.4, so to find a way to fix this issue…


So if we take a look at the required dependencies: https://github.com/YunoHost-Apps/wallabag2_ynh/blob/master/scripts/_common.sh#L8
And the list you gave us @Beeblebrox-BSD (thank you :)

I can see php7.x-tidy and php7.x-gettetxt are missing. Could you check if you can install these (using php7.4), and if wallabag install works in that case ?

I suppose they do not exist as they are not installed, so we might try to find a replacement or workaround if they are the origin if this bug…

Hi @lapineige,

Per request,

# apt list | grep gettext | grep php
php-php-gettext/stable,now 1.0.12-4 all [installed]
apt install php7.4-tidy php7.4-gettext
....
Note, selecting 'php7.4-common' instead of 'php7.4-gettext'
php7.4-common is already the newest version (7.4.28-1+deb11u1).
The following NEW packages will be installed:
  libtidy5deb1 php7.4-tidy

Install fails with same error :(

So they were installed ? 🤔

I'm out of idea…

Wallabag 2.4.3 - 2022-02-14
Also wallabag is now compatible with PHP 8.0 & 8.1 !

wouldn't an update fix the problem?

Fully updated system OS.
Install fails with same message / no change.

We would need to update to PHP 8.x, that might help with Debian 11 indeed, at least it would be future proof.
I just hope it's not too soon for other Yunohost app.

Maybe we will try this in a dedicated branch. Right now merging Wallabag 2.4.x version is not done yet #128, so we should not be hasty, we need testing with this migration first.

Ok

An option might be to Clone the repo into wallabag2_ynh-testing or something, and change the dependencies (packages) to php8.0 & for the only objective of testing whether the install works.

I just hope it's not too soon for other Yunohost app.

Converting to 8.x will require 2 different php versions on the OS (which is not something unusual), as I suspect many of the upstream code base repos for YunoHost-Apps have not yet converted to php8.x

Your call, of course...

An option might be to Clone the repo into wallabag2_ynh-testing

We can just make a new branch :), let's keep it simple.

Converting to 8.x will require 2 different php versions on the OS (which is not something unusual)

And is working fine know, I think, at least I see it on several of my Yunohost servers without any issue. I just wonder if that could cause some trouble, just in case 😅

But well, a separate branch ready for testing and that might give Debian 11 Yunohost tester the ability to keep their wallabag usable, that would be cool 🙂

We just need someone to tackle that job 🙂

#128 introduce php7.4 which should fix most Debian 11 compatibility issues.