Hardware: VPS bought online YunoHost version: 3.6.5.2 I have access to my server : Through SSH + through the webadmin Are you in a special context or did you perform some particular tweaking on your YunoHost instance ? : yes If yes, please explain: I replaced the nameservers in /etc/resolv.dnsmasq.conf with Hetzner’s ones. I also added Hetzner’s mirrors in /etc/apt/sources.list.d.
Description of my issue
Hi !
I was checking my server’s upgrades this morning and I saw that the Sury repository is pushing the following upgrades :
I checked with the apt-cache policy and every upgrade (appart from the yunohost package) are provided by the Sury repository. It is quite worrying because, among the other upgrades, it would upgrade php-fm from the 7.0 version to the 7.3. I’m afraid these upgrades will break my server.
Is that something expected with the last yunohost package release ? Is someone else experiencing the same issue (I don’t know if it really is an issue, in fact) ?
Hmmm so first : do you think you have a good reason to have sury enabled ? This is only supposed to be there because of an application which requires PHP 7.1, 2 or 3 … (though there are quite a lot of them)
I really don’t know… The sury.list file has apparently been created (or modified…) yesterday at 08h07. I remember that I upgraded Nextcloud to the version 15.0.12~ynh1 around that time.
Hardware: old pc at home YNH version: 3.6.5.3 Access: full Special context / tweaking: none Apps: ttrss, piwigo, nextcloud, roundcube.
I did a routine system update/upgrade, then an app upgrade (the only app upgraded was Nextcloud), then other routine, morning update(s?) / upgrade(s?);
Nextcloud complained that php7.0-zip was not installed;
I manually "apt install"ed php7.0-zip (which came with dependencies), but the source of the package (blah sury.org blah: WTH?!?) caught my eye;
I read some posts about the dependency hell of pixelfed, which is not installed on my instance, but I have not understood everything;
58 packages (yes, fifty-eight) from this Sury repo are now installed on my instance, most of them related to php, but also openssl, libargon, libpcre, libssl, libsodium…
I am a bit worried about this repo mixture in my instance. Is there any way to come back to a pure Stretch/ynh blend? What should I do now, apart from suppressing sury.list?
Ouch… I had not realized that yunohost tools update and yunohost tools upgrade could be that dangerous…
Could you explain me why, considering the apps installed on my instance, the sources.lists had to be modified, which is something I really did not expect?
What was the wrong action? The manual php7.0-zip installation?
Has an apt install --reinstall on all the alien packages any chance to repair something?
EDIT: apt install --reinstall openssl is « […] impossible, il ne peut pas être téléchargé »…
TL;DR : system administration is a nightmare because it’s fragile as hell in its current paradigm.
That’s assuming there’s actually something broken … But right now you are just afraid that these packages broke something, which is not necessarily the case …
You could try to downgrade the packages if you really have to, but that’s a nightmare as well.
Just don’t fix stuff unless you really have indication that it’s actually broken …
Yes you should, otherwise you won’t receive any upgrade from Debian because the Sury’s package (now installed on your server) appear more “up to date” than those in Debian’s repo (because of the version number)
Also if an app needs new php dependecy not yet installed, it won’t be able to install them if you don’t have the sury repo (which a consequence of the previous paragraph, though not obvious, but if you dig into the technical details, that’s what happens, c.f. again the github issue if you want all the details…)
I don’t think so
Please no, again, don’t fix something that ain’t broken.
This not “contamination”, this is a “regular” situation in which you would end up if you installed any app that requires php 7.1, 7.2, or 7.3. It may sound dirty because you don’t have any such app installed, but if that ain’t causing any issue then that’s fine too…
I wish as much as you that this kind of stuff could be done without adding an external third-party repo (though managed by the same folk that manages the Debian php dependency, if i remember correctly), but this is what we have now. If you are interested in improving this, then we need humanpower to do some R&D to investigate and implement virtualenv-like solutions for PHP stuff, or (lol) YunoHost could try to migrate to a development cycle where we ship Debian testing by default or whatever. Or we should convince users and app developers to stop with the “brand new shinny stuff effect”. Or convince the Debian maintainers to stop with the “stable-but-old-as-fuck” strategy.
It will be the case even if you remove the Sury repo. Because now that the packages are installed, they are of version 7.0.33.10, compared to Debian’s packages which have version 7.0.33.0 (note the 10 vs. 0). So except if Debian suddently release a php package with version 7.0.33.X with X > 10, the package from Sury will still appear as more recent than Debian’s package … (even though some package may be actually newer, but what really matters is the version number …)
The only way would be to ask apt to downgrade the package, but this what we are really talking about would be to downgrade dozens of them, that’s not easy (though doable if you really wanted to …)
But keeping the Sury’s packages means that my instance will not benefit for the security updates offered by Debian/oldstable. This could be questionable, isn’t it?
And when Ynh will switch to Buster (;o), finger crossing might not be enough?
Yes and no, since the Sury repo also receive upgrades … since it’s a custom repo managed by a third party, - depending on that third party - upgrades in case of security stuff like what happened with the recent CVE can be slower or faster than Debian’s … My guess is that in the case of Sury it happens faster, but that’s really based on just a feeling.
Since the use of Sury is now so common, we’ll make sure to test what happens in such case
Hi @Aleks
For an update of a Yunohost App that needs PHP 7.1 I´m waiting and hoping since quid some time that Yunohost supports PHP 7.1 … when do you think this will be the case? or is there a workaround up to than? THANKS