diff --git a/makedeb.sh b/makedeb.sh new file mode 100755 index 000000000..7e576bb52 --- /dev/null +++ b/makedeb.sh @@ -0,0 +1,69 @@ +#!/bin/bash +#Build RainLoop Webmail Debian Package +PACKAGEVERSION="0"; + +#Build rainloop +gulp build; +cd build/dist/releases/webmail; +cd $(ls -t); #Most recent build folder + +#Working directory +mkdir rainloop-deb-build; +cd rainloop-deb-build; + +#Prepare zip file +unzip ../rainloop-community-latest.zip; +find . -type d -exec chmod 755 {} \; +find . -type f -exec chmod 644 {} \; + +#Set up package directory +VERSION=$(cat data/VERSION); +DIR="rainloop_$VERSION-$PACKAGEVERSION"; +mkdir -m 0755 -p $DIR; +mkdir -m 0755 -p $DIR/usr; +mkdir -m 0755 -p $DIR/usr/share; +mkdir -m 0755 -p $DIR/usr/share/rainloop; +mkdir -m 0755 -p $DIR/var; +mkdir -m 0755 -p $DIR/var/lib; + +#Move files into package directory +mv rainloop $DIR/usr/share/rainloop/rainloop; +mv index.php $DIR/usr/share/rainloop/index.php; +mv data $DIR/var/lib/rainloop; + +#Update settings for Debian package +sed -i "s/\$sCustomDataPath = '';/\$sCustomDataPath = '\/var\/lib\/rainloop';/" $DIR/usr/share/rainloop/rainloop/v/$VERSION/include.php + +#Set up Debian packaging tools +cd $DIR; +mkdir -m 0755 DEBIAN; + +#Create Debian packging control file +cat >> DEBIAN/control <<-EOF + Package: rainloop + Version: $VERSION + Section: web + Priority: optional + Architecture: all + Depends: php5-fpm (>= 5.4), php5-curl, php5-json + Maintainer: Rainloop + Installed-Size: 20330 + Description: Rainloop Webmail + A modern PHP webmail client. +EOF + +#Create Debian packaging post-install script +cat >> DEBIAN/postinst <<-EOF + #!/bin/sh + chown -R www-data:www-data /var/lib/rainloop +EOF +chmod +x DEBIAN/postinst; + +#Build Debian package +cd ..; +fakeroot dpkg-deb -b $DIR; + +#Clean up +mv $DIR.deb ..; +cd ..; +rm -rf rainloop-deb-build; diff --git a/rainloop/v/0.0.0/include.php b/rainloop/v/0.0.0/include.php index 56e0d2646..bf53ad0b8 100644 --- a/rainloop/v/0.0.0/include.php +++ b/rainloop/v/0.0.0/include.php @@ -55,7 +55,7 @@ include_once APP_INDEX_ROOT_PATH.'include.php'; } - $sCustomDataPath = function_exists('__get_custom_data_full_path') ? rtrim(trim(__get_custom_data_full_path()), '\\/') : ''; + $sCustomDataPath = function_exists('__get_custom_data_full_path') ? rtrim(trim(__get_custom_data_full_path()), '\\/') : $sCustomDataPath; define('APP_DATA_FOLDER_PATH', 0 === strlen($sCustomDataPath) ? APP_INDEX_ROOT_PATH.'data/' : $sCustomDataPath.'/'); unset($sCustomDataPath);