From 951340f5162bfe8906b3acf2d74bb0de5d76a6f2 Mon Sep 17 00:00:00 2001 From: Erinn Clark Date: Sat, 21 Aug 2010 00:07:04 -0700 Subject: [PATCH 1/3] AUTHORS doesn't exist, so stop trying to cp it. Add 'sudo' to a mv that needs higher permissions. --- contrib/osx/package.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/contrib/osx/package.sh b/contrib/osx/package.sh index 488bd27c1b..2be4498328 100644 --- a/contrib/osx/package.sh +++ b/contrib/osx/package.sh @@ -89,7 +89,6 @@ EOF DOC=$BUILD_DIR/tor_resources/documents mkdir $DOC mkdir $DOC/howto -cp AUTHORS $DOC/AUTHORS.txt groff doc/tor.1.in -T ps -m man | pstopdf -i -o $DOC/tor-reference.pdf groff doc/tor-resolve.1 -T ps -m man | pstopdf -i -o $DOC/tor-resolve.pdf mkdir $DOC/Advanced @@ -145,7 +144,7 @@ cp LICENSE $BUILD_DIR/output/Tor\ License.txt find $BUILD_DIR/output -print0 | sudo xargs -0 chown root:wheel -mv $BUILD_DIR/output "$BUILD_DIR/Tor-$VERSION-$ARCH-Bundle" +sudo mv $BUILD_DIR/output "$BUILD_DIR/Tor-$VERSION-$ARCH-Bundle" rm -f "Tor-$VERSION-$ARCH-Bundle.dmg" USER="`whoami`" sudo hdiutil create -format UDZO -imagekey zlib-level=9 -srcfolder "$BUILD_DIR/Tor-$VERSION-$ARCH-Bundle" "Tor-$VERSION-$ARCH-Bundle.dmg" From 18b1097f28c57d032847ce4e6de427e19fe2f51d Mon Sep 17 00:00:00 2001 From: Erinn Clark Date: Sat, 21 Aug 2010 00:12:26 -0700 Subject: [PATCH 2/3] Update rpm spec file so that it will build without manual intervention on all rpm-based distributions --- tor.spec.in | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/tor.spec.in b/tor.spec.in index c0ac4ea8da..25557b73e2 100644 --- a/tor.spec.in +++ b/tor.spec.in @@ -117,6 +117,7 @@ BuildRequires: openssl-devel >= 0.9.7 %endif %if %{is_fc} BuildRequires: rpm-build >= 4.0 +Conflicts: tor-core, tor-lsb, tor-upstart %endif Requires(pre): /usr/bin/id, /bin/date, /bin/sh Requires(pre): %{_sbindir}/useradd, %{_sbindir}/groupadd @@ -153,7 +154,7 @@ for high-stakes anonymity. %build %if %{is_suse} -%configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup} +%configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup} --docdir=%{_docdir}/%{name} %else %configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup} %endif @@ -262,14 +263,20 @@ exit 0 %files %defattr(-,root,root) +%if %{is_suse} +%doc INSTALL LICENSE README ChangeLog doc/HACKING doc/TODO doc/*html +%endif %doc INSTALL LICENSE README ChangeLog doc/HACKING doc/TODO %{_mandir}/man*/* -%{_docdir}/tor/* %{_bindir}/tor %{_bindir}/torctl %{_bindir}/torify %{_bindir}/tor-resolve %{_bindir}/tor-gencert +%if %{is_suse} +%else +%{_docdir}/* +%endif %{_datadir}/tor/geoip %config %{_initrddir}/%{name} %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/logrotate.d/%{name} @@ -280,6 +287,10 @@ exit 0 %attr(0750,%{toruser},%{torgroup}) %dir %{_localstatedir}/log/%{name} %changelog +* Fri Aug 20 2010 Erinn Clark +- add conflicts for Fedora packages +- add logic for SuSE since it requires special doc handling + * Mon Feb 22 2010 Erinn Clark - remove AUTHORS from %doc line since it no longer exists upstream - switch maintainers From dadd9608d2720368c78e01f485fc2e2783e6a677 Mon Sep 17 00:00:00 2001 From: Erinn Clark Date: Thu, 30 Sep 2010 17:38:28 -0700 Subject: [PATCH 3/3] improve rpm init script by borrowing from Debian --- contrib/tor.sh.in | 50 ++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/contrib/tor.sh.in b/contrib/tor.sh.in index e169761a62..92f890681f 100644 --- a/contrib/tor.sh.in +++ b/contrib/tor.sh.in @@ -16,6 +16,15 @@ # description: Onion Router - A low-latency anonymous proxy # +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/tor +NAME=tor +DESC="tor daemon" +TORPIDDIR=/var/run/tor +TORPID=$TORPIDDIR/tor.pid +WAITFORDAEMON=60 +ARGS="" + # Library functions if [ -f /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions @@ -23,9 +32,6 @@ elif [ -f /etc/init.d/functions ]; then . /etc/init.d/functions fi -# Increase open file descriptors a reasonable amount -ulimit -n 8192 - TORCTL=@BINDIR@/torctl # torctl will use these environment variables @@ -44,9 +50,47 @@ else SUPROG=/bin/su fi +# Raise ulimit based on number of file descriptors available (thanks, Debian) + +if [ -r /proc/sys/fs/file-max ]; then + system_max=`cat /proc/sys/fs/file-max` + if [ "$system_max" -gt "80000" ] ; then + MAX_FILEDESCRIPTORS=32768 + elif [ "$system_max" -gt "40000" ] ; then + MAX_FILEDESCRIPTORS=16384 + elif [ "$system_max" -gt "10000" ] ; then + MAX_FILEDESCRIPTORS=8192 + else + MAX_FILEDESCRIPTORS=1024 + cat << EOF + +Warning: Your system has very few filedescriptors available in total. + +Maybe you should try raising that by adding 'fs.file-max=100000' to your +/etc/sysctl.conf file. Feel free to pick any number that you deem appropriate. +Then run 'sysctl -p'. See /proc/sys/fs/file-max for the current value, and +file-nr in the same directory for how many of those are used at the moment. + +EOF + fi +else + MAX_FILEDESCRIPTORS=8192 +fi + +NICE="" + case "$1" in start) + if [ -n "$MAX_FILEDESCRIPTORS" ]; then + echo -n "Raising maximum number of filedescriptors (ulimit -n) to $MAX_FILEDESCRIPTORS" + if ulimit -n "$MAX_FILEDESCRIPTORS" ; then + echo "." + else + echo ": FAILED." + fi + fi + action $"Starting tor:" $TORCTL start RETVAL=$? ;;