Contributions to MariaDB packaging are welcome! Just state your interest on the pkg-mysql-maint mailing list or send git pull requests directly.



* Complete Debian package listings: mariadb



5.5 Galera

10.0 Galera

10.1 (includes Galera WSREP consumer patches)

Galera package (WSREP provider)

MariaDB Connector C++ (LGPL version)

MariaDB Manager and Admin Tools


Ubuntu inherits packages from Debian:

Note that Ubuntu automatically also provides debug packages. For details see

As of the release of Debian 9, now also Debian provides debug packages. For details see:

Ubuntu micro release procedure (security update):

Binaries for public testing

The directory is browseable and there you can find build logs and both binary and source packages. Build logs have the git hash appended so it is possible to track build logs per commit.

Latest test packages can be installed after adding the sources.list line corresponding to your distro:

  # Debian unstable
  deb mariadb-10.1-sid-amd64/
  deb mariadb-10.1-sid-i386/

  deb mysql-defaults-sid-amd64/
  deb mysql-defaults-sid-i386/

  # Debian stable
  deb mariadb-10.0-jessie-amd64/
  deb mariadb-10.0-jessie-i386/

  # Ubuntu latest LTS
  deb mariadb-5.5-trusty-amd64/
  deb mariadb-5.5-trusty-i386/
  deb mariadb-10.0-xenial-amd64/
  deb mariadb-10.0-xenail-i386/

For a full list of available repositories, please browse

There is also a Launchpad page that provides public build logs and testable binaries via PPA repository. See (link to 10.0 - other series also available)

Building yourself

Basically you can just run gbp-clone --pristine-tar git:// to check out the code in all branches and then run git-buildpackage  --git-pristine-tar to build directly on your own computer, on with --git-pbuilder to use separate chroot environments for installing build dependencies and building. Without pbuilder you need to manually install the build dependencies with apt-get.

See more commands in script at

Also see the debian/README.Maintaner file inside the package.


Want to help out? See wishlist/TODO items at

Packaging background (historical info)

How MariaDB works

Regarding circular dependencies:

Regarding symbol and soname changes in MariaDB:

In the future it might be possible to run something like

   licensecheck --copyright -r . -c . | /usr/lib/cdbs/licensecheck2dep5 > /tmp/copyright

..but at the moment it does not work, so the license file is a hybrid with automation plus manual clean up.

Script license-reconcile can be used to lint the copyright file, but it cannot generate a correct file.

Related issue filed upstream:

Notes about security updates to stable releases

  1. Import latest upstream: git-import-orig --verbose --uscan --pristine-tar 1½. Review and clean up or document any upstream changes to debian/*.

  2. Refresh patches: while quilt push; do quilt refresh; done; quilt pop -a

  3. Update changelog with CVE entries from release notes or

  4. Commit, build locally and upload to to verify that the build and test suite is successful on multiple different architectures.

  5. If testing does not reveal regressions, make a signed tag with git tag -s debian/10.0.30-0+deb8u1 and push to git.

  6. Review once more the full diff or and separately just the debian/ directory changes, e.g. and

  7. Make again the final build with scripts that make sure the build is the latest git head and built using a clean stable release chroot OR build a source only package in any recent Debian environment.
  8. Create compressed debdiff: debdiff old/mariadb-10.0_10.0.29-0+deb8u1.dsc mariadb-10.0_10.0.30-0+deb8u1.dsc | xz > mariadb-10.0_10.0.29-0+deb8u1--10.0.30-0+deb8u1.debdiff.xz

  9. Send debdiff to security@ for review.
  10. Upload when given permission: dput security-master mariadb-10.0_10.0.30-0+deb8u1.dsc

See also