summaryrefslogtreecommitdiff
path: root/debian/webapps-config
diff options
context:
space:
mode:
authorOlivier Gayot <duskcoder@gmail.com>2018-03-12 22:57:42 +0100
committerOlivier Gayot <duskcoder@gmail.com>2018-03-12 22:57:42 +0100
commita8c22829d8e8845cd4ddf4ef8b61a1ed79edfffc (patch)
treef0ae554b863266fbe523582d1be09216436c7472 /debian/webapps-config
Imported from the SVN repository
http://svn.wolffelaar.nl/wsvn/phpbb/branches/jessie/ Signed-off-by: Olivier Gayot <duskcoder@gmail.com>
Diffstat (limited to 'debian/webapps-config')
-rw-r--r--debian/webapps-config132
1 files changed, 132 insertions, 0 deletions
diff --git a/debian/webapps-config b/debian/webapps-config
new file mode 100644
index 0000000..d9b0266
--- /dev/null
+++ b/debian/webapps-config
@@ -0,0 +1,132 @@
+# some library functions for phpbb3 maintainer scripts
+# copyright 2010 J.M. Roth <jmroth@iip.lu>
+
+get_webserver_configdata () {
+ local package=$1
+ local webserver=$2
+ local prio=$3
+
+ case "$webserver" in
+ "lighttpd" )
+ confdir=conf-available
+ wfile=${prio}-$package.conf
+ ;;
+ "apache2" )
+ confdir=conf-available
+ wfile=$package.conf
+ ;;
+ * )
+ echo "$0 $@: webserver $webserver is not supported." 1>&2
+ return 1
+ ;;
+ esac
+}
+
+# picked up from https://wiki.debian.org/Apache/PackagingFor24#Making_web_applications_compatible_to_both.2C_Apache_2.2_and_2.4
+COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
+APACHE2_MAINTSCRIPT_METHOD=$1
+APACHE2_MAINTSCRIPT_ARGUMENT=$2
+
+install_webserver_config () {
+ local package=$1
+ local webserver=$2
+ local prio=$3
+
+ get_webserver_configdata $@ || return 1
+ # yields: $confdir, $wfile
+
+ if [ -d /etc/$webserver/$confdir ] && [ ! -L /etc/$webserver/$confdir/$wfile ] ; then
+ if [ ! -x /usr/sbin/$webserver ] ; then
+ echo "$0 $@: webserver $webserver not found, skipping" 1>&2
+ else
+ ln -s ../../$package/$webserver.conf /etc/$webserver/$confdir/$wfile
+ if [ "$webserver" = "lighttpd" ] ; then
+ lighty-enable-mod $package >/dev/null
+ elif [ "$webserver" = "apache2" ] ; then
+ if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
+ . /usr/share/apache2/apache2-maintscript-helper
+ apache2_invoke enconf $package
+ elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
+ [ -d /etc/apache2/conf.d/ ] && [ ! -L /etc/apache2/conf.d/$package.conf ] && ln -s ../conf-available/$package.conf /etc/apache2/conf.d/$package.conf
+ fi
+ fi
+ fi
+ fi
+}
+
+_purge_webserver_config () {
+ local package=$1
+ local webserver=$2
+ local prio=$3
+
+ get_webserver_configdata $@ || return 0
+ # yields: $confdir, $wfile
+
+ if [ -d /etc/$webserver/$confdir ] && [ -L /etc/$webserver/$confdir/$wfile ] ; then
+ if [ ! -x /usr/sbin/$webserver ] ; then
+ echo "$0 $@: webserver $webserver not installed, skipping" 1>&2
+ else
+ if [ "$webserver" = "lighttpd" ] ; then
+ lighty-disable-mod $package >/dev/null
+ elif [ "$webserver" = "apache2" ] ; then
+ if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
+ . /usr/share/apache2/apache2-maintscript-helper
+ apache2_invoke disconf $package
+ elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
+ [ -L /etc/apache2/conf.d/$package.conf ] && rm /etc/apache2/conf.d/$package.conf
+ fi
+ fi
+ rm /etc/$webserver/$confdir/$wfile
+ fi
+ fi
+}
+
+purge_webserver_config () {
+ local package=$1
+ local webserver=$2
+ local prio=$3
+
+ case "$webserver" in
+ "all" )
+ db_metaget $package/httpd Choices
+ for w in $RET ; do
+ _purge_webserver_config $package ${w%,} $prio
+ done
+ ;;
+ * )
+ _purge_webserver_config $@
+ ;;
+ esac
+}
+
+_reload_webserver () {
+ local webserver=$1
+
+ if [ -x /usr/sbin/$webserver ]; then
+ # Redirection of fd 3 is needed because Debconf uses it and it might
+ # be inherited by webserver. See bug #446324.
+ if [ -x /usr/sbin/invoke-rc.d ]; then
+ invoke-rc.d $webserver reload 3>/dev/null || true
+ else
+ /etc/init.d/$webserver reload 3>/dev/null || true
+ fi
+ echo
+ fi
+}
+
+reload_webserver () {
+ local package=$1
+ local webserver=$2
+
+ case "$webserver" in
+ "all" )
+ db_metaget $package/httpd Choices
+ for w in $RET ; do
+ _reload_webserver ${w%,}
+ done
+ ;;
+ * )
+ _reload_webserver ${webserver%,}
+ ;;
+ esac
+}