|
@@ -23,6 +23,10 @@
|
|
|
## SUCH DAMAGE.
|
|
## SUCH DAMAGE.
|
|
|
##
|
|
##
|
|
|
|
|
|
|
|
|
|
+# package versions
|
|
|
|
|
+%define V_inn 2.3.3
|
|
|
|
|
+%define V_cleanfeed 20010805
|
|
|
|
|
+
|
|
|
# package information
|
|
# package information
|
|
|
Name: inn
|
|
Name: inn
|
|
|
Summary: InterNetNews Usenet Server
|
|
Summary: InterNetNews Usenet Server
|
|
@@ -32,19 +36,20 @@ Packager: The OpenPKG Project
|
|
|
Distribution: OpenPKG [REL]
|
|
Distribution: OpenPKG [REL]
|
|
|
Group: News
|
|
Group: News
|
|
|
License: ISC
|
|
License: ISC
|
|
|
-Version: 2.3.3
|
|
|
|
|
-Release: 20020611
|
|
|
|
|
|
|
+Version: %{V_inn}
|
|
|
|
|
+Release: 20020612
|
|
|
|
|
|
|
|
# list of sources
|
|
# list of sources
|
|
|
-Source0: ftp://ftp.isc.org/isc/inn/inn-%{version}.tar.gz
|
|
|
|
|
-Source1: ftp://ftp.openpkg.org/DST/inn/fakesyslog.tar.gz
|
|
|
|
|
-Source2: rc.inn
|
|
|
|
|
|
|
+Source0: ftp://ftp.isc.org/isc/inn/inn-%{V_inn}.tar.gz
|
|
|
|
|
+Source1: http://www.bofh.it/~md/cleanfeed/cleanfeed-%{V_cleanfeed}.tgz
|
|
|
|
|
+Source2: ftp://ftp.openpkg.org/DST/inn/fakesyslog.tar.gz
|
|
|
|
|
+Source3: rc.inn
|
|
|
|
|
|
|
|
# build information
|
|
# build information
|
|
|
Prefix: %{l_prefix}
|
|
Prefix: %{l_prefix}
|
|
|
BuildRoot: %{l_buildroot}
|
|
BuildRoot: %{l_buildroot}
|
|
|
BuildPreReq: OpenPKG, openpkg >= 20020206, make, perl, db3, openssl, bison, flex
|
|
BuildPreReq: OpenPKG, openpkg >= 20020206, make, perl, db3, openssl, bison, flex
|
|
|
-PreReq: OpenPKG, openpkg >= 20020206, perl, MTA
|
|
|
|
|
|
|
+PreReq: OpenPKG, openpkg >= 20020206, perl, perl-crypto, MTA
|
|
|
AutoReq: no
|
|
AutoReq: no
|
|
|
AutoReqProv: no
|
|
AutoReqProv: no
|
|
|
|
|
|
|
@@ -56,6 +61,7 @@ AutoReqProv: no
|
|
|
%prep
|
|
%prep
|
|
|
%setup0 -q -c
|
|
%setup0 -q -c
|
|
|
%setup1 -q -T -D -a 1
|
|
%setup1 -q -T -D -a 1
|
|
|
|
|
+ %setup2 -q -T -D -a 2
|
|
|
|
|
|
|
|
%build
|
|
%build
|
|
|
# make sure INN finds our own files
|
|
# make sure INN finds our own files
|
|
@@ -72,7 +78,7 @@ AutoReqProv: no
|
|
|
%{l_make} %{l_mflags}
|
|
%{l_make} %{l_mflags}
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
- cd inn-%{version}
|
|
|
|
|
|
|
+ cd inn-%{V_inn}
|
|
|
|
|
|
|
|
# adjust some too strange INN paths
|
|
# adjust some too strange INN paths
|
|
|
%{l_shtool} subst \
|
|
%{l_shtool} subst \
|
|
@@ -118,89 +124,111 @@ AutoReqProv: no
|
|
|
%install
|
|
%install
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
- cd inn-%{version}
|
|
|
|
|
-
|
|
|
|
|
- # determine current user and group
|
|
|
|
|
- thisuser=`%{l_shtool} echo -e '%u'`
|
|
|
|
|
- thisgroup=`%{l_shtool} echo -e '%g'`
|
|
|
|
|
- if [ ".$thisgroup" = . ]; then
|
|
|
|
|
- thisgroup="$thisuser"
|
|
|
|
|
- fi
|
|
|
|
|
-
|
|
|
|
|
- # adjust INN installation procedure
|
|
|
|
|
- %{l_shtool} subst \
|
|
|
|
|
- -e "s;^\\(prefix.*=\\).*;\\1 $RPM_BUILD_ROOT%{l_prefix};" \
|
|
|
|
|
- -e "s;^\\(PATH.*=[ ]*\\)\\(%{l_prefix}\\);\\1 $RPM_BUILD_ROOT\\2;" \
|
|
|
|
|
- -e "s;^\\(NEWSUSER.*=\\).*;\\1 $thisuser;" \
|
|
|
|
|
- -e "s;^\\(NEWSGROUP.*=\\).*;\\1 $thisgroup;" \
|
|
|
|
|
- -e "s;^\\(OWNER.*=\\).*;\\1;" \
|
|
|
|
|
- -e "s;^\\(ROWNER.*=\\).*;\\1;" \
|
|
|
|
|
- Makefile.global
|
|
|
|
|
-
|
|
|
|
|
- # perform installation procedure
|
|
|
|
|
- %{l_make} %{l_mflags} install
|
|
|
|
|
-
|
|
|
|
|
- # make some programs manually accessible
|
|
|
|
|
- %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin/
|
|
|
|
|
- for bin in controlbatch controlchan news2mail startinnfeed overchan \
|
|
|
|
|
- archive innmail innconfval ctlinnd inews rnews nntpsend; do
|
|
|
|
|
- ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/$bin \
|
|
|
|
|
- $RPM_BUILD_ROOT%{l_prefix}/bin/$bin
|
|
|
|
|
- done
|
|
|
|
|
-
|
|
|
|
|
- # strip installation
|
|
|
|
|
- rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/filter/*.py
|
|
|
|
|
- rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/*.tcl
|
|
|
|
|
- rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/lib*.a
|
|
|
|
|
- rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
|
|
|
|
|
- ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_recover \
|
|
|
|
|
- $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
|
|
|
|
|
- strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
|
|
|
|
|
-
|
|
|
|
|
- # adjust configuration
|
|
|
|
|
- ( echo ''
|
|
|
|
|
- echo '# dummy entry to make INN happy as long as'
|
|
|
|
|
- echo '# this server has no real newsfeeds configured.'
|
|
|
|
|
- echo 'dummy-feed:!*::'
|
|
|
|
|
- echo ''
|
|
|
|
|
- ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/newsfeeds
|
|
|
|
|
- ( echo ''
|
|
|
|
|
- echo '# use the traditional spool area for storage'
|
|
|
|
|
- echo 'method tradspool {'
|
|
|
|
|
- echo ' newsgroups: *'
|
|
|
|
|
- echo ' class: 1'
|
|
|
|
|
- echo '}'
|
|
|
|
|
- ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/storage.conf
|
|
|
|
|
-
|
|
|
|
|
- # create initial history database
|
|
|
|
|
- ( cd $RPM_BUILD_ROOT%{l_prefix}/var/inn/db
|
|
|
|
|
- touch history
|
|
|
|
|
- INNCONF=$RPM_BUILD_ROOT%{l_prefix}/etc/inn/inn.conf \
|
|
|
|
|
- $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/makedbz -i -f ./history
|
|
|
|
|
- chmod 644 history*
|
|
|
|
|
|
|
+ # install INN
|
|
|
|
|
+ ( cd inn-%{V_inn}
|
|
|
|
|
+
|
|
|
|
|
+ # determine current user and group
|
|
|
|
|
+ thisuser=`%{l_shtool} echo -e '%u'`
|
|
|
|
|
+ thisgroup=`%{l_shtool} echo -e '%g'`
|
|
|
|
|
+ if [ ".$thisgroup" = . ]; then
|
|
|
|
|
+ thisgroup="$thisuser"
|
|
|
|
|
+ fi
|
|
|
|
|
+
|
|
|
|
|
+ # adjust INN installation procedure
|
|
|
|
|
+ %{l_shtool} subst \
|
|
|
|
|
+ -e "s;^\\(prefix.*=\\).*;\\1 $RPM_BUILD_ROOT%{l_prefix};" \
|
|
|
|
|
+ -e "s;^\\(PATH.*=[ ]*\\)\\(%{l_prefix}\\);\\1 $RPM_BUILD_ROOT\\2;" \
|
|
|
|
|
+ -e "s;^\\(NEWSUSER.*=\\).*;\\1 $thisuser;" \
|
|
|
|
|
+ -e "s;^\\(NEWSGROUP.*=\\).*;\\1 $thisgroup;" \
|
|
|
|
|
+ -e "s;^\\(OWNER.*=\\).*;\\1;" \
|
|
|
|
|
+ -e "s;^\\(ROWNER.*=\\).*;\\1;" \
|
|
|
|
|
+ Makefile.global
|
|
|
|
|
+
|
|
|
|
|
+ # perform installation procedure
|
|
|
|
|
+ %{l_make} %{l_mflags} install
|
|
|
|
|
+
|
|
|
|
|
+ # make some programs manually accessible
|
|
|
|
|
+ %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin/
|
|
|
|
|
+ for bin in controlbatch controlchan news2mail startinnfeed overchan \
|
|
|
|
|
+ archive innmail innconfval ctlinnd inews rnews nntpsend; do
|
|
|
|
|
+ ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/$bin \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/bin/$bin
|
|
|
|
|
+ done
|
|
|
|
|
+
|
|
|
|
|
+ # strip installation
|
|
|
|
|
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/filter/*.py
|
|
|
|
|
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/*.tcl
|
|
|
|
|
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/inn/lib*.a
|
|
|
|
|
+ rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
|
|
|
|
|
+ ln $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_recover \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/ovdb_upgrade
|
|
|
|
|
+ strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
|
|
|
|
|
+
|
|
|
|
|
+ # adjust configuration
|
|
|
|
|
+ ( echo ''
|
|
|
|
|
+ echo '# dummy entry to make INN happy as long as'
|
|
|
|
|
+ echo '# this server has no real newsfeeds configured.'
|
|
|
|
|
+ echo 'dummy-feed:!*::'
|
|
|
|
|
+ echo ''
|
|
|
|
|
+ ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/newsfeeds
|
|
|
|
|
+ ( echo ''
|
|
|
|
|
+ echo '# use the traditional spool area for storage'
|
|
|
|
|
+ echo 'method tradspool {'
|
|
|
|
|
+ echo ' newsgroups: *'
|
|
|
|
|
+ echo ' class: 1'
|
|
|
|
|
+ echo '}'
|
|
|
|
|
+ ) >>$RPM_BUILD_ROOT%{l_prefix}/etc/inn/storage.conf
|
|
|
|
|
+
|
|
|
|
|
+ # create initial history database
|
|
|
|
|
+ ( cd $RPM_BUILD_ROOT%{l_prefix}/var/inn/db
|
|
|
|
|
+ touch history
|
|
|
|
|
+ INNCONF=$RPM_BUILD_ROOT%{l_prefix}/etc/inn/inn.conf \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/makedbz -i -f ./history
|
|
|
|
|
+ chmod 644 history*
|
|
|
|
|
+ )
|
|
|
|
|
+
|
|
|
|
|
+ # adjust permissions
|
|
|
|
|
+ chmod 664 $RPM_BUILD_ROOT%{l_prefix}/var/inn/db/active
|
|
|
|
|
+
|
|
|
|
|
+ # create empty logfiles
|
|
|
|
|
+ touch $RPM_BUILD_ROOT%{l_prefix}/var/inn/log/news.log
|
|
|
|
|
+
|
|
|
|
|
+ # install run-command script
|
|
|
|
|
+ %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
|
|
|
|
|
+ %{l_shtool} install -c -m 755 \
|
|
|
|
|
+ -e 's;@l_prefix@;%{l_prefix};g' \
|
|
|
|
|
+ -e 's;@l_musr@;%{l_musr};g' \
|
|
|
|
|
+ -e 's;@l_mgrp@;%{l_mgrp};g' \
|
|
|
|
|
+ %{SOURCE rc.inn} \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
- # adjust permissions
|
|
|
|
|
- chmod 664 $RPM_BUILD_ROOT%{l_prefix}/var/inn/db/active
|
|
|
|
|
-
|
|
|
|
|
- # create empty logfiles
|
|
|
|
|
- touch $RPM_BUILD_ROOT%{l_prefix}/var/inn/log/news.log
|
|
|
|
|
-
|
|
|
|
|
- # install run-command script
|
|
|
|
|
- %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
|
|
|
|
|
- %{l_shtool} install -c -m 755 \
|
|
|
|
|
- -e 's;@l_prefix@;%{l_prefix};g' \
|
|
|
|
|
- -e 's;@l_musr@;%{l_musr};g' \
|
|
|
|
|
- -e 's;@l_mgrp@;%{l_mgrp};g' \
|
|
|
|
|
- %{SOURCE rc.inn} \
|
|
|
|
|
- $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
|
|
|
|
|
|
|
+ # install cleanfeed
|
|
|
|
|
+ ( cd cleanfeed-%{V_cleanfeed}
|
|
|
|
|
+ %{l_shtool} subst \
|
|
|
|
|
+ -e 's;^\($config_dir.*=\).*;\1 "%{l_prefix}/etc/inn"\;;' \
|
|
|
|
|
+ cleanfeed
|
|
|
|
|
+ ( echo "#!%{l_prefix}/bin/perl"
|
|
|
|
|
+ cat cleanfeed
|
|
|
|
|
+ ) >filter_innd.pl
|
|
|
|
|
+
|
|
|
|
|
+ # FIXME: provide a suitable default config
|
|
|
|
|
+ cp cleanfeed.local.sample cleanfeed.local
|
|
|
|
|
+
|
|
|
|
|
+ %{l_shtool} install -c -m 755 \
|
|
|
|
|
+ filter_innd.pl \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/filter/
|
|
|
|
|
+ %{l_shtool} install -c -m 644 \
|
|
|
|
|
+ cleanfeed.local \
|
|
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/etc/inn/
|
|
|
|
|
+ )
|
|
|
|
|
|
|
|
# strip binaries
|
|
# strip binaries
|
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2> /dev/null || true
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2> /dev/null || true
|
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/* 2> /dev/null || true
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/libexec/inn/* 2> /dev/null || true
|
|
|
|
|
|
|
|
# determine file list
|
|
# determine file list
|
|
|
- %{l_rpmtool} files -v -o../files -r$RPM_BUILD_ROOT \
|
|
|
|
|
|
|
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
|
|
|
%{l_files_std} \
|
|
%{l_files_std} \
|
|
|
'%config %{l_prefix}/etc/inn/*' \
|
|
'%config %{l_prefix}/etc/inn/*' \
|
|
|
'%attr(4550,root,%{l_mgrp}) %{l_prefix}/bin/rnews' \
|
|
'%attr(4550,root,%{l_mgrp}) %{l_prefix}/bin/rnews' \
|