Let’s skip Debian version code names then , so you mean you upgraded from Debian 10 to Debian 11, I guess? cat /etc/debian_version reveals the version string. While it usually works well, this indeed can cause the need for some tinkering, like updating some config files manually and so on. We try to catch all known issues and extend our HowTo about this upgrade accordingly, but for distro upgrades there is no guarantee that they go through without any issue, which is the reason why we clearly recommend to flash a new image instead, when the upgrade is needed, and why many other distros simply don’t support it, i.e. don’t offer help for distro upgrades or support for system after an upgrade. On Debian, it simply means that packages get major version upgrades, which by definition mean backwards incompatibility, possibly with configs and also stored software data .
However, we faced a similar high (and in the long term higher) number of issues related to outdated distro versions compared to upgraded distros, so we decided to support and provide a HowTo for best practice and to cover all issues we know or get reports about. In case of Debian 10, it is however not required to do that, as we support it for at least another 1.5 years, I hope our info “campaign” didn’t give a false impression .
/etc/pihole/setupVars.conf shouldn’t be touched by DietPi or Debian updates/upgrades . Can you show it, masking private IP/hostname info? It is mostly used by the installer/updater only, if there are duplicate entries, it is safe to remove them manually and leave one with the wanted setting. Since duplicates shouldn’t be created in the first place, you may indeed want to report this to Pi-hole forum or GitHub. Feel free to ping me @MichaIng in both cases.
So you are on Debian 9 (Stretch)? Always install PHP modules with the version string, else it may pull a totally different PHP version, especially on Stretch where PHP7.3 is installed from Ondrej’s PHP repository, the Debian PHP package maintainer which ships newer PHP versions for older Debian versions with a dedicated package repository. Otherwise Stretch would ship PHP7.0 only, which isn’t supported anymore by a lot of web applications. The package php-sqlite3, I guess, pulled PHP8.1, while the webserver is configured to use PHP7.3. You can cleanup the unneeded/doubled PHP instance with:
It hence makes sense that installing the versioned SQLite module worked. I’m just wondering why it wasn’t installed in the first place, as dietpi-software of course does that, the Pi-hole installer else would do by itself . Generally, safest to repair Pi-hole, webserver, PHP and database setup is a reinstall:
dietpi-software reinstall 31
This preserves all data and configs but assures that all dependencies are (re)installed and, in case, components repaired.