diff --git a/addons/packages/packetfence.spec b/addons/packages/packetfence.spec index 3080dbe2902b..66af23fef534 100644 --- a/addons/packages/packetfence.spec +++ b/addons/packages/packetfence.spec @@ -222,6 +222,7 @@ server. mv pfcmd_pregrammar.pm lib/pf/pfcmd/ # generate translations +# TODO this is duplicated in debian/rules, we should aim to consolidate in a 'make' style step for TRANSLATION in de en es fr he_IL it nl pt_BR; do /usr/bin/msgfmt conf/locale/$TRANSLATION/LC_MESSAGES/packetfence.po mv packetfence.mo conf/locale/$TRANSLATION/LC_MESSAGES/ diff --git a/debian/control b/debian/control index 1948ed4b3926..9bc3af0993e0 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: packetfence Section: main/net Priority: optional Maintainer: Durand fabrice -Build-Depends: debhelper (>= 7.0.50~) +Build-Depends: debhelper (>= 7.0.50~), gettext, libparse-recdescent-perl Standards-Version: 3.8.4 Vcs-Git: git://github.com/inverse-inc/packetfence.git Vcs-browser: https://github.com/inverse-inc/packetfence/ @@ -10,47 +10,51 @@ Homepage: http://www.packetfence.org/ Package: packetfence Architecture: all +# TODO: We can probably move these in Depends since 3.5.0 (managed RADIUS feature) Pre-Depends: freeradius, freeradius-ldap, freeradius-postgresql, freeradius-mysql, freeradius-krb5 -Depends: ${misc:Depends}, apache2, apache2.2-common, apache2-utils, - openssl, openssl-blacklist, openssl-blacklist-extra, php-log, snort, - mysql-server, libapache2-mod-proxy-html, libapache2-mod-php5, php-pear, - php5-mysql, php5-gd, perl-suid, make, +Depends: ${misc:Depends}, vlan, make, + openssl, openssl-blacklist, openssl-blacklist-extra, snort, + mysql-server, + snmp, snmptrapfmt, +# apache related + apache2, apache2.2-common, apache2-utils, libapache2-mod-proxy-html, + apache2-mpm-prefork, +# php web admin + libapache2-mod-php5, php-pear, php5-mysql, php5-gd, make, php-log, # process management procps, -# perl stuff - libapache-htpasswd-perl, libbit-vector-perl, libtext-csv-perl, +# perl basic components + perl-suid, liblist-moreutils-perl, libwww-perl, libtry-tiny-perl, +# perl uncategorized modules + libapache-htpasswd-perl, libbit-vector-perl, libtext-csv-perl, libcgi-session-serialize-yaml-perl, libtimedate-perl, libapache-dbi-perl, libdbd-mysql-perl, libfile-tail-perl, libnetwork-ipv4addr-perl, - libiptables-parse-perl, libiptables-chainmgr-perl, liblist-moreutils-perl, - liblocale-gettext-perl, liblog-log4perl-perl, iptables, - liblwp-useragent-determined-perl, libnet-mac-vendor-perl, libnet-mac-perl, - libnet-netmask-perl, libnet-pcap-perl, libnet-snmp-perl, libsnmp-perl, - libnet-telnet-cisco-perl, libparse-recdescent-perl, - libregexp-common-email-address-perl, libregexp-common-time-perl, - libperl-critic-perl, libreadonly-xs-perl, libhtml-template-perl, - libterm-readkey-perl, libtest-perl-critic-perl, libtest-pod-perl, - libtest-pod-coverage-perl, apache2-mpm-prefork, libthread-pool-simple-perl, - libuniversal-require-perl, libuniversal-exports-perl, libnet-rawip-perl, - libwww-perl, libapache-htpasswd-perl, libbit-vector-perl, + libiptables-parse-perl, libiptables-chainmgr-perl, iptables, + liblwp-useragent-determined-perl, libnet-mac-vendor-perl, libnet-mac-perl, + libnet-netmask-perl, libnet-pcap-perl, libnet-snmp-perl, libsnmp-perl, + libnet-telnet-cisco-perl, libparse-recdescent-perl, + libregexp-common-email-address-perl, libregexp-common-time-perl, + libperl-critic-perl, libreadonly-xs-perl, libhtml-template-perl, + libterm-readkey-perl, libtest-perl-critic-perl, libtest-pod-perl, + libtest-pod-coverage-perl, libthread-pool-simple-perl, + libuniversal-require-perl, libuniversal-exports-perl, libnet-rawip-perl, libcgi-session-perl, libconfig-inifiles-perl, - libdatetime-format-dateparse-perl, libdbi-perl, libdbd-mysql-perl, - libfile-tail-perl, libnetwork-ipv4addr-perl, libiptables-parse-perl, - libiptables-chainmgr-perl, liblist-moreutils-perl, liblocale-gettext-perl, - liblog-log4perl-perl, libnet-mac-perl, libnet-mac-vendor-perl, - libnet-netmask-perl, libnet-pcap-perl, libnet-snmp-perl, - libnet-telnet-perl, libparse-recdescent-perl, libregexp-common-perl, - libreadonly-perl, libtemplate-perl, libterm-readkey-perl, - libtest-perl-critic-perl, libtest-pod-perl, libtest-pod-coverage-perl, - libuniversal-require-perl, libthread-serialize-perl, libload-perl, - libtry-tiny-perl, snmp, snmptrapfmt, libmime-lite-perl, + libdatetime-format-dateparse-perl, libdbi-perl, + libnet-telnet-perl, libregexp-common-perl, + libreadonly-perl, libtemplate-perl, libterm-readkey-perl, + libuniversal-require-perl, libthread-serialize-perl, libnet-ldap-perl, libcrypt-generatepassword-perl, perl-doc, dhcp3-server, bind9, librrds-perl, libnetpacket-perl (>= 1.3), libcache-cache-perl, libcarp-perl, libiptables-libiptc-perl, libload-perl, libmime-lite-tt-perl, - libnet-appliance-session-perl, libnet-cli-interact-perl, +# hard-coded to specific version because v3 broke the API and we haven't ported to it yet +# see #1313: Port our Net-Appliance-Session to the version 3 API +# http://packetfence.org/bugs/view.php?id=1313 + libnet-appliance-session-perl (= 2.111080), + libnet-cli-interact-perl, libnet-interface-perl, libnet-radius-perl, libparse-nessus-nbe-perl, libphp-session-perl, libtest-mockdbi-perl, - gettext, vlan, libsoap-lite-perl, libnet-frame-perl, libthread-pool-perl, + libsoap-lite-perl, libnet-frame-perl, libthread-pool-perl, libnet-nessus-xmlrpc-perl (>= 0.4), # FIXME track what requires the conveyor stuff and identify it. If we can, get rid of it. libthread-conveyor-monitored-perl, libthread-conveyor-perl, libthread-tie-perl, @@ -65,7 +69,13 @@ Depends: ${misc:Depends}, apache2, apache2.2-common, apache2-utils, # catalyst-server libcatalyst-engine-http-prefork-perl, # packaging workaround (we don't require it but something in catalyst seem to do) - libmodule-install-perl + libmodule-install-perl, +# i18n + liblocale-gettext-perl, +# logging framework + liblog-log4perl-perl, +# used by Captive Portal authentication modules + libauthen-radius-perl, libauthen-krb5-simple-perl Description: PacketFence network registration / worm mitigation system PacketFence is an open source network access control (NAC) system. It can be used to effectively secure networks, from small to very large @@ -96,11 +106,9 @@ Description: Files needed for sending snort alerts to packetfence Package: packetfence-test Architecture: all -Depends: packetfence, libauthen-radius-perl, libauthen-krb5-simple-perl, libtest-mockmodule-perl, - libtext-csv-perl, libtest-nowarnings-perl, libjson-perl,libtest-mockobject-perl, -# FIXME track what requires the conveyor stuff and identify it. If we can, get rid of it. - libthread-pool-perl, libthread-conveyor-perl, libthread-tie-perl, liberror-perl, - libtest-exception-perl, libnetpacket-perl (>= 1.3) +Depends: packetfence, libtest-mockmodule-perl, + libtest-nowarnings-perl, libtest-mockobject-perl, + libtest-exception-perl Description: Test suite for packetfence The PacketFence package contains a suite of test for validate packetfence installation. diff --git a/debian/packetfence.postinst b/debian/packetfence.postinst index 04f8cc1e53d3..4b5ac99b14d9 100644 --- a/debian/packetfence.postinst +++ b/debian/packetfence.postinst @@ -22,11 +22,7 @@ case "$1" in configure) export PACKETFENCE=/usr/local/pf export PERL5LIB=/usr/local/pf/lib - - # compile grammar - perl -w -e "use strict; use warnings; use Parse::RecDescent; use lib \"./lib\"; use pf::pfcmd::pfcmd; Parse::RecDescent->Precompile(\$grammar, \"pfcmd_pregrammar\");" - mv pfcmd_pregrammar.pm $PACKETFENCE/lib/pf/pfcmd/ - + # link to latest SQL schema if [ ! -e "$PACKETFENCE/db/pf-schema.sql" ]; then cd $PACKETFENCE/db diff --git a/debian/rules b/debian/rules index 1836bf2dbbb3..f8c0145c9ed7 100755 --- a/debian/rules +++ b/debian/rules @@ -54,6 +54,15 @@ install: build for i in `find * -path 't*' ! -type d`; do \ $(INSTALL) $$i $(CURDIR)/debian/packetfence-test$(PREFIX)/$(NAME)/$$i; \ done + # generate translations + # TODO this is duplicated in our RPM spec, we should aim to consolidate in a 'make' style step + for TRANSLATION in de en es fr he_IL it nl pt_BR; do + /usr/bin/msgfmt conf/locale/$TRANSLATION/LC_MESSAGES/packetfence.po \ + --output-file conf/locale/$TRANSLATION/LC_MESSAGES/packetfence.mo + done + # precompile grammar + perl -w -e 'use strict; use warnings; use Parse::RecDescent; use lib "./lib"; use pf::pfcmd::pfcmd; Parse::RecDescent->Precompile($grammar, "pfcmd_pregrammar");' + mv pfcmd_pregrammar.pm $(CURDIR)/debian/packetfence$(PREFIX)/$(NAME)/lib/pf/pfcmd/ # Install empty directories not in our tarball since the git move install -d -m0700 $(CURDIR)/debian/packetfence$(PREFIX)/$(NAME)/addons install -d -m0700 $(CURDIR)/debian/packetfence$(PREFIX)/$(NAME)/conf/users