summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip A Reimer2015-06-12 22:10:20 -0600
committerPhilip A Reimer2015-06-12 22:10:20 -0600
commitd3ae08ce68d455393ff821a753fccd5014b0327c (patch)
treefef1b61d13f0a1b15deb75c08d0cbee9a440c851
downloadaur-d3ae08ce68d455393ff821a753fccd5014b0327c.tar.gz
Initial import
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD23
-rw-r--r--quasar-server.install110
3 files changed, 153 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8690277ecea4
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = quasar-server
+ pkgdesc = Business accounting software (Server)
+ pkgver = 2.2.1
+ pkgrel = 2
+ url = http://www.linuxcanada.com
+ install = quasar-server.install
+ arch = x86_64
+ arch = i686
+ license = Commercial
+ depends = qt3
+ depends = xinetd
+ depends = postgresql
+ optdepends = polymer: KDE QT style Plastik
+ source_x86_64 = ftp://linuxcanada.com/pub/Quasar/2.2.1/binaries/x86_64/Kubuntu-14.04/quasar-server_2.2.1-1_amd64.deb
+ md5sums_x86_64 = ee09da2848529e8ec6604ca668e1b593
+ source_i686 = ftp://linuxcanada.com/pub/Quasar/2.2.1/binaries/i386-i586/Kubuntu-14.04/quasar-server_2.2.1-1_i386.deb
+ md5sums_i686 = 701f46fce465c5785bd6b0066e9c1abf
+
+pkgname = quasar-server
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..1c0a5f382022
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,23 @@
+# Maintainer: ant32 <antreimer@gmail.com>
+
+pkgname=quasar-server
+pkgver=2.2.1
+pkgrel=2
+pkgdesc="Business accounting software (Server)"
+url="http://www.linuxcanada.com"
+arch=('x86_64' 'i686')
+license=('Commercial')
+depends=('qt3' 'xinetd' 'postgresql')
+optdepends=('polymer: KDE QT style Plastik')
+source_i686=(ftp://linuxcanada.com/pub/Quasar/${pkgver}/binaries/i386-i586/Kubuntu-14.04/${pkgname}_${pkgver}-1_i386.deb)
+source_x86_64=(ftp://linuxcanada.com/pub/Quasar/${pkgver}/binaries/x86_64/Kubuntu-14.04/${pkgname}_${pkgver}-1_amd64.deb)
+md5sums_x86_64=('ee09da2848529e8ec6604ca668e1b593')
+md5sums_i686=('701f46fce465c5785bd6b0066e9c1abf')
+install="$pkgname.install"
+
+package() {
+ cd "${srcdir}"
+ tar xJf data.tar.xz
+ cp -al opt "$pkgdir"
+ install -Dm644 usr/share/doc/$pkgname/copyright "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
diff --git a/quasar-server.install b/quasar-server.install
new file mode 100644
index 000000000000..ff30042ef0d2
--- /dev/null
+++ b/quasar-server.install
@@ -0,0 +1,110 @@
+
+
+pre_install() {
+ # Add the quasar group
+ line=$(grep quasar /etc/group)
+ if [ "$line" == "" ]; then
+ groupadd quasar >/dev/null 2>/dev/null
+ fi
+
+ # Add the quasar user
+ line=$(grep quasar /etc/passwd)
+ if [ "$line" == "" ]; then
+ useradd -g quasar -d /opt/quasar -s /bin/bash -c Quasar quasar 2>/dev/null
+ fi
+}
+
+
+post_install() {
+ # check if postgresql is configured
+ # it configured the database as ASCII even though my local is set to UTF-8
+ if [ ! "$(ls -A /var/lib/postgres/data)" ]; then
+ su - postgres -c "initdb --locale en_US.UTF-8 -E UTF8 -D '/var/lib/postgres/data'"
+ fi
+
+ # If PostgreSQL is installed, try to start it
+ [ $(systemctl is-enabled postgresql) = 'disabled' ] && systemctl enable postgresql
+ [ $(systemctl is-active postgresql) = 'inactive' ] && systemctl start postgresql
+
+ # Create a "quasar" user/role
+ if [ -x /usr/bin/createuser ]; then
+ su - postgres -c "/usr/bin/createuser -s quasar"
+ if [ $? != 0 ]; then
+ su - postgres -c "/usr/bin/createuser -a -d quasar"
+ fi
+ fi
+
+ # Generate the postgresql.cfg file
+ if [ ! -e /opt/quasar/config/postgresql.cfg ]; then
+ # Figure out library location
+ if [ -e /usr/lib64/libpq.so ]; then
+ PQ_LIB=/usr/lib64/libpq.so
+ elif [ -e /usr/lib/libpq.so ]; then
+ PQ_LIB=/usr/lib/libpq.so
+ else
+ FILES=$(ls /usr/lib64/libpq.so* 2>/dev/null)
+ if [ $? = 0 ]; then
+ PQ_LIB=$(ls /usr/lib64/libpq.so* | head -1)
+ else
+ FILES=$(ls /usr/lib/libpq.so* 2>/dev/null)
+ if [ $? = 0 ]; then
+ PQ_LIB=$(ls /usr/lib/libpq.so* | head -1)
+ fi
+ fi
+ fi
+
+ # Write PostgreSQL config file
+ echo -e "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE PostgresqlConfig>\n<PostgresqlConfig>\n <hostname></hostname>\n <port>5432</port>\n <library>$PQ_LIB</library>\n <dbaUsername>quasar</dbaUsername>\n <dbaPassword></dbaPassword>\n <username>quasar</username>\n <password></password>\n <charSet>UNICODE</charSet>\n</PostgresqlConfig>" >/opt/quasar/config/postgresql.cfg
+ chmod 640 /opt/quasar/config/postgresql.cfg
+ fi
+
+ # Create log file directory
+ if [ ! -e /var/log/quasar ]; then
+ mkdir /var/log/quasar
+ fi
+ # Set ownership
+ chown -R quasar:quasar /var/log/quasar
+ chown -R quasar:quasar /opt/quasar
+
+ # Create the xinetd.d entry
+ if [ ! -e /etc/xinetd.d/quasard ]; then
+ echo -e "service quasard\n{\n type = UNLISTED\n flags = KEEPALIVE NODELAY\n socket_type = stream\n port = 3599\n wait = yes\n user = quasar\n group = quasar\n instances = UNLIMITED\n server = /opt/quasar/bin/quasard\n server_args = -xinetd\n# server_args = -xinetd -debug\n disable = no\n}\n" >/etc/xinetd.d/quasard
+ fi
+
+ # check if xinetd is enabled
+ if [ $(systemctl is-enabled xinetd) = 'disabled' ]; then
+ systemctl enable xinetd
+ systemctl start xinetd
+ fi
+
+ # Restart xinetd so it finds the new entries
+ if [ $(systemctl is-active xinetd) = 'active' ]; then
+ systemctl restart xinetd
+ else
+ echo "Error: missing /etc/init.d/xinetd script so xinetd is"
+ echo "likely not installed. You need to install xinetd to"
+ echo "use Quasar"
+ fi
+}
+
+
+pre_remove() {
+ # Remove xinetd.d entries
+ if [ -e /etc/xinetd.d/quasard ]; then
+ rm /etc/xinetd.d/quasard
+ fi
+
+ # Restart xinetd so it forgets about quasar entries
+ if [ $(systemctl is-active xinetd) = 'active' ]; then
+ systemctl restart xinetd
+ fi
+
+ # Shut down quasard
+ /usr/bin/killall -q quasard
+}
+
+
+post_remove() {
+ # Delete the log files
+ rm -rf /var/log/quasar
+}