Control: reassign -1 src:mariadb Control: tags -1 patch Dear Otto, et al,
Thank you for your comments! Untested patch for the "mysql.user table already exists!" error is attached. Regarding the "mariadb.service changed on disk" warning, I think it should be handled by dh_installsystemd. This part of the rules file seems correct, but I am no expert: 212 # Define name used for service, and install mariadb.service on Linux only 213 override_dh_installsystemd: 214 ifneq (,$(filter linux,$(DEB_HOST_ARCH_OS))) 215 dh_installsystemd -pmariadb-server mariadb.service 216 endif Thank you! Daniel Lewart Urbana, Illinois
diff -ru a/mariadb-server.postinst b/mariadb-server.postinst --- a/mariadb-server.postinst 2025-06-08 03:19:07.000000000 -0500 +++ b/mariadb-server.postinst 2025-07-05 00:00:00.000000000 -0500 @@ -183,20 +183,23 @@ touch "$mysql_datadir/debian-__MARIADB_MAJOR_VER__.flag" # initiate databases. Output is not allowed by debconf :-( - # This will fail if we are upgrading an existing database; in this case + # This will skip if we are upgrading an existing database; in this case # mariadb-upgrade, called from the /etc/mysql/debian-start script, will # handle things. # Debian: beware of the bashisms... # Debian: can safely run on upgrades with existing databases # Workaround for Debian Bug #1022994: failure to create database when # working with libpam-tmpdir (by setting TMPDIR to empty value). - set +e - TMPDIR='' bash /usr/bin/mariadb-install-db \ - --rpm --cross-bootstrap \ - --user=mysql --disable-log-bin \ - --skip-test-db 2>&1 | - $ERR_LOGGER - set -e + if [ ! -f "$mysql_datadir/mysql/user.frm" ] + then + set +e + TMPDIR='' bash /usr/bin/mariadb-install-db \ + --rpm --cross-bootstrap \ + --user=mysql --disable-log-bin \ + --skip-test-db 2>&1 | + $ERR_LOGGER + set -e + fi # On new installations root user can connect via unix_socket. # But on upgrades, scripts rely on debian-sys-maint user and