You are not logged in.

#1 2004-07-31 18:56:25

lanrat
Member
From: Poland
Registered: 2003-10-28
Posts: 1,274

pkgbuild: rekall - kde db front-end (like ms access)

I finally found some time to finish PKGBUILD for non-commercial version of rekall - a database front-end  similar to microsoft access. I built rekall with support for 3 types of databases:
- postgresql
- mysql
- xbase/xbsql - dbf (dBase IV and Clipper) files
Rekall also supports python scripting and it should work but I'm not a python programmer so I didn't try it :-). I built rekall with kde gui. It's theoretically possible to build it only with qt and without kdelibs but it is not advised (broken, too old, etc.)
It is also possible to build OS odbc proxy support (for accessing other databases from windows hosts for conversion, etc.) for this version of rekall but I didn't have time to test it and to build more packages. Check this page if you want to try it too http://www.rekallrevealed.org/toplevel/ … vers.shtml. Commercial version features are presented here http://www.thekompany.com/products/rekall/

It would really be nice to have a precompiled package in some repository because it takes aaaaaages to compile it. Anybody?

rekall PKGBUILD

pkgname=rekall
pkgver=2.2.0
pkgrel=1
pkgdesc="Mysql/Postgresql/dbf kde front-end with python scripting"
url="http://www.rekallrevealed.org"
makedepends=('postgresql' 'mysql' 'xbsql')
depends=('python' 'kdelibs')
source=(http://www.rekallrevealed.org/packages/$pkgname-$pkgver.tar.gz)
md5sums=('cabba34f0392f4eca0373b9c0cf6b2cc')

build() {
  cd $startdir/src/$pkgname-$pkgver

  ./configure --prefix=/opt/kde --with-gui=kde 
        --enable-mysql 
        --enable-pgsql 
        --enable-xbase

  sed -i "/^GETVALUE/s/;//" $startdir/src/$pkgname-$pkgver/libs/kbase/kb_options.cpp
  sed -i "/Q_OBJECT/s/;//"  $startdir/src/$pkgname-$pkgver/libs/kbase/kb_draglist.h
  sed -i "/Q_OBJECT/s/;//"  $startdir/src/$pkgname-$pkgver/libs/kbase/kb_optionsdlg.h
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/libs/extra/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/libs/kdeplugins/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/db/mysql/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/db/pgsql/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/db/xbase/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/script/python/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/script/python/stub/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/table2/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/form/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/report/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/query/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/copier/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/component/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/editor/Makefile
  sed -i "s/-pedantic//"    $startdir/src/$pkgname-$pkgver/parts/macro/Makefile
  sed -i "s/$(LN_S) $(kde_libs_htmldir)/$(LN_S) /opt/kde/share/doc/HTML/" 
        $startdir/src/$pkgname-$pkgver/doc/rekall/Makefile

  make || return 1

  make prefix=$startdir/pkg/opt/kde install

}

I put postgresql, mysql and xbsql as makedependencies only. I tried running rekall without mysql and xbase/xbsql installed and It seems that it can run without them fine - just complains that libs can't be found when you try to connect to mysql database for example.

xbase PKGBUILD

pkgname=xbase
pkgver=2.0.0
pkgrel=1
pkgdesc="Library for accessing dBase .dbf, .ndx, .dbt, and Clipper .ntx files"
url="http://www.rekallrevealed.org/toplevel/getting/source.shtml"
depends=('gcc' 'bash')
install=xbase.install
source=(http://www.rekallrevealed.org/packages/$pkgname-$pkgver.tgz)
md5sums=('f3a65965af6bda221c89b2f3e1d24bb0')

build() {
  cd $startdir/src/$pkgname-$pkgver
  ./configure --prefix=/usr --enable-static
  make || return 1
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/bin/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/docs/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/examples/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/html/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/libtest/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/tv/Makefile
  sed -i "s//usr/bin/install//bin/install/g" 
        $startdir/src/$pkgname-$pkgver/xbase/Makefile
  make DESTDIR=$startdir/pkg install
}

I'm not sure if install is really needed - it only runs ldconfig - I just followed rpm specs for other distros.
xbase.install

# arg 1:  the new package version
post_install() {
  /sbin/ldconfig
}

# arg 1:  the new package version
# arg 2:  the old package version
post_upgrade() {
  /sbin/ldconfig
}

# arg 1:  the old package version
pre_remove() {
  /bin/true
}

# arg 1:  the old package version
post_remove() {
  /sbin/ldconfig
}

op=$1
shift
$op $*

xbsql PKGBUILD

pkgname=xbsql
pkgver=0.11
pkgrel=1
pkgdesc="An SQL wrapper for xbase"
url="http://www.rekallrevealed.org/toplevel/getting/source.shtml"
depends=('xbase' 'readline')
source=(http://www.rekallrevealed.org/packages/$pkgname-$pkgver.tgz)
md5sums=('7f8c8584cf0f592660fb2653a4bfc415')

build() {
  cd $startdir/src/$pkgname-$pkgver
  ./configure --prefix=/usr
  make || return 1
  make DESTDIR=$startdir/pkg install
}

If you find something that can be improved please post it here.

Offline

Board footer

Powered by FluxBB