Group :: System/Servers
RPM: tor
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
# hey Emacs, its -*- mode: rpm-spec; coding: cyrillic-cp1251; -*-
## Things users may want to change
#
# User (and group) name under which the Tor daemon runs
%define toruser _tor
# Root directory for chrooted environment, must not be
# same as real system root.
%define _tor_root %_localstatedir/%name
Name: tor
Version: 0.1.2.17
Release: alt1
Summary: Anonymizing overlay network for TCP (The onion router)
Group: System/Servers
License: BSD-like
Url: http://tor.eff.org/
Packager: Sviatoslav Sviridov <svd at altlinux.ru>
Source0: http://tor.eff.org/dist/%name-%version.tar
Source1: %name.init
# Automatically added by buildreq on Wed Jul 13 2005
BuildRequires: ghostscript-classic ghostscript-common ghostscript-module-X libevent-devel libgimp-print libssl-devel tetex-core tetex-latex transfig urw-fonts zlib-devel
%description
Tor is a connection-based low-latency anonymous communication system.
This package provides the "tor" program, which serves as both a client and
a relay node.
Applications connect to the local Tor proxy using the SOCKS
protocol. The local proxy chooses a path through a set of relays, in
which each relay knows its predecessor and successor, but no
others. Traffic flowing down the circuit is unwrapped by a symmetric
key at each relay, which reveals the downstream relay.
Warnings: Tor does no 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. This is alpha code,
and is even more likely than released code to have anonymity-spoiling
bugs. The present network is very small -- this further reduces the
strength of the anonymity provided. Tor is not presently suitable
for high-stakes anonymity.
%prep
%setup -q
# Set default configuration values
%__subst 's:^#Log notice file.*:Log notice file %_var/log/%name/%name.log:' src/config/torrc.sample.in
%__subst 's:^#DataDirectory.*:DataDirectory %_var/cache/%name:' src/config/torrc.sample.in
%build
%configure
%make_build
%make -C doc/design-paper tor-design.pdf
# Perform unit test
%make check
%install
%make_install install DESTDIR=%buildroot
%__install -pD -m755 %SOURCE1 %buildroot/%_initdir/%name
%__mv %buildroot/%_sysconfdir/%name/torrc.sample %buildroot/%_sysconfdir/%name/torrc
%__mkdir_p %buildroot%_tor_root
%__mkdir_p %buildroot%_var/{cache/%name,log/%name,run/%name}
%__mkdir_p %buildroot%_sysconfdir/logrotate.d
%__cat >%buildroot%_sysconfdir/logrotate.d/%name <<__EOF__
%_var/log/%name/*log {
weekly
rotate 5
compress
missingok
notifempty
sharedscripts
postrotate
%_initdir/%name condreload >/dev/null
endscript
}
__EOF__
# Chroot config
#%__mkdir_p %buildroot%_tor_root{/lib,%_var/{nis,yp/binding,log},%_sysconfdir/%name}
%pre
/usr/sbin/groupadd -r -f %toruser
/usr/sbin/useradd -r -g %toruser -d %_tor_root -s /dev/null -c 'Tor user' %toruser >/dev/null 2>&1 ||:
if [ $1 -gt 1 ]; then
/usr/sbin/usermod -d %_tor_root %toruser
fi
%post
#%_sysconfdir/chroot.d/%name.all force
%post_service %name
%preun
%preun_service %name
#if [ $1 = 0 ]; then
# %__rm -f %_tor_root/lib/* %_tor_root/var/yp/binding/*
#fi
%files
%dir %_sysconfdir/%name
%config(noreplace) %_sysconfdir/%name/torrc
%config %_sysconfdir/logrotate.d/%name
%_bindir/tor
%_bindir/tor-resolve
%_man1dir/*.1.*
%_initdir/%name
%doc README AUTHORS LICENSE ChangeLog INSTALL doc/{HACKING,TODO} doc/spec/{address-spec.txt,control-spec.txt,dir-spec.txt,path-spec.txt,rend-spec.txt,socks-extensions.txt,tor-spec.txt,version-spec.txt} doc/design-paper/tor-design.pdf contrib/torify contrib/tor-tsocks.conf
%defattr(640,root,%toruser,2710)
%_tor_root
%defattr(640,root,%toruser,2770)
%_var/log/%name
%defattr(640,root,%toruser,2730)
%_var/run/%name
%defattr(640,%toruser,%toruser,2700)
%_var/cache/%name
%changelog
…
Full changelog you can see here
## Things users may want to change
#
# User (and group) name under which the Tor daemon runs
%define toruser _tor
# Root directory for chrooted environment, must not be
# same as real system root.
%define _tor_root %_localstatedir/%name
Name: tor
Version: 0.1.2.17
Release: alt1
Summary: Anonymizing overlay network for TCP (The onion router)
Group: System/Servers
License: BSD-like
Url: http://tor.eff.org/
Packager: Sviatoslav Sviridov <svd at altlinux.ru>
Source0: http://tor.eff.org/dist/%name-%version.tar
Source1: %name.init
# Automatically added by buildreq on Wed Jul 13 2005
BuildRequires: ghostscript-classic ghostscript-common ghostscript-module-X libevent-devel libgimp-print libssl-devel tetex-core tetex-latex transfig urw-fonts zlib-devel
%description
Tor is a connection-based low-latency anonymous communication system.
This package provides the "tor" program, which serves as both a client and
a relay node.
Applications connect to the local Tor proxy using the SOCKS
protocol. The local proxy chooses a path through a set of relays, in
which each relay knows its predecessor and successor, but no
others. Traffic flowing down the circuit is unwrapped by a symmetric
key at each relay, which reveals the downstream relay.
Warnings: Tor does no 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. This is alpha code,
and is even more likely than released code to have anonymity-spoiling
bugs. The present network is very small -- this further reduces the
strength of the anonymity provided. Tor is not presently suitable
for high-stakes anonymity.
%prep
%setup -q
# Set default configuration values
%__subst 's:^#Log notice file.*:Log notice file %_var/log/%name/%name.log:' src/config/torrc.sample.in
%__subst 's:^#DataDirectory.*:DataDirectory %_var/cache/%name:' src/config/torrc.sample.in
%build
%configure
%make_build
%make -C doc/design-paper tor-design.pdf
# Perform unit test
%make check
%install
%make_install install DESTDIR=%buildroot
%__install -pD -m755 %SOURCE1 %buildroot/%_initdir/%name
%__mv %buildroot/%_sysconfdir/%name/torrc.sample %buildroot/%_sysconfdir/%name/torrc
%__mkdir_p %buildroot%_tor_root
%__mkdir_p %buildroot%_var/{cache/%name,log/%name,run/%name}
%__mkdir_p %buildroot%_sysconfdir/logrotate.d
%__cat >%buildroot%_sysconfdir/logrotate.d/%name <<__EOF__
%_var/log/%name/*log {
weekly
rotate 5
compress
missingok
notifempty
sharedscripts
postrotate
%_initdir/%name condreload >/dev/null
endscript
}
__EOF__
# Chroot config
#%__mkdir_p %buildroot%_tor_root{/lib,%_var/{nis,yp/binding,log},%_sysconfdir/%name}
%pre
/usr/sbin/groupadd -r -f %toruser
/usr/sbin/useradd -r -g %toruser -d %_tor_root -s /dev/null -c 'Tor user' %toruser >/dev/null 2>&1 ||:
if [ $1 -gt 1 ]; then
/usr/sbin/usermod -d %_tor_root %toruser
fi
%post
#%_sysconfdir/chroot.d/%name.all force
%post_service %name
%preun
%preun_service %name
#if [ $1 = 0 ]; then
# %__rm -f %_tor_root/lib/* %_tor_root/var/yp/binding/*
#fi
%files
%dir %_sysconfdir/%name
%config(noreplace) %_sysconfdir/%name/torrc
%config %_sysconfdir/logrotate.d/%name
%_bindir/tor
%_bindir/tor-resolve
%_man1dir/*.1.*
%_initdir/%name
%doc README AUTHORS LICENSE ChangeLog INSTALL doc/{HACKING,TODO} doc/spec/{address-spec.txt,control-spec.txt,dir-spec.txt,path-spec.txt,rend-spec.txt,socks-extensions.txt,tor-spec.txt,version-spec.txt} doc/design-paper/tor-design.pdf contrib/torify contrib/tor-tsocks.conf
%defattr(640,root,%toruser,2710)
%_tor_root
%defattr(640,root,%toruser,2770)
%_var/log/%name
%defattr(640,root,%toruser,2730)
%_var/run/%name
%defattr(640,%toruser,%toruser,2700)
%_var/cache/%name
%changelog
…
Full changelog you can see here