summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Moser2016-01-13 13:02:03 +0100
committerMarkus Moser2016-01-13 13:02:03 +0100
commit71d9b298ebab31c4ae26671caf913d280dd2ee1b (patch)
tree7756f3b754ab129357131b3678b8ad0437cf0844
downloadaur-71d9b298ebab31c4ae26671caf913d280dd2ee1b.tar.gz
Initial import
-rw-r--r--.SRCINFO22
-rw-r--r--PKGBUILD79
-rw-r--r--naviserver.install37
-rw-r--r--naviserver.service12
4 files changed, 150 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..1b9511631188
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+# Generated by mksrcinfo v8
+# Wed Jan 13 11:50:04 UTC 2016
+pkgbase = naviserver
+ pkgdesc = A versatile multiprotocol (httpd et al) server written in C/Tcl
+ pkgver = 4.99.9
+ pkgrel = 1
+ url = https://bitbucket.org/naviserver/naviserver/
+ arch = x86_64
+ license = MPL
+ depends = tcllib>=1.17
+ depends = tcl>=8.5.18
+ depends = tdom>=0.8.3
+ depends = nsf>=1.6.8
+ depends = systemd
+ source = http://download.sourceforge.net/sourceforge/naviserver/naviserver-4.99.9.tar.gz
+ source = naviserver.service
+ md5sums = 0aecf0a2ddb367903498933a6cf89064
+ md5sums = 62410d8f8e0e7f74fdceb13ca8058895
+
+pkgname = naviserver
+ install = naviserver.install
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..d9a7b03982ff
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,79 @@
+# Maintainer: Markus Moser<marmoser@wu.ac.at>
+pkgname=naviserver
+pkgver=4.99.9
+pkgrel=1
+pkgdesc="A versatile multiprotocol (httpd et al) server written in C/Tcl"
+arch=('x86_64')
+url="https://bitbucket.org/naviserver/naviserver/"
+license=('MPL')
+depends=('tcllib>=1.17' 'tcl>=8.5.18' 'tdom>=0.8.3' 'nsf>=1.6.8' 'systemd')
+source=("http://download.sourceforge.net/sourceforge/naviserver/${pkgname}-${pkgver}.tar.gz"
+"naviserver.service")
+md5sums=("0aecf0a2ddb367903498933a6cf89064"
+"62410d8f8e0e7f74fdceb13ca8058895")
+
+build() {
+ cd "naviserver-${pkgver}"
+ msg "Starting make..."
+ msg "make in $(pwd)"
+ ./configure --prefix /usr
+ make
+}
+
+package() {
+ install="${pkgname}.install"
+ cd ${pkgname}-${pkgver}
+ #do not call make install since 1)we want a FHS compliant hierarchy 2)make install spams fakeroot warning messages
+ #bin
+ install -D nsd/nsd ${pkgdir}/usr/lib/naviserver/bin/nsd
+ install -D nsd/init.tcl ${pkgdir}/usr/lib/naviserver/bin/init.tcl
+ install -D nsproxy/nsproxy ${pkgdir}/usr/lib/naviserver/bin/nsproxy
+ install -D nsthread/nsthreadtest ${pkgdir}/usr/lib/naviserver/bin/nsthreadtest
+ #naviserver bin lib
+ install -D nscgi/nscgi.so ${pkgdir}/usr/lib/naviserver/bin/nscgi.so
+ install -D nscp/nscp.so ${pkgdir}/usr/lib/naviserver/bin/nscp.so
+ install -D nsdb/nsdb.so ${pkgdir}/usr/lib/naviserver/bin/nsdb.so
+ install -D nsdbtest/nsdbtest.so ${pkgdir}/usr/lib/naviserver/bin/nsdbtest.so
+ install -D nslog/nslog.so ${pkgdir}/usr/lib/naviserver/bin/nslog.so
+ install -D nsperm/nsperm.so ${pkgdir}/usr/lib/naviserver/bin/nsperm.so
+ install -D nsproxy/nsproxy.so ${pkgdir}/usr/lib/naviserver/bin/nsproxy.so
+ install -D nssock/nssock.so ${pkgdir}/usr/lib/naviserver/bin/nssock.so
+ #/usr/lib
+ install -D nsd/libnsd.so ${pkgdir}/usr/lib/libnsd.so
+ install -D nsproxy/nsproxy.so ${pkgdir}/usr/lib/nsproxy.so
+ install -D nsdb/libnsdb.so ${pkgdir}/usr/lib/libnsdb.so
+ install -D nsthread/libnsthread.so ${pkgdir}/usr/lib/libnsthread.so
+ #etc
+ install -D nsd-config.tcl ${pkgdir}/etc/naviserver/nsd-config.tcl
+ install -D sample-config.tcl ${pkgdir}/etc/naviserver/sample-config.tcl
+ install -D simple-config.tcl ${pkgdir}/etc/naviserver/simple-config.tcl
+ install -D openacs-config.tcl ${pkgdir}/etc/naviserver/openacs-config.tcl
+ #cgi-bin
+ install -d ${pkgdir}/usr/lib/naviserver/cgi-bin
+ #inc
+ install -d ${pkgdir}/usr/lib/naviserver/include
+ install -D include/*.h ${pkgdir}/usr/lib/naviserver/include/
+ install -D nsdb/nsdb.h ${pkgdir}/usr/lib/naviserver/include/
+ install -D nsproxy/nsproxy.h ${pkgdir}/usr/lib/naviserver/include/
+ install -D include/Makefile.module ${pkgdir}/usr/lib/naviserver/include/
+ install -D include/Makefile.global ${pkgdir}/usr/lib/naviserver/include/
+ #modules
+ install -d ${pkgdir}/usr/lib/naviserver/servers/default/modules
+ install -d ${pkgdir}/usr/lib/naviserver/pages/doc
+ cp -r doc/html/* ${pkgdir}/usr/lib/naviserver/pages/doc/
+ install -d ${pkgdir}/usr/lib/naviserver/pages/examples
+ install -D contrib/examples/* ${pkgdir}/usr/lib/naviserver/pages/examples
+ install -D bitbucket-install.tcl ${pkgdir}/usr/lib/naviserver/pages/bitbucket-install.tcl
+ install -D index.adp ${pkgdir}/usr/lib/naviserver/pages/index.adp
+ #tcl
+ install -d ${pkgdir}/usr/lib/naviserver/tcl
+ install -D tcl/* ${pkgdir}/usr/lib/naviserver/tcl
+ install -d ${pkgdir}/usr/bin
+ #install systemd service
+ install -D "${srcdir}/naviserver.service" "${pkgdir}/usr/lib/systemd/system/naviserver.service"
+ #wrapper for /usr/bin
+ echo "#!/bin/sh
+cd /usr/lib/naviserver
+exec ./bin/nsd \"\$@\"" > ${pkgdir}/usr/bin/nsd
+ chmod +x ${pkgdir}/usr/bin/nsd
+}
diff --git a/naviserver.install b/naviserver.install
new file mode 100644
index 000000000000..3dc54f58f8f6
--- /dev/null
+++ b/naviserver.install
@@ -0,0 +1,37 @@
+post_install() {
+ ns_install_dir=/usr
+ ns_user=nsadmin
+ ns_group=nsadmin
+ ns_www=/usr/lib/naviserver
+ ns_config_dir=/etc/naviserver
+
+ #setup users
+ group_listcmd="grep ${ns_group} /etc/group"
+ group=$(eval ${group_listcmd})
+ group_addcmd="groupadd ${ns_group}"
+ ns_user_addcmd="useradd -g ${ns_group} ${ns_user}"
+
+ if [ "x$group" = "x" ] ; then
+ eval ${group_addcmd}
+ fi
+
+ if ! id -u $ns_user > /dev/null 2>&1; then
+ eval ${ns_user_addcmd}
+ fi
+
+ chown -R ${ns_user}:${ns_group} ${ns_www} &> /dev/null
+
+ echo "
+
+ Congratulations, you have installed NaviServer.
+
+ You can now run plain NaviServer by typing the following command:
+
+ sudo /usr/bin/nsd -f -u ${ns_user} -g ${ns_group} -t ${ns_config_dir}/nsd-config.tcl
+
+ As a next step, you need to configure the server according to your needs,
+ or you might want to use the server with OpenACS. Consult as a reference
+ the alternate configuration files in ${ns_config_dir}
+
+ "
+} \ No newline at end of file
diff --git a/naviserver.service b/naviserver.service
new file mode 100644
index 000000000000..596136c55776
--- /dev/null
+++ b/naviserver.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Naviserver
+After=network.target
+
+[Service]
+Type=forking
+Environment="LANG=en_US.UTF-8"
+
+ExecStart=/usr/bin/nsd -f -u nsadmin -g nsadmin -t /etc/naviserver/nsd-config.tcl
+
+Restart=on-abnormal
+KillMode=process