This is an old revision of the document!
Build Debian MariaDB packages with readline support
I've been frustrated with the use of editline (libedit) instead of readline that MariaDB is now built with in Debian 11. I have found editline to be buggy: its implementation of Ctrl-R and editing of wrapped lines do not work well, plus Ctrl-W not being mapping to delete a word by default is infuriating!
As I understand it, Debian is no longer able to distribute MariaDB built against readline as the former is GPL2 and the latter GPL3, and apparently the 2 are incompatible for distribution.
The following instructions build a new Debian packages against readline:
apt install build-essential devscripts libreadline-dev apt build-dep mariadb-client-core-10.5 apt build-dep libreadline-dev su <unpriv user> apt source mariadb-client-core-10.5 cd mariadb-10.5-10.5.19/
For Bookworm:
apt install build-essential devscripts libreadline-dev apt build-dep mariadb apt build-dep readline su <unpriv user> apt source mariadb cd mariadb-10.11.6/
Edit debian/changelog
and add new line at top. Version number should be incremented by adding a letter on the end. E.g.
mariadb-10.5 (1:10.5.19-0+deb11u2c) bullseye; urgency=medium * Build against readline instead of libedit -- Andy Beverley <andy@andybev.com> Tue, 22 Aug 2023 14:08:00 +0100
Edit debian/control
and change:
libedit-dev, libedit-dev:native,
To
libreadline-dev, libreadline-dev:native,
Edit debian/rules
and add -DNOT_FOR_DISTRIBUTION=1
below -DWITH_INNODB_SNAPPY=ON
. Then run:
debuild -uc -us -b