Changeset: b001c435de29 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b001c435de29
Added Files:
        debian/monetdb5-sql.README.Debian
        debian/python3-monetdb.install
        debian/source/format
Modified Files:
        debian/control
        debian/monetdb-testing-python.install
        debian/monetdb5-server.install
        debian/monetdb5-sql.default
        debian/monetdb5-sql.dirs
        debian/monetdb5-sql.init.d
        debian/python-monetdb.install
        debian/rules
Branch: default
Log Message:

switched to debhelper, python3 deb packages, changed deb init script


diffs (258 lines):

diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -5,9 +5,14 @@ Maintainer: MonetDB BV <i...@monetdb.org
 Homepage: http://www.monetdb.org/
 Vcs-Browser: http://dev.monetdb.org/hg/MonetDB/
 Vcs-Hg: http://dev.monetdb.org/hg/MonetDB/
-Build-Depends: debhelper (>= 5), autotools-dev, cdbs, bison, flex, libbz2-dev, 
libcurl4-gnutls-dev, libgeos-dev, libpcre3-dev, libreadline-gplv2-dev, 
libssl-dev, libxml2-dev, perl, python, ruby, rubygems, unixodbc-dev, uuid-dev, 
zlib1g-dev
+Build-Depends: debhelper (>= 5), autotools-dev, bison, flex, libbz2-dev,
+ libcurl4-gnutls-dev, libgeos-dev, libpcre3-dev,
+ libreadline-gplv2-dev|libreadline-dev, libssl-dev, libxml2-dev, perl,
+ python, ruby, rubygems, unixodbc-dev, uuid-dev, zlib1g-dev, python3
 # Build-Depends: libraptor1-dev
 Standards-Version: 3.8.0
+X-Python-Version: >= 2.6
+X-Python3-Version: >= 3.0
 
 Package: libmonetdb6
 Architecture: any
@@ -240,13 +245,23 @@ Description: MonetDB testing Python prog
 
 Package: python-monetdb
 Architecture: all
-Depends: ${shlibs:Depends}, ${misc:Depends}, python
+Depends: ${python:Depends}, ${misc:Depends}
 Description: Native MonetDB client Python API
  MonetDB is a database management system that is developed from a
  main-memory perspective with use of a fully decomposed storage model,
  automatic index management, extensibility of data types and search
  accelerators.  It also has an SQL frontend.
  .
- This package contains the files needed to use MonetDB from a Python
- program.
+ This package contains the files needed to use MonetDB with python.
 
+Package: python3-monetdb
+Architecture: all
+Depends: ${python3:Depends}, ${misc:Depends}
+Description: Native MonetDB client Python API
+ MonetDB is a database management system that is developed from a
+ main-memory perspective with use of a fully decomposed storage model,
+ automatic index management, extensibility of data types and search
+ accelerators.  It also has an SQL frontend.
+ .
+ This package contains the files needed to use MonetDB with Python3.
+
diff --git a/debian/monetdb-testing-python.install 
b/debian/monetdb-testing-python.install
--- a/debian/monetdb-testing-python.install
+++ b/debian/monetdb-testing-python.install
@@ -1,4 +1,4 @@
 debian/tmp/usr/bin/Mapprove.py usr/bin
 debian/tmp/usr/bin/Mfilter.py usr/bin
 debian/tmp/usr/bin/Mtest.py usr/bin
