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

Reply via email to