First go at a debian package

svn:r987
This commit is contained in:
Peter Palfrader 2004-01-13 13:40:00 +00:00
parent 793c65e60f
commit 9d3cf1b4d1
12 changed files with 326 additions and 0 deletions

6
debian/changelog vendored Normal file
View File

@ -0,0 +1,6 @@
tor (0.0.1+0.0.2pre19-1) unstable; urgency=low
* Initial Release.
-- Peter Palfrader <weasel@debian.org> Sat, 10 Jan 2004 11:20:06 +0100

1
debian/compat vendored Normal file
View File

@ -0,0 +1 @@
4

41
debian/control vendored Normal file
View File

@ -0,0 +1,41 @@
Source: tor
Section: comm
Priority: optional
Maintainer: Peter Palfrader <weasel@debian.org>
Build-Depends: debhelper (>= 4.1.65), libssl-dev, dpatch
Standards-Version: 3.6.1
Package: tor
Architecture: any
Depends: ${shlibs:Depends}
Recommends: privoxy, tsocks
Suggests: mixmaster, mixminion, anon-proxy
Description: anonymous communication system
Tor is a connection-based low-latency anonymous communication system which
addresses many flaws in the original onion routing design.
.
In brief, Onion Routing is a connection-oriented anonymizing communication
service. Users choose a source-routed path through a set of nodes, and
negotiate a "virtual circuit" through the network, in which each node
knows its predecessor and successor, but no others. Traffic flowing down
the circuit is unwrapped by a symmetric key at each node, which reveals
the downstream node.
.
Basically Tor provides a distributed network of servers ("onion
routers"). Users bounce their tcp streams (web traffic, ftp, ssh, etc)
around the routers, and recipients, observers, and even the routers
themselves have difficulty tracking the source of the stream.
.
Note that Tor does not protocol cleaning. That means there is a danger that
application protocols and associated programs can be induced to reveal
information about the initiator. Tor depends on Privoxy and similar protocol
cleaners to solve this problem.
.
Client applications can use the Tor network by connecting to the local
onion proxy. If the application itself does not come with socks support
you can use a socks client such as tsocks. Some web browsers like mozilla
and web proxies like privoxy come with socks support, you don't need an
extra socks client if you want to use Tor with them.
.
Remember that this is alpha code, and the network is very small -- Tor will
not provide anonymity currently.

40
debian/copyright vendored Normal file
View File

@ -0,0 +1,40 @@
This package was debianized by Peter Palfrader <weasel@debian.org> on
Sat, 10 Jan 2004 11:20:06 +0100.
It was downloaded from http://freehaven.net/tor/
Upstream Authors: Roger Dingledine <arma@freehaven.net>
Nick Mathewson <nickm@freehaven.net>
Matej Pfajfar <badbytes@freehaven.net>
Copyright (c) 2001-2004, Roger Dingledine
Modifications for Debian: Copyright (C) 2004 Peter Palfrader <weasel@debian.org>
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the names of the copyright owners nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

94
debian/rules vendored Executable file
View File

@ -0,0 +1,94 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
config.status: configure
dh_testdir
CFLAGS="$(CFLAGS)" ./configure \
--host=$(DEB_HOST_GNU_TYPE) \
--build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/usr \
--mandir=\$${prefix}/share/man \
--infodir=\$${prefix}/share/info \
--localstatedir=/var \
--sysconfdir=/etc
build: build-stamp
build-stamp: config.status
dh_testdir
$(MAKE)
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp
-$(MAKE) distclean
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
$(MAKE) install DESTDIR=$(CURDIR)/debian/tor
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs ChangeLog
dh_installdocs
dh_installexamples
# dh_install
# dh_installdebconf
dh_installlogrotate
# dh_installemacsen
# dh_installmime
dh_installinit
# dh_installcron
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

8
debian/tor.default vendored Normal file
View File

@ -0,0 +1,8 @@
# Defaults for tor initscript
# sourced by /etc/init.d/tor
# installed at /etc/default/tor by the maintainer scripts
#
# This is a POSIX shell fragment
#
RUN_DAEMON="yes"

4
debian/tor.dirs vendored Normal file
View File

@ -0,0 +1,4 @@
etc/tor
var/lib/tor
var/log/tor
var/run/tor

1
debian/tor.docs vendored Normal file
View File

@ -0,0 +1 @@
README

55
debian/tor.init vendored Normal file
View File

@ -0,0 +1,55 @@
#! /bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/tor
NAME=tor
DESC="tor daemon"
TORLOG=/var/log/tor/log
TORPID=/var/run/tor/tor.pid
ARGS="--pidfile $TORPID --logfile $TORLOG --runasdaemon 1"
test -x $DAEMON || exit 0
# Include tor defaults if available
if [ -f /etc/default/tor ] ; then
. /etc/default/tor
fi
set -e
case "$1" in
start)
if [ "$RUN_DAEMON" != "yes" ]; then
echo "Not starting $DESC (Disabled in /etc/default/tor)."
else
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --oknodo \
--chuid debian-tor:debian-tor \
--pidfile $TORPID \
--exec $DAEMON -- $ARGS
echo "$NAME."
fi
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile $TORPID \
--exec $DAEMON
echo "$NAME."
;;
reload|force-reload)
echo "Reloading $DESC configuration."
start-stop-daemon --stop --signal 1 --oknodo --quiet --pidfile $TORPID \
--exec $DAEMON
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart|reload|force-reload}" >&2
exit 1
;;
esac
exit 0

11
debian/tor.logrotate vendored Normal file
View File

@ -0,0 +1,11 @@
/var/log/tor/log {
daily
rotate 5
compress
delaycompress
missingok
notifempty
postrotate
/etc/init.d/tor reload > /dev/null
endscript
}

54
debian/tor.postinst vendored Normal file
View File

@ -0,0 +1,54 @@
#!/bin/sh -e
# checking debian-tor account
uid=`getent passwd debian-tor | cut -d ":" -f 3`
home=`getent passwd debian-tor | cut -d ":" -f 6`
# if there is the uid the account is there and we can do
# the sanit(ar)y checks otherwise we can safely create it.
if [ "$uid" ]; then
# guess??? the checks!!!
if [ $uid -ge 100 ] && [ $uid -le 999 ]; then
echo "debian-tor uid check: ok"
else
echo "ERROR: debian-tor account has a non-system uid!"
echo "Please check /usr/share/doc/tor/README.Debian on how to"
echo "correct this problem"
exit 1
fi
if [ "$home" = "/var/lib/tor" ]; then
echo "debian-tor homedir check: ok"
else
echo "ERROR: debian-tor account has an invalid home directory!"
echo "Please check /usr/share/doc/tor/README.Debian on how to"
echo "correct this problem"
exit 1
fi
else
# what this might mean?? oh creating a system l^Huser!
adduser --quiet \
--system \
--disabled-password \
--home /var/lib/tor \
--no-create-home \
--shell /bin/bash \
--group \
debian-tor
fi
# ch{owning,moding} things around
# We will do nothing across upgrades.
if [ "$2" = "" ]; then
for i in lib log run; do
chown -R debian-tor:debian-tor /var/$i/tor
chmod -R 700 /var/$i/tor
find /var/$i/tor -type f -exec chmod 600 '{}' ';'
done
fi
#DEBHELPER#
exit 0

11
debian/tor.postrm vendored Normal file
View File

@ -0,0 +1,11 @@
#!/bin/sh -e
if [ "$1" = "purge" ]; then
# logs have to be removed according to policy.
rm -rf /var/log/tor/
rm -rf /var/lib/tor/
fi
#DEBHELPER#
exit 0