-debian/tmp/usr/lib/python2.6/dist-packages/MonetDBtesting/* 
usr/lib/python2.6/dist-packages/MonetDBtesting
+debian/tmp/usr/lib/python2.*/*-packages/MonetDBtesting/*
diff --git a/debian/monetdb5-server.install b/debian/monetdb5-server.install
--- a/debian/monetdb5-server.install
+++ b/debian/monetdb5-server.install
@@ -9,7 +9,7 @@ debian/tmp/usr/lib/monetdb5/lib_vault.so
 debian/tmp/usr/lib/monetdb5/aggr.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/alarm.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/algebra.mal usr/lib/monetdb5
-debian/tmp/usr/lib/monetdb5/algebraExtensions.mal usr/lib/monetdb5
+#debian/tmp/usr/lib/monetdb5/algebraExtensions.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/array.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/attach.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/bat*.mal usr/lib/monetdb5
@@ -17,7 +17,7 @@ debian/tmp/usr/lib/monetdb5/bbp.mal usr/
 debian/tmp/usr/lib/monetdb5/blob.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/box.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/calc.mal usr/lib/monetdb5
-debian/tmp/usr/lib/monetdb5/chopper.mal usr/lib/monetdb5
+#debian/tmp/usr/lib/monetdb5/chopper.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/clients.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/cluster.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/color.mal usr/lib/monetdb5
@@ -54,7 +54,7 @@ debian/tmp/usr/lib/monetdb5/sabaoth.mal 
 debian/tmp/usr/lib/monetdb5/sample.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/sema.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/srvpool.mal usr/lib/monetdb5
-debian/tmp/usr/lib/monetdb5/statistics.mal usr/lib/monetdb5
+#debian/tmp/usr/lib/monetdb5/statistics.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/status.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/str.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/streams.mal usr/lib/monetdb5
diff --git a/debian/monetdb5-sql.README.Debian 
b/debian/monetdb5-sql.README.Debian
new file mode 100644
--- /dev/null
+++ b/debian/monetdb5-sql.README.Debian
@@ -0,0 +1,23 @@
+
+Usage
+=====
+
+There are multiple ways to use MonetDB5-sql, but this is the most Debianic.
+
+ * Set STARTUP to "yes" in /etc/default/monetdb5-sql
+
+ * Start MonetDB::
+ 
+   $ sudo /etc/init.d/monetdb5-sql start
+
+ * Add yourself to the "monetdb" group::
+
+   $ sudo addgroup `whoami` monetdb
+
+ * Now you can create and destroy databases with the "monetdb" command::
+
+   $ monetdb create test
+   $ monetdb release test
+   $ monetdb start test
+   $ mclient test
+
diff --git a/debian/monetdb5-sql.default b/debian/monetdb5-sql.default
--- a/debian/monetdb5-sql.default
+++ b/debian/monetdb5-sql.default
@@ -9,4 +9,4 @@ STARTUP="no"
 START_ALL_DBS="no"
 
 # the database farm where databases are kept
-DBFARM=/var/monetdb5/dbfarm
+DBFARM=/var/lib/monetdb
diff --git a/debian/monetdb5-sql.dirs b/debian/monetdb5-sql.dirs
--- a/debian/monetdb5-sql.dirs
+++ b/debian/monetdb5-sql.dirs
@@ -1,2 +1,1 @@
-/var/log/monetdb
-/var/run/monetdb
+/var/lib/monetdb
diff --git a/debian/monetdb5-sql.init.d b/debian/monetdb5-sql.init.d
--- a/debian/monetdb5-sql.init.d
+++ b/debian/monetdb5-sql.init.d
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/bash
 ### BEGIN INIT INFO
 # Provides:          mserver5-sql
 # Required-Start:    $remote_fs $syslog
@@ -18,23 +18,28 @@ test -x $DAEMON || exit 0
 
 umask 022
 
-LOGDIR=/var/log/monetdb
-PIDFILE=/var/run/monetdb/merovingian.pid
-
 # Include monetdb5-sql defaults if available
 if [ -f /etc/default/monetdb5-sql ] ; then
     . /etc/default/monetdb5-sql
 fi
 
+PIDFILE=${DBFARM}/merovingian.pid
+
 set -e
 
 init() {
-    if [ ! -d /var/run/monetdb ]; then
-        mkdir /var/run/monetdb
+    if [ ! -d ${DBFARM} ]; then
+        mkdir ${DBFARM}
+               echo "${DBDARM} doesn't exists, creating..."
     fi
-    chown -R monetdb.monetdb /var/run/monetdb
-    chmod 775 /var/run/monetdb
-    rm -f /var/run/monetdb/*
+
+       chown -R monetdb.monetdb ${DBFARM}
+       chmod 770 ${DBFARM}
+
+       if [ ! -f ${DBFARM}/.merovingian_properties ]; then
+               echo "${DBDARM} not initialized, initializing..."
+               sudo -u monetdb ${DAEMON} create ${DBFARM} || exit 1
+       fi
 }
 
 running_pid() {
@@ -79,20 +84,17 @@ case "$1" in
             echo " ERROR, $NAME didn't start"
         fi
 
-        # TODO: this can be removed when fabian fixes the socket permission bug
-        sleep 3
-        chmod g+rw /var/monetdb5/dbfarm/.merovingian_*
-        chmod g+rx /var/monetdb5/dbfarm
-
         if [ "$START_ALL_DBS" = "yes" ]; then
-             /bin/su -c "/usr/bin/monetdb start -a" -s /bin/bash monetdb
+             sudo -u monetdb "/usr/bin/monetdb start -a"
         fi
         ;;
   stop)
         if running ;  then
             echo -n "Stopping $DESC: "
-            start-stop-daemon --stop --pidfile $PIDFILE --exec $DAEMON
+            start-stop-daemon --stop --pidfile $PIDFILE --exec $DAEMON -c 
monetdb:monetdb -- stop ${DBFARM}
             echo "$NAME."
+               else
+                       echo "$NAME not running (${PIDFILE}."
         fi
         ;;
   restart)
diff --git a/debian/python-monetdb.install b/debian/python-monetdb.install
--- a/debian/python-monetdb.install
+++ b/debian/python-monetdb.install
@@ -1,2 +1,2 @@
-debian/tmp/usr/lib/python2.6/dist-packages/monetdb 
usr/lib/python2.6/dist-packages
-debian/tmp/usr/lib/python2.6/dist-packages/python_monetdb-*.egg-info 
usr/lib/python2.6/dist-packages
+debian/tmp/usr/lib/python2.*/*-packages/monetdb/*
+debian/tmp/usr/lib/python2.*/*-packages/python_monetdb-*.egg-info
diff --git a/debian/python3-monetdb.install b/debian/python3-monetdb.install
new file mode 100644
--- /dev/null
+++ b/debian/python3-monetdb.install
@@ -0,0 +1,2 @@
+debian/tmp/usr/lib/python3/*-packages/monetdb/*
+debian/tmp/usr/lib/python3/*-packages/python_monetdb-*.egg-info
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -1,9 +1,12 @@
 #!/usr/bin/make -f
 
-include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/class/autotools.mk
+DH_VERBOSE=1
 
-DEB_CONFIGURE_EXTRA_FLAGS := \
+%:
+       dh $@ --parallel --with python2,python3
+
+override_dh_auto_configure:
+       dh_auto_configure -- \
        --enable-assert=no \
        --enable-console=yes \
        --enable-datacell=no \
@@ -42,4 +45,16 @@ DEB_CONFIGURE_EXTRA_FLAGS := \
        --with-unixodbc=yes \
        --with-valgrind=no
 
-DEB_BUILD_PARALLEL=1
+# currently the test suite fails
+override_dh_auto_test:
+
+override_dh_auto_install:
+       dh_auto_install
+       cd clients/python && python setup.py install 
--root=$(CURDIR)/debian/tmp --install-layout=deb
+       cd clients/python3 && python3 setup.py install 
--root=$(CURDIR)/debian/tmp --install-layout=deb
+
+override_dh_clean:
+       dh_clean
+       cd clients/python && python setup.py clean
+       cd clients/python3 && python3 setup.py clean
+
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1,1 @@
+3.0 (native)
_______________________________________________
Checkin-list mailing list
Checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to