summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorJeremy Davis <jeremyd@freeside.biz>2014-10-02 13:02:54 -0500
committerJeremy Davis <jeremyd@freeside.biz>2014-10-02 13:02:54 -0500
commit53ab539ee0cd55cecccc75c6c7cff44964d9f904 (patch)
tree5e944931310427e60e8293ae3f6cb37b29eeffb1 /debian
parent1ad229e71846b8bbad4ac6272ae75af89e51d0e3 (diff)
#2916 Debian packages
Diffstat (limited to 'debian')
-rw-r--r--debian/README.Debian34
-rw-r--r--debian/changelog6
-rw-r--r--debian/conffiles3
-rw-r--r--debian/freeside-webui.links1
-rw-r--r--debian/freeside.docs1
-rw-r--r--debian/freeside.examples2
-rw-r--r--debian/postinst6
-rwxr-xr-xdebian/rules182
8 files changed, 125 insertions, 110 deletions
diff --git a/debian/README.Debian b/debian/README.Debian
index 829b543..a14fc09 100644
--- a/debian/README.Debian
+++ b/debian/README.Debian
@@ -1,25 +1,25 @@
Freeside for Debian
-------------------
-1.
-Edit /etc/apache2/envvars or /etc/apache2/apache2.conf and set User and Group
-to freeside
+1. Initialize Freeside:
+freeside-setup -d yourdomain.com
-2.
-/etc/init.d/apache2 restart
+2. Boot strap freeside users
-3.
-Create one or more Freeside users (your internal sales/tech folks, not customer accounts):
-$ su
-# su freeside
-$ freeside-adduser -g 1 desired_username
-$ htpasswd /etc/freeside/htpasswd username
-(enter password)
+3. Initialize RT
-4.
-Go to http://your.host.name/freeside and log in.
+4. Create one or more Freeside users (your internal sales/tech folks, not customer accounts):
-Optional but recommended.
-(Hopefully) get an SSL certificate setup and change that to https://
+sudo su freeside
+freeside-adduser -g 1 desired_username
+htpasswd /usr/local/etc/freeside/htpasswd desired_username
- -- Ivan Kohler <ivan-debian@420.am> Wed, 02 Apr 2008 01:46:20 -0700
+
+5. Start the Apache and the Freeside services
+
+/etc/init.d/apache start
+/etc/init.d/freeside start
+
+6. Go to https://your.host.name/freeside and log in.
+
+ -- Jeremy Davis <jeremyd-debian@freeside.biz> Tue, 30 Sept 2014 15:46:20 -0500
diff --git a/debian/changelog b/debian/changelog
index 0aadb48..d5fd647 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+freeside (3.4~20140918-1) UNRELEASED; urgency=low
+
+ * Complete packaging.
+
+ -- Jeremy Davis <jeremyd-debian@freeside.biz> Thu, 18 Feb 2014 15:50:36 -0500
+
freeside (3.0~20130205-1) UNRELEASED; urgency=low
* Another stab at packaging.
diff --git a/debian/conffiles b/debian/conffiles
new file mode 100644
index 0000000..5b6b010
--- /dev/null
+++ b/debian/conffiles
@@ -0,0 +1,3 @@
+/usr/local/etc/freeside/secrets
+/etc/default/freeside
+/opt/rt3/etc/RT_SiteConfig.pm
diff --git a/debian/freeside-webui.links b/debian/freeside-webui.links
index 7ca4030..be5749a 100644
--- a/debian/freeside-webui.links
+++ b/debian/freeside-webui.links
@@ -1,4 +1,3 @@
-etc/freeside/apache2/freeside-alias.conf etc/apache2/conf.d/freeside-alias.conf
etc/freeside/apache2/freeside-base2.conf etc/apache2/conf.d/freeside-base2.conf
etc/freeside/apache2/freeside-rt.conf etc/apache2/conf.d/freeside-rt.conf
diff --git a/debian/freeside.docs b/debian/freeside.docs
index f4a511b..64bf802 100644
--- a/debian/freeside.docs
+++ b/debian/freeside.docs
@@ -1,2 +1,3 @@
README
AGPL
+bin/
diff --git a/debian/freeside.examples b/debian/freeside.examples
new file mode 100644
index 0000000..ecf14d8
--- /dev/null
+++ b/debian/freeside.examples
@@ -0,0 +1,2 @@
+fs_selfservice/
+ng_selfservice/
diff --git a/debian/postinst b/debian/postinst
new file mode 100644
index 0000000..af80afe
--- /dev/null
+++ b/debian/postinst
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+chown -R freeside /usr/local/etc/freeside
+
+exit 0
+
diff --git a/debian/rules b/debian/rules
index 3b5ff41..7bf8aed 100755
--- a/debian/rules
+++ b/debian/rules
@@ -36,17 +36,18 @@ export FREESIDE_LOG = $(TMP)/usr/local/etc/freeside
export FREESIDE_LOCK = $(TMP)/usr/local/etc/freeside
export FREESIDE_CACHE = $(TMP)/usr/local/etc/freeside
export FREESIDE_EXPORT = $(TMP)/usr/local/etc/freeside
+expory FREESIDE_SS = $(TMP)/usr/share/docs/freeside
#XXX own subdir?
-#export MASON_HANDLER = $(TMP)-webui/usr/share/freeside/handler.pl
+#export MASON_HANDLER = /usr/share/freeside/handler.pl
export MASON_HANDLER=$(TMP)-webui/usr/local/etc/freeside/handler.pl
-#export FREESIDE_DOCUMENT_ROOT = $(TMP)-webui/usr/share/freeside/www
+#export FREESIDE_DOCUMENT_ROOT = /usr/share/freeside/www
export FREESIDE_DOCUMENT_ROOT = $(TMP)-webui/var/www/freeside
export INIT_FILE = $(TMP).init
export INIT_INSTALL = /bin/true
export HTTPD_RESTART = /bin/true
-#export APACHE_CONF = $(TMP)-webui/etc/apache2/conf.d
+#export APACHE_CONF = /etc/apache2/conf.d
export APACHE_CONF = $(TMP)-webui/etc/freeside/apache2
export FREESIDE_RESTART = /bin/true
@@ -56,22 +57,21 @@ export INSTALLGROUP = adm
export SELFSERVICE_MACHINES =
#prompt ? XXX these are runtime, not buildtime :/
-#export RT_DOMAIN = `dnsdomainname`
-#export RT_TIMEZONE = `cat /etc/timezone`
-
-#export HOSTNAME = `hostname -f`
-#export FREESIDE_URL = http://$(HOSTNAME)/freeside/
+export RT_DOMAIN = freeside.biz
+export RT_TIMEZONE = US/Eastern
+export HOSTNAME = localhost
+export FREESIDE_URL = http://$(HOSTNAME)/freeside/
#specific to deb pkg, for purposes of saving off a permanent copy of default
#config for postinst and that sort of thing
-#export DIST_CONF = $(TMP)/usr/share/freeside/default_conf
+#export DIST_CONF = /usr/share/freeside/default_conf
#XXX yuck. proper RT layout is entirely necessary
#this seems to infect way to much of RT with the build location, requiring
# a kludge to hack it out afterwords. look into using fakeroot (didn't
# realize it would need to be explicit argh)
# (but leaving it for now, otherwise can't get RT to put files where we need em)
-#export RT_PATH = $(TMP)/var/opt/freeside/rt
+export RT_PATH = $(TMP)/opt/rt3
# This has to be exported to make some magic below work.
export DH_OPTIONS
@@ -91,7 +91,7 @@ build-stamp:
( cd FS/ && $(PERL) Makefile.PL INSTALLDIRS=vendor )
- $(MAKE) -e perl-modules
+ $(MAKE) -e DESTDIR=${TMP}-lib perl-modules
#TEST#
@@ -117,98 +117,95 @@ install-stamp: build-stamp
# Add here commands to install package into
# debian/<package>-whatever.
- ( cd FS/ && $(MAKE) -e DESTDIR=$(TMP)-lib install )
- #false laziness w/install-perl-modules now
- #install this for postinst later (no create-config)
- ##install -d $(DIST_CONF)
- #install conf/[a-z]* $(DEFAULT_CONF)
- #CVS is not [a-z]
- ##install `ls -d conf/[a-z]* | grep -v CVS` $(DIST_CONF)
+ ( cd FS/ && $(MAKE) -e DESTDIR=$(TMP)-lib install )
install -d $(FREESIDE_DOCUMENT_ROOT)
+ install -d $(TMP)-webui/usr/local/etc/freeside/
install -d $(FREESIDE_CACHE)/masondata #MASONDATA
$(MAKE) -e DESTDIR=$(TMP)-webui install-docs
+
+ # Ugly hack, why is handler.pl not being "handled" by install-docs
+ install -D htetc/handler.pl DESTDIR=$(FREESIDE_CACHE)
+
+ # Create Apache configurations
+ install -d $(APACHE_CONF)
+ $(MAKE) -e DESTDIR=$(APACHE_CONF) install-apache
+
+ #Hack the build dir out of apache config
+
+ perl -p -i -e "\
+ s'${TMP}(-webui)?''g;\
+ " $(TMP)-webui/etc/freeside/apache2/*
+
+ # Install configuration files, hack what to do???
+ $(MAKE) -e DESTDIR=$(TMP) create-config
+ $(MAKE) -e DESTDIR=$(TMP) install-init
+
#hack the build dir out of Freeside too. oh yeah, sucky.
perl -p -i -e "\
s'${TMP}(-webui)?''g;\
- " ${TMP}-webui/usr/local/etc/freeside/handler.pl \
- ${TMP}-webui/etc/freeside/apache2/* \
- ${TMP}-lib/usr/share/perl5/FS/* \
- ${TMP}-lib/usr/share/perl5/FS/*/* \
- ${TMP}-lib/usr/bin/*
+ " ${TMP}-webui/usr/local/etc/freeside/handler.pl
- #rm -r $(FREESIDE_DOCUMENT_ROOT).*
+ #back the build dur out of lib
+ perl -p -i -e "\
+ s'${TMP}-lib?''g;\
+ s'${TMP}(-webui)?''g;\
+ " ${TMP}-webui/usr/local/etc/freeside/handler.pl \
+ ${TMP}-lib/usr/share/perl5/FS/*.pm \
+ ${TMP}-lib/usr/share/perl5/FS/*/*.pm
+
+ #hack the build dir out of Freeside binaries
- install -d $(APACHE_CONF)
- #install debian/freeside.apache-alias.conf $(APACHE_CONF)/freeside-alias.conf
- #FREESIDE_DOCUMENT_ROOT=/usr/share/freeside/www MASON_HANDLER=/usr/share/freeside/handler.pl FREESIDE_CONF=/etc/freeside $(MAKE) -e install-apache
- $(MAKE) -e install-apache
-
- $(MAKE) -e install-init
-
- #RT
- #(configure-rt)
- $(MAKE) -e configure-rt
-
- ## XXX need to adjust db-type, db-database, db-rt-user, db-rt-pass
- ## based on info from dbc
- #( cd rt; \
- # cp config.layout.in config.layout; \
- # perl -p -i -e "\
- # s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g;\
- # s'%%%MASONDATA%%%'${FREESIDE_CACHE}/masondata'g;\
- # " config.layout; \
- # ./configure --prefix=${RT_PATH} \
- # --enable-layout=Freeside \
- # --with-db-type=Pg \
- # --with-db-dba=freeside \
- # --with-db-database=_DBC_DBNAME_ \
- # --with-db-rt-user=_DBC_DBUSER_ \
- # --with-db-rt-pass=_DBC_DBPASS_ \
- # --with-web-user=freeside \
- # --with-web-group=freeside \
- # --with-rt-group=freeside \
- #)
-
- ##(create-rt)
- #$(MAKE) -e create-rt
-
- #install -d $(RT_PATH)
- #( cd rt; make install )
- ##hack the build dir out of RT. yeah, sucky.
- #perl -p -i -e "\
- # s'${TMP}''g;\
- #" ${RT_PATH}/etc/RT_Config.pm \
- # ${RT_PATH}/lib/RT.pm \
- # ${RT_PATH}/bin/mason_handler.fcgi \
- # ${RT_PATH}/bin/mason_handler.scgi \
- # ${RT_PATH}/bin/standalone_httpd \
- # ${RT_PATH}/bin/webmux.pl \
- # ${RT_PATH}/bin/rt-crontool \
- # ${RT_PATH}/sbin/rt-dump-database \
- # ${RT_PATH}/sbin/rt-setup-database
- #
- ##hack @INC dir out of RT (well, handler.pl) too.
- #perl -p -i -e "\
- # s'/opt/rt3/'/var/opt/freeside/rt/'g;\
- #" ${TMP}-webui/usr/share/freeside/handler.pl
-
- #mv ${RT_PATH}/etc/RT_Config.pm ${RT_PATH}/etc/RT_Config.pm.dbc
-
- #perl -p -i -e "\
- # s'%%%RT_DOMAIN%%%'${RT_DOMAIN}'g;\
- # s'%%%RT_TIMEZONE%%%'${RT_TIMEZONE}'g;\
- # s'%%%FREESIDE_URL%%%'${FREESIDE_URL}'g;\
- #" ${RT_PATH}/etc/RT_SiteConfig.pm
-
- #install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/pgsql
- #install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/mysql
-
- #install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/pgsql/$(DEBVERSION)
- #install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/mysql/$(DEBVERSION)
+ perl -p -i -e "\
+ s'${TMP}?''g;\
+ " ${TMP}-lib/usr/bin/* \
+
+ #RT Config
+
+ ( cd rt; \
+ cp config.layout.in config.layout; \
+ perl -p -i -e "\
+ s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g;\
+ s'%%%MASONDATA%%%'${FREESIDE_CACHE}/masondata'g;\
+ " config.layout; \
+ ./configure --prefix=${RT_PATH} \
+ --enable-layout=Freeside \
+ --with-db-type=Pg \
+ --with-db-dba=freeside \
+ --with-db-database=freeside \
+ --with-db-rt-user=freeside \
+ --with-db-rt-pass="" \
+ --with-web-user=freeside \
+ --with-web-group=freeside \
+ --with-rt-group=freeside \
+ --with-web-handler=modperl2 )
+
+ ##(create-rt)
+ #$(MAKE) -e create-rt
+ install -d $(RT_PATH)
+ ( cd rt; make install )
+ ##hack the build dir out of RT. yeah, sucky.
+
+ perl -p -i -e "\
+ s'${TMP}(-webui)''g;\
+ s'${TMP}''g;\
+ " ${TMP}/opt/rt3/etc/*.pm \
+ ${TMP}/opt/rt3/lib/*.pm \
+ ${TMP}/opt/rt3/lib/RT/*.pm \
+ ${TMP}/opt/rt3/etc/upgrade/* \
+ ${TMP}/opt/rt3/sbin/* \
+ ${TMP}/opt/rt3/bin/* \
+
+ # Default RT Settings
+ perl -p -i -e "\
+ s'%%%RT_DOMAIN%%%'${RT_DOMAIN}'g;\
+ s'%%%RT_TIMEZONE%%%'${RT_TIMEZONE}'g;\
+ s'%%%FREESIDE_URL%%%'${FREESIDE_URL}'g;\
+ " ${RT_PATH}/etc/RT_SiteConfig.pm
+
dh_install
touch $@
@@ -219,12 +216,13 @@ binary-arch:
binary-indep: build install
dh_testdir
dh_testroot
+ dh_installdeb install
dh_installdocs #freeside.docs README AGPL
dh_installexamples eg/*
# dh_installmenu
dh_installdebconf
# dh_installlogrotate
- dh_installinit
+ dh_installinit --no-start
dh_installcron
# dh_installinfo
dh_installman