This page is outdated! For latest statuses, it is suggested to browse https://salsa.debian.org/mariadb-team

Milestones

Contribute

Please contribute by sending Merge Requests at https://salsa.debian.org/mariadb-team/mariadb-10.5

Old notes

Debian

* Complete Debian package listings: mariadb

5.5

10.0

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

Downstream

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 http://labs.seravo.fi/~otto/mariadb-repo/ 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 http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.1-sid-amd64/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.1-sid-i386/

  deb http://labs.seravo.fi/~otto/mariadb-repo/ mysql-defaults-sid-amd64/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mysql-defaults-sid-i386/

  # Debian stable
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.0-jessie-amd64/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.0-jessie-i386/

  # Ubuntu latest LTS
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-5.5-trusty-amd64/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-5.5-trusty-i386/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.0-xenial-amd64/
  deb http://labs.seravo.fi/~otto/mariadb-repo/ mariadb-10.0-xenail-i386/

For a full list of available repositories, please browse http://labs.seravo.fi/~otto/mariadb-repo/

There is also a Launchpad page that provides public build logs and testable binaries via PPA repository. See https://launchpad.net/~mysql-ubuntu/+archive/ubuntu/mariadb-10.0/+builds?build_text=&build_state=all (link to 10.0 - other series also available)

Building yourself

Basically you can just run gbp-clone --pristine-tar git://github.com/ottok/mariadb-X.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 http://labs.seravo.fi/~otto/mariadb-repo/build.sh

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

TODO

Want to help out? See wishlist/TODO items at https://bugs.debian.org/cgi-bin/pkgreport.cgi?repeatmerged=no&src=mariadb-10.1

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: https://mariadb.atlassian.net/browse/MDEV-5483

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 https://mariadb.com/kb/en/mariadb/security/

  4. Commit, build locally and upload to https://launchpad.net/~mysql-ubuntu/+archive/ubuntu/mariadb-10.0/+builds?build_text=&build_state=all 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. https://anonscm.debian.org/cgit/pkg-mysql/mariadb-10.0.git/diff/?id=debian/10.0.30-0%2bdeb8u1&id2=debian/10.0.29-0%2bdeb8u1 and https://anonscm.debian.org/cgit/pkg-mysql/mariadb-10.0.git/diff/debian/?id=debian/10.0.30-0%2bdeb8u1&id2=debian/10.0.29-0%2bdeb8u1

  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 https://www.debian.org/doc/manuals/developers-reference/ch05.en.html#bug-security