summaryrefslogtreecommitdiff
path: root/community/mariadb
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-08-04 00:02:16 +0000
committerroot <root@rshg054.dnsready.net>2012-08-04 00:02:16 +0000
commitf8ac5d4703080cc87ba2fe36f68df745d3a5f62f (patch)
tree641ccb335800a868031ab1d89d554e5c1b0f0d9a /community/mariadb
parent60f7eab28ba0dd57c8ce519609f393dd3931b621 (diff)
Sat Aug 4 00:02:16 UTC 2012
Diffstat (limited to 'community/mariadb')
-rw-r--r--community/mariadb/PKGBUILD15
-rwxr-xr-xcommunity/mariadb/rc.d77
-rw-r--r--community/mariadb/service21
-rw-r--r--community/mariadb/tmpfiles.conf1
4 files changed, 109 insertions, 5 deletions
diff --git a/community/mariadb/PKGBUILD b/community/mariadb/PKGBUILD
index 39a7feba4..c464a1a9b 100644
--- a/community/mariadb/PKGBUILD
+++ b/community/mariadb/PKGBUILD
@@ -1,19 +1,21 @@
-# $Id: PKGBUILD 74223 2012-07-23 03:08:05Z allan $
+# $Id: PKGBUILD 74694 2012-08-02 08:13:12Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
pkgbase=mariadb
pkgname=('libmariadbclient' 'mariadb-clients' 'mariadb')
pkgver=5.5.25
-pkgrel=2
+pkgrel=3
arch=('i686' 'x86_64')
license=('GPL')
url="http://mariadb.org/"
makedepends=('cmake' 'openssl' 'zlib')
options=('!libtool')
source=(http://mirrors.supportex.net/$pkgbase/$pkgbase-$pkgver/kvm-tarbake-jaunty-x86/$pkgbase-$pkgver.tar.gz
- mysqld)
+ service rc.d tmpfiles.conf)
md5sums=('943f67c267d73a4080ab497e11740daf'
- '3bb5a9a96340feb0184bc057ee6e330b')
+ '9e7aa0fa646f48662df569259061fcef'
+ '3bb5a9a96340feb0184bc057ee6e330b'
+ '32f30449d3111714fe190931d08fdb8c')
build() {
cd "${srcdir}"
@@ -113,7 +115,10 @@ package_mariadb() {
make DESTDIR="${pkgdir}" install
install -Dm644 "${pkgdir}"/usr/share/mysql/my-medium.cnf "${pkgdir}"/etc/mysql/my.cnf
- install -Dm755 "${srcdir}"/mysqld "${pkgdir}"/etc/rc.d/mysqld
+ install -Dm755 "${srcdir}"/rc.d "${pkgdir}"/etc/rc.d/mysqld
+
+ install -Dm644 "${srcdir}"/service "${pkgdir}"/usr/lib/systemd/system/mysql.service
+ install -Dm644 "${srcdir}"/tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/mysql.conf
# provided by libmariadbclient
rm "${pkgdir}"/usr/bin/{mysql_config,mysql_client_test_embedded,mysqltest_embedded}
diff --git a/community/mariadb/rc.d b/community/mariadb/rc.d
new file mode 100755
index 000000000..e9fe8f5a8
--- /dev/null
+++ b/community/mariadb/rc.d
@@ -0,0 +1,77 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+getPID() {
+ echo $(pgrep -u mysql mysqld 2>/dev/null);
+}
+
+case "$1" in
+ start)
+ stat_busy "Starting MariaDB Server"
+ [ ! -d /var/run/mysqld ] && install -d -g mysql -o mysql /var/run/mysqld &>/dev/null
+ if [ -z "$(getPID)" ]; then
+ /usr/bin/mysqld_safe --user=mysql &>/dev/null &
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ else
+ timeo=30
+ while [ $timeo -gt 0 ]; do
+ response=`/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1` && break
+ echo "$response" | grep -q "mysqld is alive" && break
+ sleep 1
+ let timeo=${timeo}-1
+ done
+ if [ $timeo -eq 0 ]; then
+ stat_fail
+ exit 1
+ else
+ echo $(getPID) > /var/run/mysqld/mysqld.pid
+ add_daemon mysqld
+ stat_done
+ fi
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+
+ stop)
+ stat_busy "Stopping MariaDB Server"
+ if [ ! -z "$(getPID)" ]; then
+ timeo=30
+ kill $(getPID) &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ exit 1
+ fi
+ while [ ! -z "$(getPID)" -a $timeo -gt 0 ]; do
+ sleep 1
+ let timeo=${timeo}-1
+ done
+ if [ -z "$(getPID)" ]; then
+ rm -f /var/run/mysqld/mysqld.pid &>/dev/null
+ rm_daemon mysqld
+ stat_done
+ else
+ stat_fail
+ exit 1
+ fi
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community/mariadb/service b/community/mariadb/service
new file mode 100644
index 000000000..1b3a50082
--- /dev/null
+++ b/community/mariadb/service
@@ -0,0 +1,21 @@
+[Unit]
+Description=MariaDB database server
+After=syslog.target network.target
+
+[Service]
+User=mysql
+Group=mysql
+
+ExecStart=/usr/bin/mysqld --pid-file=/var/run/mysqld/mysqld.pid
+ExecStop=/bin/kill -15 $MAINPID
+PIDFile=/var/run/mysqld/mysqld.pid
+WorkingDirectory=/usr
+
+# We rely on systemd, not mysqld_safe, to restart mysqld if it dies
+Restart=always
+
+# Place temp files in a secure directory, not /tmp
+PrivateTmp=true
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/mariadb/tmpfiles.conf b/community/mariadb/tmpfiles.conf
new file mode 100644
index 000000000..74cd5f836
--- /dev/null
+++ b/community/mariadb/tmpfiles.conf
@@ -0,0 +1 @@
+d /var/run/mysqld 0755 mysql mysql -