浏览代码

Merge branch 'maint-0.2.2'

Roger Dingledine 13 年之前
父节点
当前提交
28b55c92d5
共有 3 个文件被更改,包括 61 次插入7 次删除
  1. 1 2
      contrib/osx/package.sh
  2. 47 3
      contrib/tor.sh.in
  3. 13 2
      tor.spec.in

+ 1 - 2
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"

+ 47 - 3
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=$?
     ;;

+ 13 - 2
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 <erinn@torproject.org>
+- add conflicts for Fedora packages
+- add logic for SuSE since it requires special doc handling
+
 * Mon Feb 22 2010 Erinn Clark <erinn@torproject.org>
 - remove AUTHORS from %doc line since it no longer exists upstream
 - switch maintainers